1. Java / Говнокод #3360

    +75

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    String q = "SELECT login, accessLevel FROM accounts ";
    		if (m.equals("1"))
    			q = q.concat("WHERE accessLevel<0");
    		else if (m.equals("2"))
    			q = q.concat("WHERE accessLevel>0");
    		else if (m.equals("3"))
    			q = q.concat("WHERE accessLevel=0");
    		q = q.concat(" ORDER BY login ASC");

    из l2j

    pitch, 31 Мая 2010

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

    +163

    1. 1
    <input type="submit" value="<?=lang('Send','Отправить')?>" />

    Говнокод или нет?

    Morsik, 31 Мая 2010

    Комментарии (40)
  3. Си / Говнокод #3358

    +138

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    -(void)terminateSearchThreadInBackground:(NSNumber*)threadPtr
    {
        NSAutoreleasePool* pool = [[NSAutoreleasePool alloc] init];
        SearchThread* thread = (SearchThread*)[threadPtr unsignedLongValue];
    
        delete thread;
        [pool release];
    }

    И вновь я в шоке от нашего проекта. По какой-то неведомой причине передать в качестве параметра указатель на поток - это очень не трушно. Зато значительно более трушно - создать из него NSNumber, предварительно преобразовав к unsigned long...

    Highlander, 31 Мая 2010

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

    +998

    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
    #define TRACE_VAR	ATraceClass *mTrace
    #define TRACE_VAR_INIT	mTrace = ATraceClass::getInstance()
    
    class ATraceClass {
    public:
    	void log(int severity, const char *format, ...);
    	/* ... */
    }
    
    class ATraceUser {
    public:
    	ATraceUser::ATraceUser() {
    		TRACE_VAR_INIT;
    	}
            int SomeMethod1();
    	/* ... */
    	TRACE_VAR;
    }
    
    int ATraceUser::SomeMethod1()
    {
      /* ... */
      if (errorCondition)
      {
        return mTrace->log( ERR, "Something went terribly"\
                            "wrong when doing the operation %s\n",\
                            mOperation),-1;
      }
      /* ... */
    }

    в догонку к #3355 - это уже как бы пример стиля использования логгера егоным же автором.

    пришел ко мне как-то народ, показал нечто что я тут иллюстрирую в SomeMethod1() и спросил:
    (1) а на кой эти слеши? может нам и весь остальной код нужно ими разукрасить??
    (2) а как это void можно из int функции возвращать? и как это вообще работает? вроде в С/С++ такое нельзя....

    у меня до сих пор в голове не укладывается каким .... надо быть что бы такой код писать.

    Dummy00001, 31 Мая 2010

    Комментарии (28)
  5. Perl / Говнокод #3356

    −123

    1. 1
    2. 2
    my @orda = ();
    my @whera = (); # Niggaz in da haus!

    Найдено в коде метода, формирующего SQL-запрос для доступа к БД.

    Floppy Formator, 31 Мая 2010

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

    +1003

    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
    // укорочено для краткости.
    void ATraceClass::LogFunction(const char *format, va_list ap)
    {
      /* ... declarations ... */
    
      for (p=format; (*p)&&(!isTruncated); p++)
      {
        if ( * p == '%' )
          switch( * ++p )
          {
            case 'c':
            { /* ... */ }
            break;
    
            case 'd':
            case 'i':
            { /* ... */ }
            break;
    
            case 'l':   // это %ld
            { /* ... */ }
            break;
    
            case 'L':    // это %Ld
            { /* ... */ }
            break;
      
            case 'f':   // a это %g
            { /* ... */ }
            break;
    
            case 'F':  // a это %Lg
            { /* ... */ }
            break;
    
            case 's': 
            { /* ... */ }
            break;
    
            default: // this is an ERROR case, but we will not perform coding at this point ... maybe later
              break;
          }
          else {
            /* ... */
          }
      }
    }

    наболело. одно чудило (с большой букмы Му) наговнокодило это дело под эгидой "stdio это С, мы в С++ можем круче!!!" ну с тех пор и переизобретают велосипед - с квадратными колёсами. даже %% не догадались сделать.

    уже как года два давлю вот это Г, но наши немецкие умельцы копи-пастят это в новые модуля быстрее чем я успеваю это удалять.

    самое гадкое что народ пишет код как обычно ожидая стандартные stdio шорткаты, и потом долго гадает куда блин сообщение подевалось.

    Dummy00001, 31 Мая 2010

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

    +156

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    function __get($propertyName) {
    ....
          
          if (!isset($propertyName[$this->propertyTable])) {
                var_dump($this->propertyTable);
                throw new Exception("Wrong property name \"$propertyName\"");
          }
         
    .....
        }

    Глубоко в дебрях...

    MaksSlesarenko, 31 Мая 2010

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

    +113

    1. 1
    public static bool DefaultSuppressVersionCheck = true; //default is false

    Как пишут программисты США.

    Dmitriy, 31 Мая 2010

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

    +165

    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
    function is_bot() {
    	if (defined("IS_BOT")) {
    		return 1;
    	}
    	elseif (defined("IS_NOT_BOT")) {
    		return 0;
    	}
    	elseif (!defined("IS_BOT") and !defined("IS_NOT_BOT")) {
    		if (file_exists(INCLUDE_PATH."includes/core/is_bot.php")) {
    			require_once(INCLUDE_PATH."includes/core/is_bot.php");
    			if (function_exists('is_bot_real')) {
    				return is_bot_real();
    			}
    			else {
    				define("IS_NOT_BOT", true);
    				return 0;
    			}
    		}
    		else {
    			define("IS_NOT_BOT", true);
    			return 0;
    		}
    	}
    	else {
    		define("IS_NOT_BOT", true);
    		return 0;
    	}
    }

    PHPNuke, mainfile.php

    telnet, 30 Мая 2010

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

    −140

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    #! /bin/sh
    
    htmlvar=`curl -# $1`
    serv=`echo $htmlvar| pcregrep -o -e "srv\'\:[^,]+"|pcregrep -o "http[^']+"`
    filevar=`echo $htmlvar| pcregrep -o "'file':[^,]+"|pcregrep -o "\d{1,10}[^']+"`
    urlvar=$serv'flv2/'$filevar
    echo $urlvar

    Тупой скрипт для выдерания ссылок на ролки со страницы xhamster.com

    Radjah, 30 Мая 2010

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