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

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

    −87

    1. 1
    if(_smcWindowContent._smcShowOnStartup.contains(_smcWindowContent._smcShowOnStartup._sbtShowHelpOn))_smcWindowContent._smcShowOnStartup.removeChild(_smcWindowContent._smcShowOnStartup._sbtShowHelpOn);

    (c) Tom Wrasseller Flash Lead of Arkadium Games

    dimas_art, 19 Мая 2010

    Комментарии (2)
  3. Java / Говнокод #3265

    +74

    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
    List<String> runningVmIds = new ArrayList<String>( );
        for ( VmInfo runVm : request.getVms( ) ) {
          runningVmIds.add( runVm.getInstanceId( ) );
        }
        for ( String vmId : VmInstances.getInstance( ).getKeys( ) ) {
          if ( runningVmIds.contains( vmId ) ) {
            continue;
          }
          VmInstance vm = null;
          try {
            vm = VmInstances.getInstance( ).lookup( vmId );
            long splitTime = vm.getSplitTime( );
            if ( splitTime > SHUT_DOWN_TIME ) {
              VmInstances.getInstance( ).disable( vm.getName( ) );
              vm.resetStopWatch( );
              vm.setState( VmState.TERMINATED );
              vm.setReason( INSTANCE_EXPIRED );
              SystemState.cleanUp( vm );
            }
          } catch ( NoSuchElementException e ) {}
        }
        
        List<String> knownVmIds = new ArrayList<String>( );
        knownVmIds.addAll( VmInstances.getInstance( ).getKeys( ) );
        if ( knownVmIds.removeAll( runningVmIds ) ) {//<-- active registered vms not reported in describe
          for ( String vmId : knownVmIds ) {
            VmInstance vm = null;
            try {
              vm = VmInstances.getInstance( ).lookup( vmId );
              long splitTime = vm.getSplitTime( );
              if ( splitTime > SHUT_DOWN_TIME ) {
                VmInstances.getInstance( ).disable( vm.getName( ) );
                vm.resetStopWatch( );
                vm.setState( VmState.TERMINATED );
                vm.setReason( INSTANCE_EXPIRED );
                SystemState.cleanUp( vm );
              }
            } catch ( NoSuchElementException e ) {
              /* should never happen, just pulled the key set, if it does ignore it */
            }
          }
        }

    Я, наверно, тупой и ещё мало кофе с утра выпил, но мне кажется, что один из циклов тут явно лишний...

    raorn, 19 Мая 2010

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

    +144

    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
    #include <string>
    #include <iostream>
    #include <cstddef>
    int main() {
    size_t ia;
    ia = sizeof( ia ); // правильно
    ia = sizeof ia; // правильно
    // ia = sizeof int; // ошибка
    ia = sizeof( int ); // правильно
    int *pi = new int[ 12 ];
    cout << "pi: " << sizeof( pi )
    << " *pi: " << sizeof( pi )
    << endl;
    // sizeof строки не зависит от
    // ее реальной длины
    string stl( "foobar" );
    string st2( "a mighty oak" );
    string *ps = &stl;
    cout << " st1: " << sizeof( st1 )
    << " st2: " << sizeof( st2 )
    << " ps: sizeof( ps )
    << " *ps: " << sizeof( *ps )
    << endl;
    cout << "short :\t" << sizeof(short) << endl;
    cout << "shorf" :\t" << sizeof(short*) << endl;
    cout << "short& :\t" << sizeof(short&) << endl;
    cout << "short[3] :\t" << sizeof(short[3]) << endl;
    }

    hromjo, 16 Мая 2010

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

    +144

    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
    function first_me_line($file,$lim=1024) {
    	$h=fopen($file,'r');
    	if($h) {
    		while (!feof($h)) {
    			do {
    				$line=fgets($h,1024);
    			}
    			while ((!feof($h))&&
    			(trim(strip_tags($line))=='')
    			||(strpos(strtolower($line),'<h1>')!==false)
    			||(strpos(strtolower($line),'<h2>')!==false)
    			||(strpos(strtolower($line),'<h3>')!==false)
    			||(strpos(strtolower($line),'<cite>')!==false)
    			||(strpos(strtolower($line),'<code>')!==false)
    			);
    			$line=chop(strip_tags($line));
    			if(strlen($line)>$lim) {
    				$line=substr($line,0,$lim);
    			}
    			fclose($h);
    			return $line;
    		}
    		fclose($h);
    		return '';
    	}
    	return '';
    }

    из того же сайта 8летней давности. здесь - берем первую строку "шедевра" литературы после заголовка и эпиграфа.
    Что бы было понятней:

    <h1>Хулиганство</h1>

    <p class="br">
    А я с Любой был знаком,<br>
    Предложил ей заняться языком.<br>
    А она между делом<br>
    Предложила заняться телом.<br>
    </p>
    <p class="br">
    Вот уже как две недели<br>
    Занимаемся мы пастелью.<br>
    За что, Любовь, тебя люблю,<br>
    Что пишем только ню.<br>
    </p>

    Lure Of Chaos, 12 Мая 2010

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

    +112

    1. 1
    2. 2
    3. 3
    4. 4
    public List<string> GetAllowedActionsOnHistory(UserInfo info, string objectName, string action, bool def) {
          UserManager.Instance.Register(info);
          return StaticFunctions.GetAllowedActions(new ObjectTypesWorker().GetByName("История сотрудника"));
    }

    Получение каких-то прав :-D

    User123, 07 Мая 2010

    Комментарии (2)
  7. Си / Говнокод #3095

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    //Русская рулетка. 7 газовых, один боевой.
     act_rx_session_104(&apdu);
    //      printf ("recv I\n");
    result =        (*((COLLECTORHDLR*)((collector_cfg.pFILLHDL + (unsigned char)apdu.asdu.type)->pHandler)))
    ((HEAD_ASDU_60870*) &apdu.asdu);

    Как то писал под OS Rtems 4.6 протокол 60870-5-104
    эта строчка специально придумывалась как гавно, активизируещее механизм разбора пакета и запуска других механизмов.

    ursus, 23 Апреля 2010

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

    +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
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    Добавление таблицы; sArray → массив rows[]cells[].
    GrataPressMain.TableAdd = function(o, sColor, sArray)
    {
    	//#region var
    	var iRow = 0;
    	var iMaxRow = 0;
    	var iCell = 0;
    	var iMaxCell = 0;
    	var tableAny;
    	var trAny;
    	var tdAny;
    	//#endregion var
    	tableAny = o.appendChild(document.createElement("table"));
    	tableAny.borderCollapse = "collapse";
    	tableAny.rules = "all";
    	tableAny.style.border = "solid 1px";
    	tableAny.style.width = "100%";
    	iMaxRow = sArray.length - 1;
    	for (iRow = 0; iRow <= iMaxRow; iRow++)
    	{
    		trAny = tableAny.insertRow(iRow);
    		if (iRow == 0) trAny.style.backgroundColor = sColor;
    		iMaxCell = sArray[iRow].length - 1;
    		for (iCell = 0; iCell <= iMaxCell; iCell++)
    		{
    			tdAny = trAny.insertCell(iCell);
    			tdAny.appendChild(document.createTextNode(sArray[iRow][iCell]));
    		}
    	}
    }

    слабо, спрашиваю, сукины дети так добавлять табличку в документ???? и никакой HTML разметки! всё делает чистый яваскрипт. Максим Прохоров знает как писать сайты!

    ursus, 23 Апреля 2010

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

    +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
    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
    function GrataPressMain()
    {
    	//#region pre
    	var i = 0; //+
    	var iArray = new Array();
    	var iCellSelected = 0; //номер активной ячейки в верхнем меню.+
    	var s = "";
    	var sSite = ""; //+
    	var sSiteTrue = ""; //+
    	var sStatistics = "";
    	var sTitle = ""; //заголовок окна.+
    	var sTitleCell0 = ""; //заголовок в нулевой закладке.+
    	var sTitleCell1 = ""; //заголовок в первой закладке.+
    	var sTitleCell2 = ""; //заголовок в второй закладке.+
    	var sTitleCell3 = ""; //заголовок в третьей закладке.+
    	var sTitleCell4 = ""; //заголовок в четвёртой закладке.+
    	var sTitleCell5 = ""; //заголовок в пятой закладке.+
    	var sTitleCell6 = ""; //заголовок в шестой закладке.+
    страшно? нееет. страшно дальше
    sSiteTrue = "3bz3az36z2yz33z2rz2tz36z33";
    	if (!bSite()) return;
    	sTitle = "Грата Пресс"; //заголовок окна.
    а так?
    sImgUrl5 = "gifCF61B397.gif"; //открытая папка.
    	sImgUrl6 = "gif00BB7312.gif"; //конечный файл.
    	sImgUrl7 = "gif4F60E1FC.gif"; //выделенный уровень.
    	sImgUrl8 = "gifC1ED3F33.gif"; //пустое место под значок.
    	iArray = [104, 116, 116, 112, 58, 47, 47, 111, 107, 110, 111, 46, 109, 111, 115, 46, 114, 117, 47];
    	for (i = 0; i <= 18; i++) sUrlOkno += String.fromCharCode(iArray[i]);
    	iArray = [83, 116, 97, 116, 105, 115, 116, 105, 99, 115, 46, 97, 115, 104, 120, 63, 115, 83, 105, 116, 101, 61];
    	for (i = 0; i <= 21; i++) sStatistics += String.fromCharCode(iArray[i]);
    а так?
    
    divAny=divAny.parentNode.appendChild(document.createElement("div"));
    	divAny.appendChild(document.createTextNode(sTitleRow0));
    	divAny.style.display="inline";
    	divAny=divAny.parentNode.parentNode.appendChild(document.createElement("div"));
    	divAny.style.width="400px";
    	divAny.style.position="absolute";
    	divAny.style.top="1px";
    	divAny.style.left="1px";
    	divAny.style.color="white";
    	imgAny=new Image();
    	if(bIsAttachEvent)imgAny.style.verticalAlign="middle";else imgAny.style.verticalAlign="sub";
    	imgAny.src=sUrlGranit5;
    	divAny=divAny.appendChild(document.createElement("div"));
    	divAny.appendChild(imgAny);
    	divAny.style.display="inline";
    	divAny=divAny.parentNode.appendChild(document.createElement("div"));
    	divAny.appendChild(document.createTextNode(sTitleRow0));
    	divAny.style.display="inline";
    а цсс изгавнякать слабо?
    divAny.style.top="1px";
    	divAny.style.left="1px";
    	divAny.style.color="white";
    
    слабо????? сынки!!!!
    function HomePageLang()
    	{
    		//#region var
    		var oInputSearchValue;
    		var oTextWhiteData0;//белый блок
    		var oTextWhiteData1;
    		var oTextWhiteData2;
    		var oTextWhiteData3;
    		var oTextWhiteData4;
    		var oTextX1Y1Data0;//главная
    		var oTextX1Y1Data1;
    		var oTextX1Y1Data2;
    		var oTextX1Y2Data0;//услуги
    		var oTextX1Y2Data1;
    		var oTextX1Y2Data2;
    		var oTextX1Y2Data3;
    		var oTextX2Y1Data0;//откройте для себя
    		var oTextX2Y1Data1;
    		var oTextX2Y1Data2;
    		var oTextX2Y1Data3;
    		var oTextX2Y1Data4;
    		var oTextX2Y1Data5;
    		var oTextX2Y1Data6;
    		var oTextX2Y2Data0;//почему у нас
    		var oTextX2Y2Data1;
    		var oTextX3Y1Data0;//наши проекты
    		var oTextX3Y1Data1;
    		var oTextX3Y1Data2;
    		var oTextX3Y1Data3;
    		var oTextX3Y1Data4;
    		var divHome;
    		var divAny;
    		var tableWhite;
    		var tableAny;
    		var trAny;
    		var tdAny;

    Сайт имени максима прохорова. чистый яваскрипт.

    ursus, 23 Апреля 2010

    Комментарии (2)
  10. PHP / Говнокод #3080

    +169

    1. 1
    2. 2
    3. 3
    4. 4
    function validPhone($str) {
       $digits = split("[0-9]",$str);
       return count($digits)>10;
    }

    Один из комментариев к функции http://ru2.php.net/split

    striker, 23 Апреля 2010

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

    +150.4

    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
    sei();
    			}
    		
    		if( xp_buff_ready > 0 && pc_rec_en == 0 )
    		{
    			for( i=0; xp_buff_ready!=i; i++ )
    				rs232_transmit(xp_response[i]);
    				
    			clear_buff(1);
    			xp_buff_ready = 0;
    			xp_rec_en = 0;
    			my_window = 0;
    		}
    		if( ack == 1 )
    		{
    			rs232_transmit('A');
    			rs232_transmit('C');
    			rs232_transmit('K');
    			rs232_transmit(' ');
    			rs232_transmit('E');
    			rs232_transmit('r');
    			rs232_transmit('r');
    			rs232_transmit('o');
    			rs232_transmit('r');
    			ack = 0;
    			my_window = 0;
    			xp_rec_en = 0;
    		}
    	};
    	return 0;
    }
    
    void clear_buff(unsigned char buff)
    {
    	if( buff == 0 )
    		for( i=0; i<18; i++ )
    			pc_command[i] = 0;
    	if( buff == 1 )
    		for( i=0; i<16; i++ )
    			xp_response[i] = 0;
    	return;
    }
    
    void avr_init(void)
    {
    	// 62500 9bit 1 stop no parity
    	UCSR0A=0x00;
    	UCSR0B=0x9C;
    	UCSR0C=0x86;
    	UBRR0H=0x00;
    	UBRR0L=0x0F;
    
    	// 56000 8bit 1 stop no parity
    	UCSR1A=0x00;
    	UCSR1B=0x98;
    	UCSR1C=0x06;
    	UBRR1H=0x00;
    	UBRR1L=0x11;
    	
    	DDRC = 0b00000011;
    	PORTC= 0b00000000;
    	
    	DDRD = 0b00000001;
    	PORTD= 0b00000000;
    	
    	DDRG  = 0b00011011;  //определить все ножки порта G (PG3 - DE status, PG4 - DE counter) 
        PORTG = 0b11100100;  //включить подтяжку резисторов 
    	
    	DDRD  = 0b11111000;  //PD0, PD1 - SCL-SDA, PD2 -RxD1, PD3 - TxD1 PD4 - STAT/COUN, PD5 - RE STAT, PD6 - RE Coun, PD7 - testLD
    	PORTD = 0b01101111;  //подключить внутренние резисторы на входах, a  выходы установить  в "0"
    	
    	PORTG &=~_BV(PG4);	 //disable DE RS485
    	PORTD &=~_BV(PD5);  //enable RE RS485
    	
    	return;
    }

    JovialLiX, 19 Апреля 2010

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