1. PHP / Говнокод #17316

    +157

    1. 1
    2. 2
    if ( isset( $woo_options['woo_style_disable'] ) && $woo_options['woo_style_disable'] != 'true' ) {} else {
        if ( $output != '' ) { echo $output; }

    см. {} else {
    Приятная неожиданность, учитывая, что строка не помещается на экран.

    Код взят из темы Canvas для Вордпресса.

    KEKC, 15 Декабря 2014

    Комментарии (1)
  2. Objective C / Говнокод #17315

    −402

    1. 1
    NSParameterAssert(![method isEqualToString:@"GET"] && ![method isEqualToString:@"HEAD"]);

    код из afnetworking - американцы поймут что такое GET HEAD)))))))))))))

    kyzmitch, 15 Декабря 2014

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

    +56

    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
    int GUIFont::getTextSize (std::string::iterator &begin, std::string::iterator &end ) { 
        int size = 0; 
        while(begin != end ) { 
            uint32_t id = utf8::unchecked::next (begin ); 
            CharDescriptor *cd = chars- >getChar(id); 
            size += cd- >xadvance; 
        } 
        return size;
    } 
    
    int GUIFont::getTextSize (std::string &text ) { 
        return getTextSize (text.begin (), text.end ());
    } 
    
    int GUIFont::getTextSize (std::wstring &text ) {
        std::string utf8text;
        utf8::utf16to8 (text.begin (), text.end (), back_inserter (utf8text ));
        return getTextSize (utf8text.begin (), utf8text.end ());
    }

    Вот так я зафейлил...
    И что самое главное - студия сожрала и даже ворнинга не кинула, а эклипс ни в какую.
    Без добрых людей на гейдеве не допер бы что к чему.

    Pythoner, 15 Декабря 2014

    Комментарии (44)
  4. Си / Говнокод #17313

    +140

    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
    HIMAGELIST ImageList_LoadImageV(PVOID ImageBase, PCWSTR a[], int level)
    {
    	PIMAGE_RESOURCE_DATA_ENTRY pirde;
    	PBITMAPINFOHEADER pbih;
    	DWORD cx, cy, cb, n, ofs;
    	if (
    		0 <= LdrFindResource_U(ImageBase, a, level, &pirde) && 
    		0 <= LdrAccessResource(ImageBase, pirde, (void**)&pbih, &cb) &&
    		cb > sizeof(BITMAPINFOHEADER) &&
    		pbih->biSize >= sizeof(BITMAPINFOHEADER) &&
    		(cx = pbih->biWidth) <= (cy = pbih->biHeight) &&
    		!(cy % cx) &&
    		pbih->biBitCount == 32 &&
    		(ofs = pbih->biSize) + (cx * cy << 2) == cb
    		)
    	{
    		n = cy / cx, cb = cx * cx << 2;
    
    		if (HIMAGELIST himl = ImageList_Create(cx, cy, ILC_COLOR32, n, 0))
    		{
    			BITMAPINFO bi = { {sizeof(BITMAPINFOHEADER), cx, cx, 1, 32 } };
    
    			if (HDC hdc = GetDC(0))
    			{
    				if (HBITMAP hbmp = CreateCompatibleBitmap(hdc, cx, cx))
    				{
    					do ; while (
    						SetDIBits(hdc, hbmp, 0, cx, RtlOffsetToPointer(pbih, ofs), &bi, DIB_RGB_COLORS) &&
    						0 <= ImageList_Add(himl, hbmp, 0) &&
    						(ofs += cb, --n)
    						);
    
    					DeleteObject(hbmp);
    				}
    
    				ReleaseDC(0, hdc);
    			}
    
    			if (!n) return himl;
    
    			ImageList_Destroy(himl);
    		}
    	}
    
    	return 0;
    }

    zhukas, 14 Декабря 2014

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

    +158

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if ($class_week == 1) {
         $current_week = 1;
    } else {
         $current_week = 1;
    }

    В одном из гос. проектов нашёл..

    vGhost, 14 Декабря 2014

    Комментарии (6)
  6. PHP / Говнокод #17311

    +167

    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
    53. 53
    54. 54
    55. 55
    56. 56
    57. 57
    58. 58
    59. 59
    60. 60
    61. 61
    62. 62
    63. 63
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    79. 79
    80. 80
    81. 81
    82. 82
    83. 83
    84. 84
    85. 85
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    if ($now_month == 1) {
    	array_push($months, 11);
    	array_push($months, 12);
    	array_push($months, 1);
    	array_push($years, ($now_year - 1));
    	array_push($years, ($now_year - 1));
    	array_push($years, $now_year);
    }
    if ($now_month == 2) {
    	array_push($months, 12);
    	array_push($months, 1);
    	array_push($months, 2);
    	array_push($years, ($now_year - 1));
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 3) {
    	array_push($months, 1);
    	array_push($months, 2);
    	array_push($months, 3);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 4) {
    	array_push($months, 2);
    	array_push($months, 3);
    	array_push($months, 4);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 5) {
    	array_push($months, 3);
    	array_push($months, 4);
    	array_push($months, 5);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 6) {
    	array_push($months, 4);
    	array_push($months, 5);
    	array_push($months, 6);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 7) {
    	array_push($months, 5);
    	array_push($months, 6);
    	array_push($months, 7);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 8) {
    	array_push($months, 6);
    	array_push($months, 7);
    	array_push($months, 8);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 9) {
    	array_push($months, 7);
    	array_push($months, 8);
    	array_push($months, 9);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 10) {
    	array_push($months, 8);
    	array_push($months, 9);
    	array_push($months, 10);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 11) {
    	array_push($months, 9);
    	array_push($months, 10);
    	array_push($months, 11);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }
    if ($now_month == 12) {
    	array_push($months, 10);
    	array_push($months, 11);
    	array_push($months, 12);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    	array_push($years, $now_year);
    }

    Я попросил показывать результаты за последние три месяца. Он так и сделал.

    sbbn, 14 Декабря 2014

    Комментарии (1)
  7. PHP / Говнокод #17310

    +156

    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
    //prepare ids
    $temp_char = "";
    $temp_id = "";
    $ids_array = array();
    
    for ($i = 0; $i < strlen($ids); $i ++) {
    	$temp_char = substr($ids, $i, 1);
    	
    	if ($temp_char != ",") {
    		$temp_id .= $temp_char;
    		
    		if ($i == (strlen($ids) - 1)) {
    			array_push($ids_array, $temp_id);
    			$temp_id = "";
    		}
    	} else {
    		array_push($ids_array, $temp_id);
    		$temp_id = "";
    	}
    }

    Распарсил строку с айдишниками, разделенными запятыми. Минут 15 точно потратил.

    sbbn, 14 Декабря 2014

    Комментарии (1)
  8. C# / Говнокод #17309

    +132

    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
    static void InitializeRegExGrammar()
            {
                SimpleRegExGrammar[0] = "A->B";
                SimpleRegExGrammar[1] = "A->B|A";
                SimpleRegExGrammar[2] = "B->C";
                SimpleRegExGrammar[3] = "B->C@B";
                SimpleRegExGrammar[4] = "C->D*";
                SimpleRegExGrammar[5] = "C->D";
                SimpleRegExGrammar[6] = "D->(A)";
                SimpleRegExGrammar[7] = "D->a";
                SimpleRegExGrammar[8] = "D->b";
                SimpleRegExGrammar[9] = "D->c";
                SimpleRegExGrammar[10] = "D->d";
                SimpleRegExGrammar[11] = "D->e";
                SimpleRegExGrammar[12] = "D->f";
                SimpleRegExGrammar[13] = "D->g";
                SimpleRegExGrammar[14] = "D->h";
                SimpleRegExGrammar[15] = "D->i";
                SimpleRegExGrammar[16] = "D->j";
                SimpleRegExGrammar[17] = "D->k";
                SimpleRegExGrammar[18] = "D->l";
                SimpleRegExGrammar[19] = "D->m";
                SimpleRegExGrammar[20] = "D->n";
                SimpleRegExGrammar[21] = "D->o";
                SimpleRegExGrammar[22] = "D->p";
                SimpleRegExGrammar[23] = "D->q";
                SimpleRegExGrammar[24] = "D->r";
                SimpleRegExGrammar[25] = "D->s";
                SimpleRegExGrammar[26] = "D->t";
                SimpleRegExGrammar[27] = "D->u";
                SimpleRegExGrammar[28] = "D->v";
                SimpleRegExGrammar[29] = "D->w";
                SimpleRegExGrammar[30] = "D->x";
                SimpleRegExGrammar[31] = "D->y";
                SimpleRegExGrammar[32] = "D->z";
            }

    Пока отправлял, придумал, как лучше сделать =(

    Destiner, 14 Декабря 2014

    Комментарии (11)
  9. C++ / Говнокод #17308

    +57

    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
    if (this->IsWhiteFigure())
    		{
    			if (abs(position_x - this->GetPositionX()) == 1 && position_y - this->GetPositionY() == -1)
    			{
    				this->SetPositionX(position_x);
    				this->SetPositionY(position_y);
    			}
    			else
    			{
    				throw IncorrectMoveException();
    			}
    		}
    		else
    		{
    			if (abs(position_x - this->GetPositionX() == 1) && position_y - this->GetPositionY() == 1)
    			{
    				this->SetPositionX(position_x);
    				this->SetPositionY(position_y);
    			}
    			else
    			{
    				throw IncorrectMoveException();
    			}
    		}

    Тест на внимательность. Сможете ли вы догадаться почему это не работает ?

    GreatMASTERcpp, 13 Декабря 2014

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

    +122

    1. 1
    10.80.32.240 vk.ru

    знаю, что не в тему, но все же. доблестные айтишники добавили такую строчку в host, не для того, чтобы я работал, а потому, что они взяли на работу идиота, который считает такие вещи довольно забавными.
    энивей, на работе проблема решается довольно просто, путем отключения pac скрипта в ie, и насильным использованием прокси, но дома это не работает. анонимайзерами пользоваться не хотелось бы, но может есть способ обойти?
    в инете я много велосипедов нашел о том, как его править, как изменить директорию, где лежит файл, и т.п. но, к сожалению я не имею прав администратор, поэтому все тщетно.

    Lokich, 13 Декабря 2014

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