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

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

    +55

    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
    bool nt_utils::enum_processes(std::vector<uint32_t>& pids)
    {
      pids.clear();
    
      PDWORD process_ids = NULL;
      DWORD cb = ALLOC_SIZE;
      DWORD bytes_returned = 0;
      BOOL complete = FALSE;
    
      __try {
    
        while (!complete) {
          process_ids = static_cast<PDWORD>(
            ::HeapAlloc(
              ::GetProcessHeap(),
              HEAP_GENERATE_EXCEPTIONS | HEAP_ZERO_MEMORY,
              cb
            )
          );
    
          if (::EnumProcesses(process_ids, cb, &bytes_returned)) {
            if (cb == bytes_returned) {
              ::HeapFree(::GetProcessHeap(), 0, process_ids);
              process_ids = NULL;
              cb *= 2;
            } else {
              complete = TRUE;
            }
          } else {
            ::HeapFree(::GetProcessHeap(), 0, process_ids);
            process_ids = NULL;
            complete = TRUE;
          }
        }
        
        if (process_ids) {
          DWORD size = bytes_returned / sizeof(DWORD);
          pids.reserve(size);
          for (DWORD i = 0; i < size; ++i) {
            assert(process_ids[i]);
            pids[i] = process_ids[i];
          }
          ::HeapFree(::GetProcessHeap(), 0, process_ids);
        }
    
      } __except (EXCEPTION_EXECUTE_HANDLER) {
        if (process_ids) {
          ::HeapFree(::GetProcessHeap(), 0, process_ids);
        }
        return false;
      }
    
      return !!process_ids;
    }

    Получение id всех процессов

    gc4242, 14 Октября 2014

    Комментарии (25)
  3. JavaScript / Говнокод #16782

    +152

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    function init() {
      
        if (!document.body) return;
     
        var body = document.body;
        var html = document.documentElement;
        // ...
    }
    // ...

    https://gist.github.com/galambalazs/6477177/

    Плавный скролл, я вот только не пойму, почему "if (!document.body) return;"?
    Типа <body> тэга может не существовать?!

    volter9, 01 Октября 2014

    Комментарии (25)
  4. PHP / Говнокод #16772

    +156

    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
    for($i = 1; $i < $conf->nb_images + 1; $i++)
    {
    	$ext_name = chr(ord('a')+$i-1);
    	?>
    	<label for="ad_picture<?php echo $i;?>"><?php echo ADSMANAGER_FORM_AD_PICTURE." ".$i; ?></label>
    	<input id="ad_picture<?php echo $i;?>" type="file" name="ad_picture<?php echo $i;?>" />
    	<?php
    	if ($isUpdateMode) {
    		$pic = $mosConfig_absolute_path."/images/$option/projects/".$ad_id.$ext_name."_t.jpg";
    		if ( file_exists( $pic)) {
    			echo "<img src='".$mosConfig_live_site."/images/$option/projects/".$ad_id.$ext_name."_t.jpg' align='top' border='0' alt='image$ad_id' />";
    			echo "<input type='checkbox' name='cb_image$i' value='delete' />".ADSMANAGER_AD_DELETE_IMAGE;
    		}
    	}
    	echo "<br />";
    }

    Угадайте что за CMS :)))

    mishanon, 27 Сентября 2014

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

    +57

    1. 1
    if (!this) return;

    Actine, 05 Сентября 2014

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

    +135

    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
    Public CallGridRowModel(CallView callView)
    {
      . . .
      Caller = GetCallerOrCalleeNameColumn(callView, true)
      Callee = GetCallerOrCalleeNameColumn(callView, false)
      . . .
    }
      
      
    private object GetCallerOrCalleeNameColumn(CallView callView, bool isCallerNameColumn)
    {
      if(isCallerNameColumn)
      {
        if(. . .) return . . .;
      }
      if(!isCallerNameColumn)
      {
        if(. . .) return . . .;
      }
      
      if(isCallerNameColumn)
      {
        return . . .;
      }
      else
      {
        return . . .;
      }
    }

    onixar, 15 Июля 2014

    Комментарии (25)
  7. Java / Говнокод #16189

    +87

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    public BarrierAssessment(int id, Client client, int homephone, int mobile, int email, int transport, int licence, boolean notInWorkForce, boolean unpaidWork, boolean cdeProgram, boolean notWorkingBut, int paidWork, 
    String employerOcc, String reason, int highlevel, String further, int stableAccomodation, int loneParent, int livingWith, int policeProblems, int courtPending, int preventFrom, int medical, int drugTest, int currentBusy, 
    String scurrentBusy, String reasonForNotGettingJob, int startTomorrow, String jobGoals, int currentResume, int canvasLetter, int referees, int interviewClothing, String otherBarriers, int ec, LastModified lastModified, 
    Date datestamp, Date bupdated, String disabilityBarriers, Date licenceDueToExpire, Date licenceDueBack, String currentSkills, String possibleSkills) {
     
    ...
     
    }

    Мать всех конструкторов!

    Meegoo, 18 Июня 2014

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

    −132

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    Выборка = Запрос.Выполнить().Выбрать();
    Если Выборка.Следующий() И Выборка.Количество() > 0 Тогда
    	Возврат Выборка.ПлощадьДома;
    Иначе
    	Возврат 0;
    КонецЕсли;

    проверка пустая ли выборка по одному из принципов:
    "больше лучше, чем меньше", "доверяй, но проверяй", "семь раз отмерь, один отрежь"

    Olna, 21 Мая 2014

    Комментарии (25)
  9. JavaScript / Говнокод #15896

    +153

    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
    window.onload = function()
     {
         m1 = new Matrix('matrix1', 20, 20);
         m1.create();
    
        var square = new Square(1, 2, 'right');
         square.create();
    
        setInterval(square.move, 50);
     }
    
    function Square(row, col, course)
     {
     this.body = [row, col];
    
     this.course = course;
    
     var that = this; // <-- 100500 iopta !!!
    
     this.create = function()
     {
       m1.setCell(that.body[0], that.body[1], true);
     }
    
     this.move = function()
     {
       var last_body = that.body;
       switch(that.course)
       {
        case 'right':
        that.body[1]++;
        break;
        case 'left':
        break;
        case 'down':
        break;
        case 'up':
        break;
       }
    
      m1.setCell(last_body[0], last_body[1], false);
       m1.setCell(that.body[0], that.body[1], true);
     }
     }

    здесь вам не тут, понял, да !

    bahamot, 04 Мая 2014

    Комментарии (25)
  10. Си / Говнокод #15872

    +154

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    if(sel.ToInt()==1){
      Form1->NumberOfIndexes = 1;
    }else if(sel.ToInt()==2){
      ...
      //еще 11 таких же кучек
      ...
    }else if(sel.ToInt()==13){
      Form1->NumberOfIndexes = 13;
    }else{
      Form1->NumberOfIndexes = 1;
    }

    dm-ua, 30 Апреля 2014

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

    +14

    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
    string modify( const string & str )
    {
    	if( str.size() == 0 ) return "00";
    	if( str.size() == 1 ) return "0" + str;
    	return string( str.end() - 2, str.end() );
    }
    
    string modify4( const string & str )
    {
    	if( str.size() == 0 ) return "0000";
    	if( str.size() == 1 ) return "000" + str;
    	if( str.size() == 2 ) return "00" + str;
    	if( str.size() == 3 ) return "0" + str;
    	return string( str.end() - 4, str.end() );
    }
    
    string TimeISOFormat( time_t cur )
    {
    	char buf[32];
    	struct tm * timeinfo;
    	timeinfo = localtime ( &cur );
    	strftime(buf, 32, "%y", timeinfo);
    	string year(buf);
    	strftime(buf, 32, "%m", timeinfo);
    	string month(buf);
    	strftime(buf, 32, "%d", timeinfo);
    	string day(buf);
    	strftime(buf, 32, "%H", timeinfo);
    	string hour(buf);
    	strftime(buf, 32, "%M", timeinfo);
    	string minute(buf);
    	strftime(buf, 32, "%S", timeinfo);
    	string second(buf);
    	return modify4( year ) + "-" + modify( month ) + "-" + modify( day ) + "T" + modify( hour )+ ":" + modify( minute )+ ":" + modify( second );
    }
    
    string CurrentTimeISOFormat()
    {
    	time_t cur = CurrentTime();
    	char buf[32];
    	struct tm * timeinfo;
    	timeinfo = localtime ( &cur );
    	strftime(buf, 32, "%y", timeinfo);
    	string year(buf);
    	strftime(buf, 32, "%m", timeinfo);
    	string month(buf);
    	strftime(buf, 32, "%d", timeinfo);
    	string day(buf);
    	strftime(buf, 32, "%H", timeinfo);
    	string hour(buf);
    	strftime(buf, 32, "%M", timeinfo);
    	string minute(buf);
    	strftime(buf, 32, "%S", timeinfo);
    	string second(buf);
    	return modify4( year ) + "-" + modify( month ) + "-" + modify( day ) + "T" + modify( hour )+ ":" + modify( minute )+ ":" + modify( second );
    }
    
    time_t CurrentTime()
    {
    	time_t rawtime = 0;
    	time(&rawtime);
    	return rawtime;
    }

    brainiac, 11 Апреля 2014

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