1. Лучший говнокод

    В номинации:
    За время:
  2. C++ / Говнокод #1931

    +61.9

    1. 1
    2. 2
    3. 3
    std::string strFullMapName;
    if ( strstr( _strMapFileName.c_str(), "Map/" ) != _strMapFileName.c_str() )
    	strFullMapName = "Map/";

    из одного очень дорогого проекта

    pushkoff, 03 Октября 2009

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

    +165.2

    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
    function cryptCCNumberDeCrypt( $cifer, $key )
    {
    	return base64_decode($cifer);
    /*
    	$res = "";
    	$strlen = (int)($cifer[0]);
    
    	$dWordArray = array();
    	for( $i=1; $i<=8; $i++ )
    	{
    		$dWordObject = DWord();
    		$dWordObject->SetValue(
    				$cifer[ ($i-1)*4 + 1 ],
    				$cifer[ ($i-1)*4 + 2 ],
    				$cifer[ ($i-1)*4 + 3 ],
    				$cifer[ ($i-1)*4 + 4 ] );
    		$dWordArray[] = $dWordObject;
    	}
    
    	$dWordArrayDeCifered = array();
    	for( $i=1; $i<=4; $i++ )
    	{
    		$deCiferedData = _gostDeCrypt( array( $dWordArray[($i-1)*2], $dWordArray[($i-1)*2 + 1]), $key );
    		$dWordArrayCifered[] = $deCiferedData[0];
    		$dWordArrayCifered[] = $deCiferedData[1];
    	}
    
    	foreach( $dWordArrayCifered as $dWordCifered )
    	{
    		$byte1 = 0;
    		$byte2 = 0;
    		$byte3 = 0;
    		$byte4 = 0;
    		$dWordCifered->GetValue( &$byte1, &$byte2, &$byte3, &$byte4 );
    		$res .= chr($byte1);
    		$res .= chr($byte2);
    		$res .= chr($byte3);
    		$res .= chr($byte4);
    	}
    
    	$temp = $res;
    	for( $i=1; $i<=$strlen; $i++ )
    		$res .= $temp[$i-1];
    		
    	return $res;
    */
    }
    
    // *****************************************************************************
    // Purpose	encrypts cc_expires field ( see ORDERS_TABLE in database_structure.xml )
    // Inputs   	
    // Remarks	
    // Returns	
    function cryptCCHoldernameCrypt( $cc_holdername, $key )
    {
    	return base64_encode( $cc_holdername );
    }	
    function cryptCCHoldernameDeCrypt( $cifer, $key )
    {
    	return base64_decode( $cifer );
    }
    function cryptCCExpiresCrypt( $cc_expires, $key )
    {
    	return base64_encode( $cc_expires );
    }
    function cryptCCExpiresDeCrypt( $cifer, $key )
    {
    	return base64_decode( $cifer );
    }
    function cryptPasswordCrypt( $password, $key )
    {
    	return base64_encode( $password );
    }
    function cryptPasswordDeCrypt( $cifer, $key )
    {
    	return base64_decode( $cifer );
    }
    function cryptFileParamCrypt( $getFileParam, $key )
    {
    	return base64_encode( $getFileParam );
    }	
    function cryptFileParamDeCrypt( $cifer, $key )
    {
    	return base64_decode( $cifer );
    }

    продолжает радовать Shop-Script PREMIUM от WebAsyst LLC.
    перед каждой функцией - комментарий как перед cryptCCHoldernameCrypt() (все просто не влезало)

    gorky, 01 Октября 2009

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

    +64.1

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    <?php
    echo "<br><br>";
    echo "<a href='index.php'>На главную</a> |
    <a href='reg.php'>Регистрация</a> |
    <a href='stat.php'>Статистика</a><br><hr width=80%>
    <div class=info>Создано при участии gxcreator и kuprik17. Все права у них и ниипёт!<br>
    Кто спиздит код, тому просто пиздец будет,<br>
    руки оторвем и в жопу вставим!! Ясно, бля?!</div>";
    
    ?>

    Еще много интересного кода: http://www.google.com/codesearch?hl=ru&lr=&q=%D0%B6%D0%BE%D0%B F%D1%83&sbtn=%D0%9F%D0%BE%D0%B8%D1%81%D0 %BA

    Serge, 26 Сентября 2009

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

    +173

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if(isset($_GET['catId'])){
    ...
    } else if($_GET['catId']>0){
    ...
    }

    CubeCart v3.0.15

    Ghost, 24 Сентября 2009

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

    +51.5

    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
    void CNewAnketaOrg::OnSeachOrg() 
    {
    	if(m_SeachOrg.GetCheck())
    	{
    		m_Create.SetCheck(FALSE);
    		m_SeachOur.SetCheck(FALSE);
    		m_SeachFZ.SetCheck(FALSE);
    		CFindOrganization find(this);
    		if (find.DoModal() == IDOK)
    		{
    			...
    		}
    		...
    	}
    }

    Угадайте какое сообщение привязано к методу с вызовом формы.

    Criperum, 24 Сентября 2009

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

    +155.4

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    function strtolowerex($str)
    {
    	$str = strtr($str, "АБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ", "абвгдеёжзийклмнопрстуфхцчшщъыьэюя");
    	return strtolower($str);
    }

    я может чего-то не понимаю? 0_о

    gorky, 23 Сентября 2009

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

    +55.9

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    while (true)
      {
        m_CurrentDevice += delta;
    
        if (m_CurrentDevice < 0)
          m_CurrentDevice = devices[DEV_PLATE]-1;
    
        if (m_CurrentDevice > devices[DEV_PLATE]-1)
          m_CurrentDevice = 0;
    
        break;
      }

    Это конечно написано не специально - в результат целой кучи итераций и переделок. но результата это не отменяет

    TObject, 21 Сентября 2009

    Комментарии (6)
  9. ActionScript / Говнокод #1861

    −90.9

    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
    function getActiveRoot():int
    {
    	for(var c:int=0;c<i;c++) if(r_arr[c].isActive) return c;
    	return -1;
    }
    
    
    
    
    
    public function addEntry():void
    {
    	if(getActiveRoot()<0)
    	{
    		r_arr.push(new Roots(i,in_txt.text,""));
    		r_arr[i].addEventListener(MouseEvent.MOUSE_DOWN, downHandler);
    		r_arr[i].addEventListener(MouseEvent.MOUSE_UP, upHandler);
    				
    		addChild(r_arr[i++]);
    	}
    	else
    	{
    	        r_arr[getActiveRoot()].w_arr.push(new Words(getActiveRoot(),r_arr[getActiveRoot()].wi,in_txt.text,""));
    		r_arr[getActiveRoot()].w_arr[r_arr[getActiveRoot()].wi].addEventListener(MouseEvent.MOUSE_DOWN, WdownHandler);
    		r_arr[getActiveRoot()].w_arr[r_arr[getActiveRoot()].wi].addEventListener(MouseEvent.MOUSE_UP, WupHandler);
    				
    		var ls:Shape=new Shape();
    		ls.graphics.lineStyle(1, 0xFF0000,0.2);
    		ls.graphics.moveTo(r_arr[getActiveRoot()].x,r_arr[getActiveRoot()].y);
    	        ls.graphics.lineTo(r_arr[getActiveRoot()].w_arr[r_arr[getActiveRoot()].wi].x,r_arr[getActiveRoot()].w_arr[r_arr[getActiveRoot()].wi].y);
    		addChildAt(ls,++wd);
    		addChildAt(r_arr[getActiveRoot()].w_arr[r_arr[getActiveRoot()].wi++],++wd);
    	}
    }

    Ой. А давайте проц погоняем! Чтоб не скучал. Отовсюду будем запускать getActiveRoot() чтобы узнать индекс! Ха-ха-ха..

    t8apb, 17 Сентября 2009

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

    +59.9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    void someMethod(const std::string& name,  std::autp_ptr<SomeClass> p);
    
    {
        ...
        std::auto_ptr<SomeClass> p(new SomeClass());
        someMethod(p->GetName(), p);
        ...
    }

    Самое забавное, что при определенных условиях оно может работать.

    Lexey, 17 Сентября 2009

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

    +52.3

    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
    void GAMEPLAYER::cCar::abandonCar(GAMEPLAYER::cPlayer* player){
    	for(unsigned int i=0;i<size();++i){
    		cBaseAnimManager * bam = get(i);
    		if(!bam->isCarRider())
    			continue;
    		cCarRider* rdr = (cCarRider*)bam;
    		if(rdr->gScript()==player->gScript()){
    			delete rdr;
    			storage.erase(i);
    			--i;
    		}
    	}
    }

    НЕ time-critical код из некоторой игры
    Наблюдаем:
    1) непониманием того, зачем нужно наследование
    2) плохо пахнущие имена переменных

    generalgda, 16 Сентября 2009

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