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

    +61.2

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    unsigned int nRecsSize=0;
    
    nRecsSize+=4;
    nRecsSize+=1;
    nRecsSize+=1;
    nRecsSize+=rec_.ip.length();
    nRecsSize+=6;
    	
    BYTE *pData = new BYTE[nRecsSize];

    Вот так надо высчитывать память под динамический массив

    Snake2101, 16 Апреля 2010

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

    +138.8

    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
    #include <unistd.h>
    #include <assert.h>
    #include <stdlib.h>
    #include <string.h>
    
    // grep ^\s*$ file1 file2 ... | wc -l
    
    int main(int argc, const char **argv)
    {
    	int fd[2];
    	pid_t pid;
    	
    	assert(!pipe(fd));
    	assert((pid = fork()) >= 0);
    	
    	if (!pid)
    	{
    		char **newargv;
    		
    		assert(dup2(fd[1], 1) == 1);
    		assert(!close(fd[0]));
    		assert(!close(fd[1]));
    		assert(newargv = malloc((argc + 2) * sizeof(char *)));
    		newargv[0] = "grep";
    		newargv[1] = "^\\s*$";
    		memcpy(newargv + 2, argv + 1, (argc + 1) * sizeof(char *));
    		assert(execvp("grep", newargv) * 0);
    	}
    	
    	assert((pid = fork()) >= 0);
    	
    	if (!pid)
    	{
    		assert(dup2(fd[0], 0) == 0);
    		assert(!close(fd[0]));
    		assert(!close(fd[1]));
    		assert(execlp("wc", "wc", "-l", NULL) * 0);
    	}
    	
    	assert(!close(fd[0]));
    	assert(!close(fd[1]));
    	
    	while (wait(NULL) != -1);
    	return 0;
    }

    Butjok, 15 Апреля 2010

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

    +159.8

    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
    function AbstractControl_getProperty (propertyName) {
    	var targetElement = this.getTargetPath(propertyName);
    	var result = null;
    	
    	if (this.isTargetAttribute(propertyName)) {
    		eval("result = targetElement." + this.getAttributeName(propertyName));
    	} else {
    		var getter = this.getGetterName(propertyName);
    		var expression = "result = targetElement." + getter + "();";
    		eval(expression);
    	}
    	return result;
    }

    Вот так наши "суровые челябинские" программисты, не имеющие представления об интроспективности javascript-а, повсюду злоупотребляют eval-ом, усложняя отладку и понимание кода.
    По хорошему, вместо первого eval-а должно бы быть:
    result = targetElement[this.getAttributeName(propertyName)];
    а вместо второго:
    result = targetElement[this.getGetterName(propertyName)]();

    Andronix, 15 Апреля 2010

    Комментарии (15)
  4. PHP / Говнокод #3015

    +172.8

    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
    if ($_POST['action']!=""){
        $action=$_POST['action'];
      } elseif ($_GET['action']!=""){
        $action=$_GET['action']; 
      }
      if ($_POST['pid']!=""){
        $pid=$_POST['pid'];
      } elseif ($_GET['pid']!=""){
        $pid=$_GET['pid']; 
      }
      if ($_POST['page']!=""){
        $page=$_POST['page'];
      } elseif ($_GET['page']!=""){
        $page=$_GET['page']; 
      }
      if ($_POST['cid']!=""){
        $cid=$_POST['cid'];
      } elseif ($_GET['cid']!=""){
        $cid=$_GET['cid']; 
      }
      if ($_POST['num']!=""){
        $num=$_POST['num'];
      } elseif ($_GET['num']!=""){
        $num=$_GET['num']; 
      }

    darkpreacher, 15 Апреля 2010

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

    +152.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
    function ShowMsg($text)
    {
        if(session_is_registered('xynta')) $un = base64_decode(strrev($_SESSION['xynta']));
        else $un = "%USERNAME%";
        $text = str_replace("%%USERNAME%%",$un,$text);
        $text = preg_replace("/\[img\](.+?)\[\/img\]/is","<img src=\"\\1\" />",$text);
        $text = preg_replace("/\[bkb\](.+?)\[\/bkb\]/is","<span class=bkb>\\1</span>",$text);
        $text = preg_replace("/\[move\](.+?)\[\/move\]/is","<marquee>\\1</marquee>",$text);
        $text = preg_replace("/\[quote\](.+?)\[\/quote\]/is","<blockquote>\\1</blockquote>",$text);
        $text = preg_replace("/\[center\](.+?)\[\/center\]/is","<center>\\1</center>",$text);
        $text = preg_replace("/\[b\](.+?)\[\/b\]/is","<b>\\1</b>",$text);
        $text = preg_replace("/\[i\](.+?)\[\/i\]/is","<i>\\1</i>",$text);
        $text = preg_replace("/\[u\](.+?)\[\/u\]/is","<u>\\1</u>",$text);
        $text = preg_replace("/\[s\](.+?)\[\/s\]/is","<s>\\1</s>",$text);
        $text = preg_replace("/\[code\](.+?)\[\/code\]/is","<code>\\1</code>",$text);
        $text = preg_replace("/\[effekt\](.+?)\[\/effekt\]/is","<div style='padding: 20px;display:block;'><span id=effekt name=effekt>\\1</span></div>",$text);
        $text = preg_replace("/\[blink\](.+?)\[\/blink\]/is","<span id=blink name=blink>\\1</span>",$text);
        //    $text = preg_replace("/\[flash\](.+?)\[\/flash\]/is","<embed type='application/x-shockwave-flash' width=640 height=480 src=\\1 />",$text);
        $text = preg_replace_callback("/\[mp3\](.+?)\[\/mp3\]/is","mp3_safe_url",$text);
        $text = preg_replace("/\[bg=(.+?)\](.+?)\[\/bg\]/is","<span style='background:\\1'>\\2</span>", $text);
        $text = preg_replace("#\[url\](.+?)\[/url\]#is", "<a href=http://www.dereferer.org/?\\1 target=_blank>\\1</a>", $text);
        if(!strstr($text,"<br")) $text=nl2br($text);
        return $text;
    }

    diio, 15 Апреля 2010

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

    +149.8

    1. 1
    if( preg_match("#list(/$|$)#is", $requestUri) )

    Человек никогда не слышал про квантификаторы в регулярных выражениях.

    anei, 15 Апреля 2010

    Комментарии (7)
  7. ActionScript / Говнокод #3012

    −189.8

    1. 1
    public static var FontSize14 : uint = 14;

    Вот так люди во Flex определяют размер шрифта :) CSS нам не по чем....

    dimas_art, 15 Апреля 2010

    Комментарии (16)
  8. bash / Говнокод #3011

    −135.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
    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
    echo ""
    echo -e '\033[1m'"      MONITOR FOR SYSTEM SWITCH  $current"'\033[0m'
    echo "      *************************************************"
    #1
    {
    read line1
    } < $DIR_FLAG/$file1
    {
    read lines1
    } < $DIR_FLAG/$files1
    if [ "$line1" = "STOP" ]; then echo -e '\E[31m'"      TASK  1: --> $lines1" ; tput sgr0
    else echo -e '\E[32m'"      TASK  1: >< $lines1" ; tput sgr0
    fi
    #2
    {
    read line2
    } < $DIR_FLAG/$file2
    {
    read lines2
    } < $DIR_FLAG/$files2
    if [ "$line2" = "STOP" ]; then echo -e '\E[31m'"      TASK  2: --> $lines2" ; tput sgr0
    else echo -e '\E[32m'"      TASK  2: >< $lines2" ; tput sgr0
    fi
    #3
    {
    read line3
    } < $DIR_FLAG/$file3
    {
    read lines3
    } < $DIR_FLAG/$files3
    if [ "$line3" = "STOP" ]; then echo -e '\E[31m'"      TASK  3: --> $lines3" ; tput sgr0
    else echo -e '\E[32m'"      TASK  3: >< $lines3" ; tput sgr0
    fi
    #4
    {
    read line4
    } < $DIR_FLAG/$file4
    {
    read lines4
    } < $DIR_FLAG/$files4
    if [ "$line4" = "STOP" ]; then echo -e '\E[31m'"      TASK  4: --> $lines4" ; tput sgr0
    else echo -e '\E[32m'"      TASK  4: >< $lines4" ; tput sgr0
    fi
    #5
    {
    read line5
    } < $DIR_FLAG/$file5
    {
    read lines5
    } < $DIR_FLAG/$files5
    if [ "$line5" = "STOP" ]; then echo -e '\E[31m'"      TASK  5: --> $lines5" ; tput sgr0
    else echo -e '\E[32m'"      TASK  5: >< $lines5" ; tput sgr0
    fi
    #6
    {
    read line6
    } < $DIR_FLAG/$file6
    {
    read lines6
    } < $DIR_FLAG/$files6
    if [ "$line6" = "STOP" ]; then echo -e '\E[31m'"      TASK  6: --> $lines6" ; tput sgr0
    else echo -e '\E[32m'"      TASK  6: >< $lines6" ; tput sgr0
    fi
    #7
    {
    read line7
    } < $DIR_FLAG/$file7
    {
    read lines7
    } < $DIR_FLAG/$files7
    if [ "$line7" = "STOP" ]; then echo -e '\E[31m'"      TASK  7: --> $lines7" ; tput sgr0
    else echo -e '\E[32m'"      TASK  7: >< $lines7" ; tput sgr0
    fi
    #8
    {
    read line8
    } < $DIR_FLAG/$file8
    {
    read lines8
    } < $DIR_FLAG/$files8
    if [ "$line8" = "STOP" ]; then echo -e '\E[31m'"      TASK  8: --> $lines8" ; tput sgr0
    else echo -e '\E[32m'"      TASK  8: >< $lines8" ; tput sgr0
    fi
    #9
    {
    read line9
    } < $DIR_FLAG/$file9
    {
    read lines9
    } < $DIR_FLAG/$files9
    if [ "$line9" = "STOP" ]; then echo -e '\E[31m'"      TASK  9: --> $lines9" ; tput sgr0
    else echo -e '\E[32m'"      TASK  9: >< $lines9" ; tput sgr0
    fi
    
    и т.д.

    вот такой кодец остался нам в наследство....

    NTMan, 15 Апреля 2010

    Комментарии (12)
  9. PHP / Говнокод #3010

    +166.8

    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
    <?
    $mese[0]="-";
    $mese[1]="01";
    $mese[2]="02";
    $mese[3]="03";
    $mese[4]="04";
    $mese[5]="05";
    $mese[6]="06";
    $mese[7]="07";
    $mese[8]="08";
    $mese[9]="09";
    $mese[10]="10";
    $mese[11]="11";
    $mese[12]="12";
    
    $gisett=(int)date("w");
    $mesnum=(int)date("m");
    
    echo date("d")."/".$mese[$mesnum]."/".date("Y") ;?>

    Нашёл на форуме. Код 2004 года, но это не умаляет его достоинств.

    Int, 15 Апреля 2010

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

    +154.8

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    //Таблица для пароля администратора
    mysql_query("CREATE TABLE $admintable (
    ID SMALLINT UNSIGNED NOT NULL auto_increment,
    pass VARCHAR(30) NOT NULL,
    PRIMARY KEY(ID)
    )");
    
    mysql_query("INSERT INTO $admintable (pass) VALUES ('')");

    оригинальный способ хранения пароля администратора в системе nevius

    breathe, 15 Апреля 2010

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