1. C++ / Говнокод #4473

    +163

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    LPBYTE OUTBUFF = NULL;
    	DWORD BUFFSIZE = 0;
    ...
    		int pgp_res = m_pgp.EncodeBuff2Buff(
    			( LPCVOID ) ( LPCTSTR ) post_data.c_str(),
    			( DWORD ) post_data.length(),
    			OUTBUFF,
    			BUFFSIZE,
    			( LPCTSTR ) query_mts_cfg().query_crypto_public_key().c_str() ); 
    ...
    			std::string s;
    			// мы будем рассматривать буфер как строку, а PGPEncode
    			// естественно не ограничивает буфер нулевым
    			// символом, поэтому строку из буфера надо
    			// ограничивать насильно
    			s = std::string( ( char* ) OUTBUFF );
    			s = s.substr( 0, BUFFSIZE );

    1) Проблема проявилась после 5 лет боевой эксплуатации.
    2) Все загодногожено было именно так. Т.е. автор понимал \0, сделал что-то, но все равно с ошибкой.

    bsivko, 28 Октября 2010

    Комментарии (11)
  2. Куча / Говнокод #4472

    +125

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    <form ...>
    ...
    <input type="text"  id="fname" name="fname"  method="post" maxlength=4></input>
    ...
    </form>

    fddpro, 28 Октября 2010

    Комментарии (59)
  3. JavaScript / Говнокод #4471

    +122

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    Код из нового  курса  Е.Попова по JS и JQuery
    
    var name = "Иваh";
    for (var i = 0; i < name.length; i++) {
        if (name.charCodeAr(i) < 1040 || name.charCodeAt(i) > 1103 {
            document.write("Найден символ: " + name.charAt(i));
        }
    }

    Vasiliy, 28 Октября 2010

    Комментарии (18)
  4. Java / Говнокод #4470

    +77

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    ;
                    Scanner reader = new Scanner(System.in);
                    int razm = 0;
                    boolean flag = false;
    
                    int[] rez = new int[100];
                    for (int i = 0; i < 100; i++)
                             rez[i] = i;
    
                    do {
                            System.out.println("введите размерность матрицы");
                            razm = reader.nextInt();
    
                            for (int i = 0; i < 100; i++) {
                                    if (rez[i] == razm)
                                            flag = true;
                            }
    
                            System.out.println("размерность не является целочисленным типом,повторите ввод");
    
                    } while (flag == false);
    
                    double[][] matrix = new double[razm][razm];
    ;

    Студенческое изделие, блинННН.
    Я даже не знаю, как это прокомментировать....
    я не могу себе представить, КАК надо мыслить, чтоб такое учудить.
    Ну а , то, что сообщение про неправильный ввод выводится
    безотносительно к правильности введённого - это уже так, мелочи жизни.

    minixoid, 28 Октября 2010

    Комментарии (17)
  5. PHP / Говнокод #4469

    +166

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    // Обторное, свежее, сочнейшие гавнище. Давно такого не встречал.
    
    
    curl_setopt($ch, 42, 1);
    curl_setopt($ch, 47, 1);
    curl_setopt($ch, 43, 1);
    curl_setopt($ch, 41, 0);
    curl_setopt($ch, 52, 0);
    curl_setopt($ch, 81, 0);
    curl_setopt($ch, 64, 0);
    
    if($this->binary) {
           curl_setopt($ch, 19914, 1);
    }

    Вот так нужно задавать настройки cURL. И никакой обфуксации не надо. Суть гавна поймут только истиные ценители.

    j0kz, 27 Октября 2010

    Комментарии (22)
  6. C++ / Говнокод #4468

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    48. 48
    49. 49
    50. 50
    51. 51
    52. 52
    ////.....
    			// 
    			// button2
    			// 
    			this->button2->Name = L"button2";   //Кнопка с номером 2,
    			this->button2->Text = L"3";         //текстом "3"
    			            //и вызывающая обработчик кнопки 1.
    			this->button2->Click += gcnew System::EventHandler(this, &Form1::button1_Click); 
    			// 
    			// button3
    			// 
    			this->button3->Name = L"button3"; //Кнопка с номером 3,
    			this->button3->Text = L"5";       //текстом "5"
    			            //тоже вызывающая обработчик кнопки 1
    			this->button3->Click += gcnew System::EventHandler(this, &Form1::button1_Click);
    ////.....
    #pragma endregion
    	private: System::Void button6_Click(System::Object^  sender, System::EventArgs^  e) {
    			 }
    private: System::Void button1_Click(System::Object^  sender, System::EventArgs^  e) {
    
    			 if (Form1::textBox1->Text=="0")
    Form1::textBox1->Text=((System::Windows::Forms::Button^ )sender)->Text;
    			 else
    				 Form1::textBox1->Text+=((System::Windows::Forms::Button^ )sender)->Text;
    		 }
    private: System::Void button17_Click(System::Object^  sender, System::EventArgs^  e) {
    			 Form1::textBox1->Text="0";
    			 m_Box=0;		 }
    private: System::Void button15_Click(System::Object^  sender, System::EventArgs^  e) {
    			 float x = float::Parse(Form1::textBox1->Text);
    
    			 m_Box = float::Parse(Form1::textBox1->Text);
    			
    			  Form1::textBox1->Text="";
    			 oper =((System::Windows::Forms::Button^)sender)->Text;
    		 }
    private: System::Void button16_Click(System::Object^  sender, System::EventArgs^  e) {
    			 float x = float::Parse(Form1::textBox1->Text);
    			
    if (oper=="+")
    m_Box+=x;
    if(oper=="-")
    m_Box-=x;
    if(oper=="*")
    m_Box*=x;
    if (oper=="/")
    m_Box /=x;
    Form1::textBox1->Text=m_Box.ToString();
    		 }
    };
    }

    Это кусок простейшего калькулятора одной девушки. Кроме всего прочего вышеописанный код составляющий единственную логику приложения находится в "Form1.h".

    nekotwi, 27 Октября 2010

    Комментарии (31)
  7. Objective C / Говнокод #4467

    −114

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    bool userNameChanged = true;
      [userName isEqualToString:oldUserName]!=YES;
      bool passwordChanged = true;
      [password isEqualToString:oldPassword]!=YES;
      bool retVal = true;
      if(userNameChanged)
      {
        retVal &= setUserNameInPreferences(userName);
      }

    Чудеса сравнения

    apodrugin, 27 Октября 2010

    Комментарии (2)
  8. Python / Говнокод #4466

    −165

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    def getrows(c):
        return \
            sum( # суммируем по категориям
                map(
                    lambda category:
                        sum( # суммируем по itemid
                            map(
                                lambda itemidset:
                                    sum( # суммируем по itemstring
                                        map(
                                            lambda itemstring:
                                                map(
                                                    lambda info:
                                                        transaction(category, itemstring, info),
                                                    itemidset[itemstring].values()
                                                ),
                                            itemidset.keys()
                                        ),
                                    []),
                                c[category].values()
                            ),
                            []
                        ),
                    ("completedAuctions", "failedAuctions", "completedBidsBuyouts")
                ),
                []
            )

    Залез в свой старый скрипт, генерирующий отчеты, думал кое-что подправить...
    Увидел одну из функций (эту) и решил лучше забить тут что-то править хД

    Причины такого ужаса - наверно отсутствие явной типизации в питоне и средств рефакторинга (rename variable, extract method, ...) в "IDE"

    burdakovd, 27 Октября 2010

    Комментарии (17)
  9. JavaScript / Говнокод #4465

    +158

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    function rateWidth($rating){
    $rating = parseFloat($rating);
    switch ($rating){
    case 0.5: $width = "14px"; break;
    case 1.0: $width = "28px"; break;
    case 1.5: $width = "42px"; break;
    case 2.0: $width = "56px"; break;
    case 2.5: $width = "70px"; break;
    case 3.0: $width = "84px"; break;
    case 3.5: $width = "98px"; break;
    case 4.0: $width = "112px"; break;
    case 4.5: $width = "126px"; break;
    case 5.0: $width = "140px"; break;
    default:  $width =  "84px";
    }
    return $width;
    }
    
    
    function starSprite($rating){
    $rating = parseFloat($rating);
    switch ($rating){
    case 0.5: $pos = "-11px"; break;
    case 1.0: $pos = "-22px"; break;
    case 1.5: $pos = "-33px"; break;
    case 2.0: $pos = "-44px"; break;
    case 2.5: $pos = "-55px"; break;
    case 3.0: $pos = "-66px"; break;
    case 3.5: $pos = "-77px"; break;
    case 4.0: $pos = "-88px"; break;
    case 4.5: $pos = "-99px"; break;
    case 5.0: $pos = "-110px"; break;
    default:  $pos =  "-77px";
    }
    return $pos;
    }
    });

    Казалось бы — [:||||:]
    Но на него я попал с туториала для jquery.com

    Взято отсюда: http://eligeske.com/jquery/jquery-star-comment-rating/

    mrbig66, 27 Октября 2010

    Комментарии (6)
  10. Куча / Говнокод #4464

    +132

    1. 1
    2. 2
    3. 3
    4. 4
    <div class="no-display">
    	<input type="hidden" name="product" value="<?php echo $_product->getId() ?>" />
    	<input type="hidden" name="related_product" id="related-products-field" value="" />
    </div>

    дефолтная тема Megento. подобными вещами полна коробочка...

    govnoboy, 27 Октября 2010

    Комментарии (20)