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

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

    +111

    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
    function str_transfer(str: string; c: Integer): String;
    var
    i:Integer;
    begin
      i:= c;
      while PosEx(' ',str,i) > 0 do
        begin
          if PosEx(' ',str,i) > 0 then
            begin
              i:= PosEx(' ',str,i);
              Insert(#10#13,str,i+1);
              i:= i+c;
            end;
        end;
      Result:= str;
    end;

    "решил написать вот такую функцию, которая вставляет в строку переносы после определенного кол. символов, перенос строки вставляется между словами. Может кому пригодится...."

    bugmenot, 02 Июня 2011

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

    +76

    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
    private void listGSNames()
    	{
    		int idMaxLen = 0;
    		int nameMaxLen = 0;
    		for (Entry<Integer, String> e : GameServerTable.getInstance().getServerNames().entrySet())
    		{
    			if (e.getKey().toString().length() > idMaxLen)
    			{
    				idMaxLen = e.getKey().toString().length();
    			}
    			if (e.getValue().length() > nameMaxLen)
    			{
    				nameMaxLen = e.getValue().length();
    			}
    		}
    /* Some Code */
    }

    Отрезок из регистратора игрового сервера Lineage от команды L2jServer.
    e.getKey().toString().length() - Приведение к строке, потом определение строки. Выглядит зрелищно! =)

    Akira, 01 Июня 2011

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

    +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
    ArrayList<BaseEventData> tempList = new ArrayList<BaseEventData>();
    			
    			int to = baseList.size()-1;
    
    			while((to > 0) && (baseList.get(to).getTime() > timeTo))
    				to--;
    			
    			int from = to;
    			
    			while((from > 0) && (baseList.get(from).getTime() >= timeFrom)){
    				tempList.add(baseList.get(from));
    				from--;
    			}
    			
    			mEvents = tempList.toArray(new BaseEventData[]{});

    Часть метода. Метод предназначен для чтения ленты событий. Среди полученной ленты выбираются те, время возникновения которых попадает в заданный период. События изначально отсортированы по этому времени, от первого к последнему. то-есть последний элемент - последнее событие.

    kartanis, 31 Мая 2011

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

    +156

    1. 1
    $value['VALUE'] = htmlspecialchars(str_replace(array("<",">"), "\"", $value['VALUE']));

    Безопасность на высоте. То, что потом приходят совершенно нечитаемые данные -- это ничего.

    ftr, 26 Мая 2011

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

    +147

    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
    // ...
    if ((dot1 > 0) || ((dot1 == 0) && (se.GetDir() == pe.GetDir()))) {
            rcount++;
          } else if ((dot1 < 0) || ((dot1 == 0) && (se.GetDir() == -pe.GetDir()))) {
            lcount++;
          } else {
            this.dbg("grade_partition problem: dot1 = " + dot1 + ", dot2 = " + dot2);
          }
    // ...
    
    // где GetDir определена так:
    int GetDir() {
      if (this.dx != 0) {
        return (this.dx < 0) ? 1 : -1;
      }
      return (this.dy < 0) ? 2 : -2;
    }

    вот мусор встретился.
    Pattern id: NOISE_OPERATION, type: NOISE, category: NOISE

    Lure Of Chaos, 14 Мая 2011

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

    +120

    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
    private string GetConnectionString() 
        { 
          string connString = String.Empty; 
          string location = Assembly.GetExecutingAssembly().Location; 
          int pos = location.LastIndexOf('\\'); 
          location = location.Remove(pos); 
          pos = location.LastIndexOf('\\'); 
          location = location.Remove(pos); 
          pos = location.LastIndexOf('\\'); 
          location = location.Remove(pos); 
          location += @"\server\conf\config.conf"; 
          using (StreamReader sr = File.OpenText(location)) 
          { 
            string s = ""; 
            while ((s = sr.ReadLine()) != null) 
            { 
              connString += s; 
            } 
          } 
          connString += "database = ***; charset = utf8;"; 
          return connString; 
        }

    mahalex, 11 Мая 2011

    Комментарии (4)
  8. ActionScript / Говнокод #6615

    −104

    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
    protected function dragDropHandler(event:DragEvent):void
        {
            // Куча всего разного...
    
            // Scroll the caret index in view
            if (caretIndex != -1)
            {
                // Sometimes we may need to scroll several times as for virtual layouts
                // this is not guaranteed to bring in the element in view the first try
                // as some items in between may not be loaded yet and their size is only
                // estimated.
                var delta:Point;
                var loopCount:int = 0;
                // А зачем мучатся, проверять видно выделеный элемент списка или нет, 
                // с десяти раз ведь верняк заработает!
                while (loopCount++ < 10)
                {
                    validateNow();
                    delta = layout.getScrollPositionDeltaToElement(dropIndex + caretIndex);
                    if (!delta || (delta.x == 0 && delta.y == 0))
                        break;
                    layout.horizontalScrollPosition += delta.x;
                    layout.verticalScrollPosition += delta.y;
                }
            }
        }

    Flex Framework продолжает радовать. Так авторы этого творения пытаются скролить список (spark.components.List), чтобы показать выделенный элемент.

    wvxvw, 10 Мая 2011

    Комментарии (4)
  9. Ruby / Говнокод #6612

    −106

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    def parse_response(object)
        return Hashie::Mash.new(JSON.parse(object))
      rescue => e
        #should handle here different error types/levels or else throw the exceptions to the upper layer (client)
        if e.is_a?(JSON::ParserError) && e.message =~ /<html>/
          raise "Invalid response from Platform server - #{self.class.parse_json_error(response.body)}"
        else
          raise e
        end
      end

    sumskyi, 10 Мая 2011

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

    +82

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    if (false) {
                canvas.drawPicture(mPicture);
            } else {
                drawPict(canvas, 0, 0, x, y,  1,  1);
                drawPict(canvas, x, 0, x, y, -1,  1);
                drawPict(canvas, 0, y, x, y,  1, -1);
                drawPict(canvas, x, y, x, y, -1, -1);
            }

    Взял себе HTC Desire Z, нашёл официальный туториал про Canvas, а там это...

    RaZeR, 01 Мая 2011

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

    +162

    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
    $_i=1;
      $_stb = mysql_query("SELECT * FROM ".$admin_prefix."_catalog_title WHERE pub=1 ORDER BY sort, BINARY name");
      while($_rtb=mysql_fetch_assoc($_stb)){
        echo print_r($_rtb,2);
        $sql="SELECT * FROM ".$admin_prefix."_catalog_regions WHERE pub=1 AND region_id=0 AND (id IN (".implode(",",$_SESSION['terms']['toureastgroup_catalog_regions'])."))";
        $_s_reg=mysql_query($sql);
        while($_r_reg=mysql_fetch_assoc($_s_reg)){
            // определяем подрегионы региона
            $result_array=array();$all_current_regions_array=array();$all_current_regions_array_where=array();
            GetChildElements("region_id",$_r_reg['id'],$admin_prefix."_catalog_regions",$_SESSION['terms']['toureastgroup_catalog_regions']);
            $all_current_regions_array=$result_array;
            // добавляем сам регион
            
            $all_current_regions_array[]=$_r_reg['id'];
            // составляем условие региона
            foreach($all_current_regions_array as $v){									
              $all_current_regions_array_where[]="(region_id LIKE '%##".$v."##%')";									
            }
            $sql="SELECT * FROM ".$admin_prefix."_catalog_programms WHERE pub=1 AND title_id=$_rtb[id] AND (id IN (".$_SESSION['string_where_programms'].")) AND (".implode(" OR ",$all_current_regions_array_where).")";
            $_s_pr=mysql_query($sql);
            $_title_progs_id=array();
            while($_r_pr=mysql_fetch_assoc($_s_pr)){
              $_title_progs_id[]=$_r_pr['id'];
            }
            $_title_progs_where="(".implode(",",$_title_progs_id).")";
            
            $sql="SELECT * FROM ".$admin_prefix."_catalog_programs_tours WHERE price>0 AND start>=".(time()-36000)." AND pub=1 AND (programm_id IN ".$_title_progs_where.") ORDER BY start LIMIT 5";
            $_stours=mysql_query($sql);
            if(mysql_num_rows($_stours)>0){
                while($_rtours=mysql_fetch_assoc($_stours)){
                  echo '<pre>'.print_r($_rtours,2).'</pre>';
                  $_array_r=array();
                }
            }
       }
       $_i++;

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

    Sum, 25 Апреля 2011

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