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

    +80

    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
    private String nextUTF8Character() throws IOException, CharacterCodingException
      {
        int iCodePoint = 0;
        int byte1, byte2, byte3, byte4;
        byte1 = is.read();
        if (byte1 == -1)
          return null;
        // проверяем является ли первый бит нулевым
        if ((byte1 & 0x80) == 0)
        {
          // один байт
          iCodePoint = byte1 & 0x7F;
          return new String(Character.toChars(iCodePoint));
        }
        byte2 = is.read();
        if (byte2 == -1)
          return null;
        if ((byte1 & 0xE0) == 0xC0 && (byte2 & 0xC0) == 0x80)
        {
          // два байта
          iCodePoint = ((byte1 & 0x1F) << 6) | (byte2 & 0x3F);
          if (iCodePoint > 0x7F)
            return new String(Character.toChars(iCodePoint));
          else
            throw new CharacterCodingException();
        }
        byte3 = is.read();
        if (byte3 == -1)
          return null;
        if ((byte1 & 0xF0) == 0xE0 && (byte2 & 0xC0) == 0x80 && (byte3 & 0xC0) == 0x80)
        {
          // три байта
          iCodePoint = ((byte1 & 0x0F) << 12) | ((byte2 & 0x3F) << 6) | (byte3 & 0x3F);
          if (iCodePoint > 0x7FF)
            return new String(Character.toChars(iCodePoint));
          else
            throw new CharacterCodingException();
        }
        byte4 = is.read();
        if (byte4 == -1)
          return null;
        if ((byte1 & 0xF8) == 0xF0 && (byte2 & 0xC0) == 0x80 &&
                (byte3 & 0xC0) == 0x80 && (byte4 & 0xC0) == 0x80)
        {
          // четыре байта
          iCodePoint = ((byte1 & 0x07) << 18) | ((byte2 & 0x3F) << 12) |
                  ((byte3 & 0x3F) << 6) | (byte4 & 0x3F);
          if (iCodePoint > 0x0FFFF)
            return new String(Character.toChars(iCodePoint));
          else
            throw new CharacterCodingException();
        }
        throw new CharacterCodingException();
      }

    Мегаоптимизированный код для получения букафф в кодироффке UTFфф-8
    По данным профилировщика именно этот фрагмент самый тормозной в моей сетевой проге

    Max ID, 20 Мая 2010

    Комментарии (36)
  2. JavaScript / Говнокод #3279

    +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
    /* Присваивание объекту свойств.
    * o			изменяемый объект.
    * Max Pro.
    */
    function Font11(o)
    {
    	if(bNavigator==true&&iNavigator!=2)
    	{
    		o.style.fontFamily="sans-serif";
    		o.style.fontSize="11pt";
    	}
    } //end Font11(o)

    мощно, сурово, независимо

    ursus, 20 Мая 2010

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

    +77

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    int min = 10;
    int max = 4095;
    for (SomeClass cc : someList) {
      if ( cc.getMinVlan( ) != null ) min = cc.getMinVlan( ) > min ? cc.getMinVlan( ) : min;
      if ( cc.getMaxVlan( ) != null ) max = cc.getMaxVlan( ) < max ? cc.getMaxVlan( ) : max;
    }

    Таким образом суровые калифорнийские мужыки ищут большой диапазон, куда можно поместить кучку маленьких диапазончиков.

    raorn, 20 Мая 2010

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

    +75

    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
    private static NavigableSet<Integer> availableVlans = populate( );
    
    private static NavigableSet<Integer> populate( ) {
      NavigableSet<Integer> list = new ConcurrentSkipListSet<Integer>( );
      for ( int i = 1; i < 4095; i++ )
        list.add( i );
      return list;
    }
    
    public static void trim( int min, int max ) {
      NavigableSet<Integer> newVlanList = Sets.newTreeSet( );
    
      for ( int i = min; i < max; i++ )
        newVlanList.add( i );
      newVlanList.removeAll( availableVlans );
      availableVlans.removeAll( availableVlans.headSet( min ) );
      availableVlans.removeAll( availableVlans.tailSet( max ) );
      for ( int i = min; i < max; i++ ) {
        if ( !newVlanList.contains( i ) ) {
          availableVlans.add( i );
        }
      }
    }

    Очередной кусок калифорнийского кода.

    raorn, 20 Мая 2010

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    public function __toString( $defaultText = '' )
    {
      return $this->getHtmlMaterial( $defaultText );
    }

    Продолжение серии "ОО П..."

    vatson, 20 Мая 2010

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

    +161

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    public bool IsDeleted
            {
                get { return _isDeleted; }
                set { _isDeleted = true; }
            }

    удалить то удалил, а вот IsDeleted = false удачи =)

    ksis.poit, 20 Мая 2010

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

    +136

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    enum Bool
    {
        True,
        False,
        FileNotFound
    };

    Как оказывается Boolean может быть не только long, но и FileNotFound.

    Нашел зде©ь http://thedailywtf.com/Articles/What_Is_Truth_0x3f_.aspx

    HyperGeek, 19 Мая 2010

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

    +144

    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
    class Node{
    private:
    	int _data;
    	Node *  _next;
    
    public: 
    	Node(int data): _next(0), _data(data){};
    
    	int getData() const {return _data;}	
    	void setData(int value) {_data = value;}
    
    	Node * getNextNode() const {return _next;}
    	void setNextNode(Node * nextNode) {_next = nextNode;}
    };

    Нашел на страницах пастбина.

    hromjo, 19 Мая 2010

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

    +162

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    static public function checkFingerprint($fingerprint = null)
    {
        $user = ServiceFactory::getServiceUsers()->getByID((int)$_COOKIE['__MW__accountID']);
        $fingerprint = (isset($fingerprint)) ? $fingerprint : Users::getFingerprint();
        $flag = (bool)($fingerprint == $user->generateFingerprint());
        if ( $flag )
          return $user->userID;
        else
          return 0;
    }

    не только индусские разработчики бывают весёлыми - это творение взрослого афроамериканского собрата. Перестраховался везде где только мог. Особенно доставляет приведение к bool результата сравнения :)

    newmindcore, 19 Мая 2010

    Комментарии (15)
  10. Assembler / Говнокод #3271

    +208

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    XOR  EBX,EBX
    MOV ECX,DWORD PTR SS:[EBP-168]
    MOV DWORD PTR SS:[EBP-168],ECX
    CMP EBX,DWORD PTR SS:[EBP-168]
    JG    ...

    govnokod3r, 19 Мая 2010

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