1. Список говнокодов пользователя ossa

    Всего: 7

  2. C++ / Говнокод #7358

    +147

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    // @brief  Lastig hash. vraagt ​​mij om mo info.
    void Hash(std::string _pass) 
    {
        Csha256() << ( Csha256() << m3 << _pass >> m4 )  >> (Csha256() << m2 >> m3 << ( Csha256() << m0 << _pass ) >>  mdata0 ) >> mdata1;
    }

    Хитрое получение хеша и доп. данных из пароля.
    Говнокод даже не в способе -- говнокод в описании. "Спроси меня для дополнительно инфы".

    ossa, 27 Июля 2011

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

    +168

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    #define LOGGER_0(func) Globals::Log1(func)
    #define LOGGER_S(func, str) Globals::Log2(func, std::string(str))
    #define LOGGER_D(func, dig) Globals::Log2(func, dig)
    #define LOGGER_SD(func, str, dig) Globals::Log3(func, std::string(str), dig)
    #define LOGGER_DS(func, dig, str) Globals::Log3(func, dig, std::string(str))
    #define LOGGER_SS(func, str0, str1) Globals::Log3(func, std::string(str0), std::string(str1))
    #define LOGGER_SSS(func, str0, str1, str2) Globals::Log4(func, std::string(str0), std::string(str1), std::string(str2))
    ........
    #define LOGGER_S6(func, str0, str1, str2, str3, str4, str5) Globals::Log7(func, std::string(str0), std::string(str1), std::string(str2), std::string(str3), std::string(str4), std::string(str5))
    .......
    #define LOGGER_SSDDD(func, str0, str1, dig0, dig1, dig2) Globals::Log6(func, std::string(str0), std::string(str1), dig0, dig1, dig2)
    ..... // еще с десяток подобных макросов.

    Привет от нидерландских индусов...

    ossa, 19 Июля 2011

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

    +102

    1. 1
    #define SEVEN_DAYS_SECONDS  ((7 * 24 * 60 * 60) + 2)

    Нашел в одном проектике.
    SEVEN_DAYS_SECONDS используется планировщике заданий.

    ossa, 24 Июня 2011

    Комментарии (22)
  5. Python / Говнокод #6005

    −183

    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
    def validate_line(line):
        if len(line) <= 2: return False
        if line[0] == '""': return False
        if line[0] == "''": return False
        if line[0] == '+!': return False
        if line[0] == '-?': return False
        if line[0] == '- (': return False
        if line[0] == '-(': return False
        if line[0] == '-)': return False
    
        if line[0] == '-6a': return False
        if line[0] == '-6a )': return False
        if line[0] == '-a': return False
        if line[0] == '-aa': return False
    
        if line[0] == '-:': return False
        if line[0] == ':': return False
        if line[0][0] == '#': return False
        if line[0][0] == "'": return False
        if line[0][0] == '&': return False
        if line[0][0] == '(': return False
        return True

    Жил был один маленький портальчик одной немаленькой компании. Портал внутренний, пользовался секретамками, манагерами и прочим планктоном. С задачей своей справлялся, не глючил и вообще проблем не приносил. И вот задумали в него добавить пару "фишек". А писался он давно, программиста уже не найти. Полезли в код, а там ... В общем вот; ВЕСЬ код написан в так вот стиле...

    ossa, 16 Марта 2011

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

    +161

    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
    // Часть первая. Объявления. Exceptions.hpp
    
    template <typename E>
    struct ExeptionKeeper 
    {
        E * exptn;
        ExeptionKeeper(E * ex) 
        {
            exptn = ex;
        }
        ~ExeptionKeeper()
        {
            if(exptn != NULL )
            {
                delete exptn;
            }
        }
        E * operator -> () 
        { 
            return exptn; 
        }
    };
    
    #define EX_TRY(XX) try { XX }
    #define EX_CATCH(TT, NAME, XX) catch (TT *_ex) { ExeptionKeeper<TT> NAME(_ex);  XX }
    
    /// Часть вторая. Использование. ModelsHelper.cpp
    
    .... // код
            EX_TRY
            (
               ............
                 TestParams(args); // кидает new ParamsException в случае неудачи
               ............
                 TestFunctions(funclist); // Кидает new FuncsException ... 
               ............
               //// тут еще есть вызовы, кидающие исключения
               ............
            ) 
            EX_CATCH
            (   ParamsException, exp,
                GLogger(levelerror).Log("Invalid params for model ", exp->model(), " [", exp->paramlist().str(), "]");
            ) 
            EX_CATCH
            (   FuncsException, exp,
                GLogger(levelerror).Log("Invalid functions for model ", exp->model(), " [", exp->funclist().str(), "]");
            ) 
            EX_CATCH
            (   LevelsException, exp,
                GLogger(levelerror).Log("Invalid levels for model ", exp->model(), " [", exp->levelslist().str(), "]");           
            ) 
            EX_CATCH
            (    .... , exp,
                ........
            )
    .... // код

    И снова на тему исключений.
    Прислал приятель. Какой-то софт для аэропортов.
    Комменты на русском мои.

    ossa, 09 Февраля 2011

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

    +178

    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
    struct rt_asserter_t {
    	string func_;
    	rt_asserter_t( string func ): func_(func){};
    	void operator  = (bool condition) {
    		if( condition == true ) {
    			;;;
    		} else if (condition == false) {
    			throw new rt_assert_ex(func_);			
    		} else {
    			throw new unknown_ex(func_);
    		}
    	} 
    };

    реальный крупный коммерческий проект.
    Какой-то тайный замысел в этой магии.

    ossa, 05 Февраля 2011

    Комментарии (32)
  8. Java / Говнокод #5493

    +80

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    @Override
            public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                Log.w(TAG, "Upgrading database from version " + oldVersion + " + newVersion);
                db.execSQL("DROP TABLE IF EXISTS " + mTableName);
                onCreate(db);
            }

    Обновление базы данных. Из одного проекта под андроид.

    ossa, 02 Февраля 2011

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