1. C# / Говнокод #15780

    +136

    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
    // где-то там ...  
    private int Kapital = 777;
    
    // ...
    
    void Save()
    {
    ...
                int kapital;
                try { kapital = (int)Double.Parse(Kapital.ToString()); }
                catch { kapital = 0; }
    ...
    }

    Проект из солнечной Швейцарии...
    И таких перлов много :)

    CodeKiller, 18 Апреля 2014

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

    −125

    1. 1
    2. 2
    3. 3
    if [ $count > 0 ]; then
        ...
    fi

    bormand, 18 Апреля 2014

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

    +72

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    auto val = map_.at(std::distance(map_.begin(),
    	std::min_element(map_.begin(), map_.end(), [](std::vector<int> a, std::vector<int> b)
    	{
    		return b.at(std::distance(b.begin(), std::min_element(b.begin(), b.end()))) > a.at(std::distance(a.begin(), std::min_element(a.begin(), a.end())));
    	})));
    
    return val.at(std::distance(val.begin(), std::min_element(val.begin(), val.end())));

    Разыменование итератора для слабаков!

    runewalsh, 18 Апреля 2014

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

    +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
    /**
     * 
     * 
     * @param wb
     * @param sheet
     * @param row
     * @param borderDashedRight
     * @param borderDashedLeft
     * @param borderDashedRightLeft
     * @param fulBorderCalignFont10
     * @param forSummary
     */
    private void mergeCellsForRows(HSSFWorkbook wb, HSSFSheet sheet,
    		HSSFRow row, HSSFCellStyle borderDashedRight,
    		HSSFCellStyle borderDashedLeft,
    		HSSFCellStyle borderDashedRightLeft,
    		HSSFCellStyle fulBorderCalignFont10, boolean forSummary)

    полезный javadoc

    evg_ever, 17 Апреля 2014

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

    +61

    1. 1
    std::cout << std::cout << "Hello, world";

    С гейдевчика, странно, что здесь не было.

    DlangGovno, 17 Апреля 2014

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

    +71

    1. 1
    2. 2
    3. 3
    4. 4
    private int[] pageBreaks = new int[] { 25, 48, 71, 94, 117, 140, 163, 186,
    			209, 232, 255, 278, 301, 324, 347, 370, 393, 416, 439, 462, 485,
    			508, 531, 554, 577, 600, 623, 646, 669, 692, 715, 738, 761, 784,
    			807, 830, 853, 876, 899, 922, 945, 968, 991, 1014, 1037 };

    evg_ever, 17 Апреля 2014

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

    +77

    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
    #define SK_SIMPLE_SIZE SK_BIG : case SK_SMALL : case SK_MIDDLE
    
    switch (some_shit)
    {
      case SK_TINY : 
      {
        do_smth();
      }
      break;
      case SK_SIMPLE_SIZE :
      {
        do_smth2();
      }
      break;
    }

    странно что вроде бы тут не было

    TarasB, 17 Апреля 2014

    Комментарии (14)
  8. Java / Говнокод #15773

    +72

    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
    if (match) {
    	formCell(sheet, rowPlus2, 0, 0, fulBorderCalignFont10, 1, false);
    	formCell(sheet, rowPlus2, 8, 8, fulBorderCalignFont10, 2, false);
    	formCell(sheet, rowPlus2, 14, 14, fulBorderCalignFont10, 3, false);
    	formCell(sheet, rowPlus2, 20, 20, fulBorderCalignFont10, 4, false);
    	formCell(sheet, rowPlus2, 26, 26, fulBorderCalignFont10, 5, false);
    	formCell(sheet, rowPlus2, 32, 32, fulBorderCalignFont10, 6, false);
    	formCell(sheet, rowPlus2, 42, 42, fulBorderCalignFont10, 7, false);
    	formCell(sheet, rowPlus2, 48, 48, fulBorderCalignFont10, 8, false);
    	formCell(sheet, rowPlus2, 54, 54, fulBorderCalignFont10, 9, false);
    	formCell(sheet, rowPlus2, 60, 60, fulBorderCalignFont10, 10, false);
    	formCell(sheet, rowPlus2, 66, 66, fulBorderCalignFont10, 11, false);
    	formCell(sheet, rowPlus2, 72, 72, fulBorderCalignFont10, 12, false);
    } else {
    	formCell(sheet, rowPlus2, 0, 0, fulBorderCalignFont10, 1, false);
    	formCell(sheet, rowPlus2, 8, 8, fulBorderCalignFont10, 2, false);
    	formCell(sheet, rowPlus2, 14, 14, fulBorderCalignFont10, 3, false);
    	formCell(sheet, rowPlus2, 20, 20, fulBorderCalignFont10, 4, false);
    	formCell(sheet, rowPlus2, 26, 26, fulBorderCalignFont10, 5, false);
    	formCell(sheet, rowPlus2, 32, 32, fulBorderCalignFont10, 6, false);
    	formCell(sheet, rowPlus2, 38, 38, fulBorderCalignFont10, 7, false);
    	formCell(sheet, rowPlus2, 42, 42, fulBorderCalignFont10, 8, false);
    	formCell(sheet, rowPlus2, 48, 48, fulBorderCalignFont10, 9, false);
    	formCell(sheet, rowPlus2, 54, 54, fulBorderCalignFont10, 10, false);
    	formCell(sheet, rowPlus2, 60, 60, fulBorderCalignFont10, 11, false);
    	formCell(sheet, rowPlus2, 66, 66, fulBorderCalignFont10, 12, false);
    	formCell(sheet, rowPlus2, 72, 72, fulBorderCalignFont10, 13, false);
    	formCell(sheet, rowPlus2, 78, 78, fulBorderCalignFont10, 14, false);
    }

    evg_ever, 17 Апреля 2014

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

    +154

    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
    function unpackLoginAndPas($signed,$iv, $dateSend){
        global $crypt, $cryptLast,  $defaultDate, $ivsId, $mysqlBaseName, $mysqlBase;
        //получаем текущую дату. 
        if (isset($dateSend) )
          $date = $dateSend;
        else
          $date = $defaultDate;
    
          $query = "SELECT id FROM ivs WHERE val='$iv';" ;
        $query = $mysqlBase->query($query);// or die (compactResult('error','криворукий программист!'));
        //есть ли такой маркер безопасности?
        if ($query->num_rows)//раз есть, то надо послать за другим маркером. Такой уже не годиться. 
            die (compactResult('error','bad iv marker,pls generate new iv'));
        //запоминаем такой маркер безопасности, и больше под ним не пускаем.
        //получаем id автоинкремент
        $myBase = $mysqlBase->query("SHOW TABLE STATUS FROM $mysqlBaseName") or die (compactResult('error','SystemTable not get (')); ;
        $result = false;
        //поиск времени изменения БД.
        $dateSrv = (int)( $date->getTimestamp() / 1000 );
        while($row = $myBase->fetch_assoc()){
          if ($row['Name'] !== "ivs" )
    	continue;
          $ivsId = $row["Auto_increment"];
        }
    
        $userIP = getUserIpAddr();
        $mysqlBase->query("INSERT INTO ivs(val,IP) VALUES('$iv','$userIP')") or die(compactResult('error','криворукий программист!'));
    
        //составляем строку из даты, которая у нас будет ключем. 1 раз в 5 минут она становиться другой.
        $decodeKey = /*формирование строки от даты*/
        $dateLast = $date->add( DateInterval::createFromDateString(' 5 minuts ' ) );
        $decodeKeyLast = /*формирование строки от даты*/
        //var_dump($decodeKey);
        $decodeKey = md5($decodeKey);
        $decodeKeyLast = md5 ( $decodeKeyLast );
        
        mcrypt_generic_init ($crypt,$decodeKey,$iv);
        mcrypt_generic_init ($cryptLast,$decodeKeyLast,$iv);
        //декриптуем
        $encDataLoginAndPass = rtrim (mdecrypt_generic($crypt,$signed));
        $encDataLoginAndPassLast = rtrim (mdecrypt_generic($cryptLast,$signed));
        //если правильный был и ключ(время не истекло) и 
        //var_dump($encDataLoginAndPass);
        $encDataLoginAndPass = json_decode ($encDataLoginAndPass,true)  or ( ($decodeKey = $decodeKeyLast ) and json_decode ($encDataLoginAndPassLast,true) )or die(compactResult('error','Key time out.'));
        //в поле secdata в POST будет лежать массив, декодированный
        mcrypt_generic_init ($crypt,$decodeKey,$iv);
    
        $temp = array_keys($encDataLoginAndPass);
        $encData = array('login'=>$temp[0], 'password'=>end($encDataLoginAndPass));
        $encPost = mdecrypt_generic($crypt, base64_decode( $_POST['secdata'] ) );
        $encData['post'] = json_decode (rtrim($encPost)) or die(compactResult('error','post uncompressed!'));
        //деинит
        mcrypt_generic_deinit ($crypt);
        //раз все прошло успешо, возвращаем массив с логином и паролем, который проверяем дальше. Тут даже использование вместо пароля, его хеша не поможет от хака. будем надеятся на алгоритм шифровки. Хотя есть взять, и знать что тут будет одинаковая информация, то вычислить её по паре перехваченных обращений не составит труда. Надо бы переделать на хеш от логина с паролем. Хотя и это врядли поможет. Надо взять что-то изменяемое. От чего можно будет отталкиваться. Но это надо обдумывать.
        return $encData;
    };

    попытка шифрования в 1-м проекте.
    Человек первый раз писал на php. Оно и видно...

    Dart_Sergius, 17 Апреля 2014

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

    +131

    1. 1
    2. 2
    3. 3
    4. 4
    DateTime dateEst = DateTime.Now.ToEstTime();
    StringBuilder responseTime = new StringBuilder();
    responseTime.Append(dateEst.ToString("MM/dd/yyyy"));
    responseTime.Append(dateEst.ToString("  h:mm:ss tt"));

    Отображаем время ответа от сервера в удобном формате.

    vertu, 17 Апреля 2014

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