1. bash / Говнокод #12698

    −116

    1. 1
    pattern=hidden; find . | grep -e ".*\.java$" | xargs sh -ac 'for arg in $@; do cat -n $arg | grep -e "$pattern" > /dev/null && echo $arg && cat -n $arg | grep -e "$pattern"; done'

    Нужно было поискать юзаджи по коду.
    Вот такое вот наворотил.
    Каюсь...

    myzone, 06 Марта 2013

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

    +125

    1. 1
    2. 2
    $ find . -type f -name '*.asp' -exec grep -nHi 'select \*' {} \; | wc -l
    2160

    teh drama :(

    wvxvw, 06 Марта 2013

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

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public Double toDouble(String str){
    	if ((str==null)||(str.equals(""))) str = "0.0";
    	if ((str.contains(","))&&(!str.contains("."))) str = str.replace(",", ".");
    	return new Double(str);
    }

    Лишняя защита никогда не бывает лишней

    nafania217518, 06 Марта 2013

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

    +23

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    class ANameCreator
    {
    public:
                virtual void Create(const std::string& /*name*/)
                {
                    throw std::runtime_error("<ANameCreator::Create()> : abstract method stub call");
                }
    };

    odeni, 06 Марта 2013

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

    +18

    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
    //main.cpp:
    #define THREAD_COUNT 2
    #include "winparallel.h"
    
    main1()
    {
        lock(1);
        int i=0; while(i++<10)
        printf("1: %d\n", i);
        unlock(1);
    }
    
    main2()
    {
        lock(1);
        int i=0; while(i++<10)
        printf("2: %d\n", i);
        unlock(1);
    }
    
    main3(){};
    main4(){};
    main5(){};
    main6(){};
    main7(){};
    main8(){};
    
    
    
    //=====================================================================================
    //winparallels.h:
    #include <windows.h>
    #define _MAX_CORES 8
    LPVOID _void;
    #define main1() DWORD WINAPI _main1(LPVOID lpParam)
    #define main2() DWORD WINAPI _main2(LPVOID lpParam)
    #define main3() DWORD WINAPI _main3(LPVOID lpParam)
    #define main4() DWORD WINAPI _main4(LPVOID lpParam)
    #define main5() DWORD WINAPI _main5(LPVOID lpParam)
    #define main6() DWORD WINAPI _main6(LPVOID lpParam)
    #define main7() DWORD WINAPI _main7(LPVOID lpParam)
    #define main8() DWORD WINAPI _main8(LPVOID lpParam)
    DWORD WINAPI _main1(LPVOID);
    DWORD WINAPI _main2(LPVOID);
    DWORD WINAPI _main3(LPVOID);
    DWORD WINAPI _main4(LPVOID);
    DWORD WINAPI _main5(LPVOID);
    DWORD WINAPI _main6(LPVOID);
    DWORD WINAPI _main7(LPVOID);
    DWORD WINAPI _main8(LPVOID);
    HANDLE _locks[_MAX_CORES];
    int _argc; char **_argv;
    void lock(int n) { DWORD res = WaitForSingleObject(_locks[n], INFINITE); }
    void unlock(int n) { ReleaseMutex(_locks[n]); }
    int main(int argc,char **argv) {
        HANDLE threads[_MAX_CORES];
        DWORD id;
        int THREADS = THREAD_COUNT;
        if (THREADS<=0) {
            SYSTEM_INFO sysinfo;
            GetSystemInfo(&sysinfo);
            THREADS = sysinfo.dwNumberOfProcessors;
            if (THREADS>_MAX_CORES) THREADS = _MAX_CORES;
        }
        _argc = argc; _argv = argv;    
        _locks[0] = CreateMutex(NULL,FALSE,NULL);
        _locks[1] = CreateMutex(NULL,FALSE,NULL);
        _locks[2] = CreateMutex(NULL,FALSE,NULL);
        _locks[3] = CreateMutex(NULL,FALSE,NULL);
        _locks[4] = CreateMutex(NULL,FALSE,NULL);
        _locks[5] = CreateMutex(NULL,FALSE,NULL);
        _locks[6] = CreateMutex(NULL,FALSE,NULL);
        _locks[7] = CreateMutex(NULL,FALSE,NULL);    
        threads[0]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main1,NULL,0,&id);
        if (THREADS>=2) 
        threads[1]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main2,NULL,0,&id);
        if (THREADS>=3) 
        threads[2]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main3,NULL,0,&id);
        if (THREADS>=4) 
        threads[3]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main4,NULL,0,&id);
        if (THREADS>=5) 
        threads[4]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main5,NULL,0,&id);
        if (THREADS>=6) 
        threads[5]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main6,NULL,0,&id);
        if (THREADS>=7) 
        threads[6]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main7,NULL,0,&id);
        if (THREADS>=8) 
        threads[7]=CreateThread(NULL,0,(LPTHREAD_START_ROUTINE)_main8,NULL,0,&id);
        WaitForMultipleObjects(THREADS, threads, TRUE, INFINITE);
        return 0;
    }

    >После этого всё что нужно освоить про потоки - работу с локами. Локи - это скандинавский бог приостановки потока.

    LispGovno, 05 Марта 2013

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

    +7

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    class Pa || Ra || Ll || El
    {  
       int f || o || o; // четвертое ядро простаивает - надо длиннее переменные заводить
       int b || a || r;
    }
    
    int m || a || i || n(int argc, CHAR* argv[])
    { 
        Parallel parallel = new Pa() || Ra() || Ll() || El ();
    }

    LispGovno, 05 Марта 2013

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

    +153

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    $_SESSION["db_options"] = array ('host'     => trim($this->IP).":".trim($this->Port),
    										'user'     => trim($this->User),
    										'password' => trim($this->Pass),
    										'database' => trim($this->DB)
    										);

    Наследование? Не, не слышал

    nonamez, 05 Марта 2013

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

    +114

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    private List<PalletePath> killDupes(List<PalletePath> pathesNew) {
    	List<PalletePath> noDupes = new ArrayList<PalletePath>();
    	for (PalletePath tp : pathesNew) {
    		if (!noDupes.contains(tp)) {
    			noDupes.add(tp);
    		}
    	}
    	return noDupes;
    }

    Set? Не, не слышали.

    someone, 05 Марта 2013

    Комментарии (42)
  9. 1C / Говнокод #12689

    −122

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Если ВыгружатьВзаиморасчеты тогда
        Если ВыгружатьВзаиморасчеты() тогда
            УспешноВзаиморасчетыВыгружено=ВыгрузитьВзаиморасчетыНаСайт(СтруктураПараметровСайта);
        КонецЕсли;
    КонецЕсли;

    Херово, когда имен не хватает =(

    kovyl2404, 05 Марта 2013

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

    +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
    $code_date = strtotime($sms_action_date);
        $date = date(
            "Y-m-d H:i:s",
            mktime(
                date('H', $code_date),
                date('i', $code_date) + 30,
                date('s', $code_date),
                date("m", $code_date),
                date("d", $code_date),
                date("Y", $code_date)
            )
    );

    Определяем +30 минут грамотно.

    miraage, 05 Марта 2013

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