1. Лучший говнокод

    В номинации:
    За время:
  2. Objective C / Говнокод #18104

    −401

    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
    - (void) doSomething {
        <...>
        if (error.code != NSURLErrorNotConnectedToInternet && error.code != NSURLErrorCancelled && error.code != NSURLErrorTimedOut) {
            @synchronized (self.failedURLs) {
                
                {
                    // javascript-style...
                    char* xcEnv = getenv("XcodeColors");
                    BOOL useColors = (xcEnv && !strcmp(xcEnv, "YES"));
                    NSString *colorWrapper;
                    if (useColors)
                        colorWrapper = @"\033[fg0,153,0;%@\033[;";
                    else
                        colorWrapper = @"%@";
    
                    void (^colorLog)(NSString *format, ...) = ^(NSString *format, ...)
                    {
                        va_list args;
                        va_start(args, format);
                        NSLog(colorWrapper, [[NSString alloc] initWithFormat:format arguments:args]);
                        va_end(args);
                    };
                    
                    colorLog(@"SDWebImageManager download failed");
                    colorLog(@"\turl: %@", url.absoluteString);
                    colorLog(@"\terror: %@", [error description]);
                }
                
                
                [self.failedURLs addObject:url];
            }
        }
        <...>
    }

    Когда очень хочется извратиться

    krypt, 01 Мая 2015

    Комментарии (1)
  3. PHP / Говнокод #18103

    +141

    1. 1
    $time = htmlspecialchars(addslashes(time()));

    Паранойя...

    SToRm1k, 01 Мая 2015

    Комментарии (1)
  4. JavaScript / Говнокод #18101

    +142

    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
    'use strict';
    
    var menuContainers = document.getElementsByClassName('menu__container');
    
    for (var i = 0; i < menuContainers.length; i++) {
      menuContainers[i].getElementsByClassName('menu__current')[0].setAttribute('onclick', 'menuOpen(' + i + ')');
    }
    
    //Changing visibility all elements of menu
    
    function menuOpen(i) {
      menuContainers[i].getElementsByClassName('menu__item')[0].classList.toggle('menu__item--visible');
      menuContainers[i].getElementsByClassName('menu__item')[1].classList.toggle('menu__item--visible');
      menuContainers[i].getElementsByClassName('menu__item')[2].classList.toggle('menu__item--visible');
      menuContainers[i].getElementsByClassName('menu__item')[3].classList.toggle('menu__item--visible');
    }

    serhii, 30 Апреля 2015

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

    +141

    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
    @ResponseBody
    public String paymentFeedback(@RequestBody MultiValueMap<String, String> requestParameters, @RequestBody String requestBody) {
        boolean isValidRequest = myService.hasRequestValidSHASign(requestParameters);
        if (isValidRequest) {
            String voucherNumber = findParameter(requestParameters, ORDERID_PARAMETER);
            if (!StringUtils.isEmpty(voucherNumber)) {
                Order order = orderService.getOrderByVoucherNumber(voucherNumber);
                if (order != null) {
                    String status = findParameter(requestParameters, STATUS_PARAMETER);
                    if (ACCEPT_STATUS_VALUES.contains(status)) {
                        updateOrderWithPaymentStatus(order, Status.PAID, requestParameters);
                        orderService.sendEmail(order);
                        orderService.sell(order);
                    } else if (CANCELLED_STATUS_VALUE.equals(status)) {
                        updateOrderWithPaymentStatus(order, Status.CANCELLED, requestParameters);
                    } else if (DECLINE_STATUS_VALUES.contains(status)) {
                        updateOrderWithPaymentStatus(order, Status.DECLINED, requestParameters);
                    } else if (EXCEPTION_STATUS_VALUES.contains(status)) {
                        updateOrderWithPaymentStatus(order, Status.EXCEPTION, requestParameters);
                    } else {
                        logger.warn("Order ID={} got strange status: {}. Ignoring that feedback...", voucherNumber, status);
                    }
                } else {
                    throw new IllegalArgumentException("Can't find voucher with orderID from feedback: " + voucherNumber);
                }
            } else {
                throw new IllegalArgumentException("Received feedback with missing orderID: " + requestBody);
            }
        } else {
            throw new IllegalArgumentException("Received feedback with invalid SHA sign: " + requestBody);
        }
        
        return "";
    }

    pingw33n, 30 Апреля 2015

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    if(!$this->_login()){
                
                sleep(mt_rand(60, 90));
                $this->_reLogin();
                return;
    }

    Такое чудо мне передали от другой команды разработчиков

    Granes, 30 Апреля 2015

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

    +141

    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
    class ammo
    {
        public:
            bool existance;
            COORD alloc;
        void print()
            {
                pole[alloc.Y+1][alloc.X]=' ';
                pole[alloc.Y][alloc.X]='*';
            }
    };
    
    ammo bullet[10];
    
    void initpole();
    void replaceunit();
    void printpole();
    void redirect();
    void fire();
    void ammomove();
    
    int main(int argc, char* argv[])               //òåëî
    {
        initpole();
        do{
            if(kbhit())
                redirect();
            printpole();
            ammomove();
            Sleep(0);
            }
        while(chk!=27);
        return 0;
    }
    
    void redirect()                              //обработка нажатой клавиши
    {
        chk=getch();
        if(chk==32)
            {
                bullet[bulletcounter].existance=true;
                if(bulletcounter<10)
                    bulletcounter++;
                else
                    bulletcounter=0;
                fire();
            }
        else if(chk==75 || chk==77)
            replaceunit();
        else if(chk==112)
            {
            system("pause");
            system("cls");
            }
    }
    
    void fire()                                         //инициализация пули
    {
        bullet[bulletcounter].alloc.X=x;
        bullet[bulletcounter].alloc.Y=y-3;
        if(bullet[bulletcounter].existance==true)
            bullet[bulletcounter].print();
    }
    
    void ammomove()                                     //сдвиг пули
    {
        if(bullet[bulletcounter].existance==true)
            if(bullet[bulletcounter].alloc.Y>1)
                {
                    bullet[bulletcounter].alloc.Y--;
                    bullet[bulletcounter].print();
                }
            else
                {
                    bullet[bulletcounter].existance=false;
                    pole[bullet[bulletcounter].alloc.Y][bullet[bulletcounter].alloc.X]=' ';
                }
    }

    по нажатию пробела должна вылетать пулька, но чегот не хочет она вылетать, есть идеи? :3

    Morozz, 29 Апреля 2015

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

    +142

    1. 1
    2. 2
    3. 3
    ...
    if (!empty($desc_for_filters) && empty($desc_for_filters)) {
    ...

    код Шрёдингера

    breathe, 29 Апреля 2015

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

    +143

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    ob_start();
    require_once('Localization.inc.php');
    require_once('View.inc.php');
    require_once('Writer.inc.php');
    ob_end_clean();

    https://github.com/antimalware/manul/blob/master/src/scanner/classes/Auth.inc.php#L3
    Коммерчески эффективные погромисты из яндекса изобретают собачку.
    Проект по ссылке - их уникальный антивирус бабушкина MANOOL, способный вылечить даже самого себя. Каждая его строчка достойна отдельного говнокода.

    Stallman, 28 Апреля 2015

    Комментарии (1)
  10. Perl / Говнокод #18067

    −126

    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
    $utm = `$utmcalc_cmd $user $YEAR $MONTH` || "error";
    if ($oldtarif_mar == 16 || $oldtarif_mar == 17 || $oldtarif_mar == 19 || $oldtarif_mar == 27 || $oldtarif_mar == 45) {
    	if ($newtarif_mar == 16 || $newtarif_mar == 17 || $newtarif_mar == 19 || $newtarif_mar == 27 || $newtarif_mar == 45) {
    		$money2 = (($oldtarif_abonplata/30)*$daystoeom) - (($newtarif_abonplata/30)*$daystoeom);
    #		$nm1 = 0;
    	} else {
    		$money2 = (($oldtarif_abonplata/30)*$daystoeom) - (($newtarif_abonplata/30)*$daystoeom);
    #		$nm1 = $utm;
    	}
    } elsif ($oldtarif_mar != 16 || $oldtarif_mar != 17 || $oldtarif_mar != 19 || $oldtarif_mar != 27 || $oldtarif_mar != 45) {
    	if ($newtarif_mar == 16 || $newtarif_mar == 17 || $newtarif_mar == 19 || $newtarif_mar == 27 || $newtarif_mar == 45) {
    #		$money2 = $oldtarif_abonplata - ($utm*$oldtarif_koef) - (($newtarif_abonplata/30)*$daystoeom);
    		$money2 = (($oldtarif_abonplata/30)*$daystoeom) - (($newtarif_abonplata/30)*$daystoeom);
    #		$nm1 = -$cur_nm;
    	} else {
    #		$money2 = $oldtarif_abonplata - ($utm*$oldtarif_koef) - (($newtarif_abonplata/30)*$daystoeom);
    		$money2 = (($oldtarif_abonplata/30)*$daystoeom) - (($newtarif_abonplata/30)*$daystoeom);
    #		$nm1 = -(($newtarif_lymit/30)*$DAY);
    	}
    }

    Из биллинга одного довольно крупного интернет-провайдера
    Кто-то что-то хотел закомментить...

    begemot, 27 Апреля 2015

    Комментарии (1)
  11. Pascal / Говнокод #18058

    +143

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if TPlatformServices.Current.SupportsPlatformService(IFMXLocaleService, IInterface(LocaleService)) then
            S := LocaleService.GetLocaleFirstDayOfWeek
          else
            S := '6';
          FFirstDayOfWeekNum := Ord(S.Chars[0]) - Ord('0');
          {$IFDEF MACOS}
          FFirstDayOfWeekNum:= Ord(S.Chars[0]) + Ord('0');
          {$ENDIF}
          {$IFDEF ANDROID}
            FFirstDayOfWeekNum := FFirstDayOfWeekNum - MondayOffset;
          {$ENDIF}

    Это FireMonkey! FMX.Calendar.Style.pas! И это реально работает.
    Главное, что всё очевидно.

    PeaK, 24 Апреля 2015

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