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

    Всего: 246

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

    0

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Ня, привет.
    
    Знамя NGK вновь поднято по адресу https://gcode.space/.
    
    Версия исходников старая, новых фич нет. Пока работает в тестовом режиме, возможны перебои. Домен купил на год, а там — посмотрим.

    Какой A+ SSL )))

    gost, 23 Сентября 2019

    Комментарии (886)
  3. Pascal / Говнокод #25789

    0

    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
    inside:=false;
    tag:=uppercase(tagpure);
    spacep:=pos(' ',tag);
    if spacep=0 then tagname:=tag else tagname:=copy(tag,1,spacep-1);
    
    if (not inscript) and (tagname='A') then
    begin
    ParseTag(tagpure);
    //если флажок Ссылки или флажок Якоря включен
    if checkBox9.Checked or checkBox10.Checked then
    begin
    linktext:=Lg.GR(24);
    linktag:='HREF';
    link2text:=Lg.GR(25);
    link2tag:='NAME';
    needlink:=true;
    needdbr:=true;
    end;
    end;

    Вернулся в 2007 1997.
    s: h/465709

    gost, 01 Сентября 2019

    Комментарии (85)
  4. JavaScript / Говнокод #25696

    +7

    1. 1
    2. 2
    3. 3
    4. 4
    go 23239
    govno gopa barebuh suka
    
    pidor jopa

    Это — особый диалект «JavaScript», используемый в «Google»: https://www.youtube.com/watch?v=-XRLl9LEZ7c&t=16 (16-я секунда, https://i.imgur.com/O8AwR9B.png).

    Именно поэтому я за «Google».

    gost, 03 Июля 2019

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

    0

    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
    std::string makeFormContent(const std::string & album,
                                const std::wstring & filename,
                                const std::string & boundary)
    {
        static const std::string DELIM = "\r\n";
        std::ostringstream ss;
        std::ifstream file(filename, std::ios::binary);
    
    
        ss << boundary << DELIM;
        ss << "Content-Disposition: form-data; name=\"album\"" << DELIM << DELIM;
        ss << album << DELIM;
    
        ss << boundary << DELIM;
        ss << "Content-Disposition: form-data; name=\"image\"; filename=\"image\"" << DELIM << DELIM;
        ss << file.rdbuf() << DELIM;
    
        ss << boundary << DELIM << "--";
    
        return ss.str();
    }

    Заебали. Куча HTTP-либ под кресты, а банально сделать POST-запрос с multipart/form-data без кучи ебли нельзя. Приходится самому составлять, лол.

    Именно поэтому я за «requests.post(url, data=data, files=files)».

    gost, 02 Июля 2019

    Комментарии (120)
  6. Python / Говнокод #25690

    +3

    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
    class JSObject(object):
        def __init__(self, d):
            self.__dict__.update(d)
        def __getitem__(self, item):
            return self.__getattribute__(item)
        def __setitem__(self, item, value):
            return self.__setattr__(item, value)
        def __delitem__(self, item):
            return self.__delattr__(item)
    
        def __getattribute__(self, name):
            try:
                val = object.__getattribute__(self, name)
            except AttributeError:
                return undefined
            else:
                return val
    
        def __delattr__(self, name):
            try:
                object.__delattr__(self, name)
            except AttributeError:
                pass
            return None
            
        def __str__(self):
            return '[object Object]'
            
        def __repr__(self):
            return self.__dict__.__str__()
    
    
    class JSUndefined:
        __getitem__ = lambda a, b: undefined
        __setitem__ = lambda a, b, c: undefined
        __delitem__ = lambda a, b, c: undefined
        __getattribute__ = lambda a, b: undefined
        __setattr__ = lambda a, b, c: undefined
        __delattr__ = lambda a, b: undefined
        __str__ = lambda self: 'undefined'
        __repr__ = lambda self: 'undefined'
    undefined = JSUndefined()

    Перевёл «JavaScript» на «Python».

    gost, 28 Июня 2019

    Комментарии (32)
  7. Python / Говнокод #25676

    −1

    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
    def _run(self):
        L.debug('CommentsMonitor started.')
        with requests.Session() as sess:
            bormand = Bormand(sess)
            while True:
                comments = bormand.get_comments()
                if comments is not None:
                    for comment_json in comments:
                        comment = Comment(comment_json)
                        if comment.id not in self.replied_cache and comment.user_id not in self.users_blacklist:
                            task = parse_comment(comment)
                            if task is not None:
                                L.debug('Replying to: ' + str(comment))
                                self.replied_cache.add(comment.id)
                                self.tasks_queue.put(task)
                else:  # comments is None
                    L.warning('Failed to load comments')
                if self._stop_ev.wait(timeout=self.pause_time):
                    break
        L.debug('CommentsMonitor stopped.')

    Какой уровень вложенности )))

    gost, 17 Июня 2019

    Комментарии (170)
  8. Python / Говнокод #25639

    0

    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
    def parse_cmd(cmd):
        output = []
        state = 0
        current_arg = ''
        prev_c = ''
        for c in cmd:
            if c == ' ':
                if state == 0:
                    if len(current_arg) > 0:
                        output += [current_arg]
                    current_arg = ''
                elif state == 1:
                    current_arg += c
            elif c == '"' and prev_c != '\\':
                if len(current_arg) > 0 or state == 1:
                    output += [current_arg]
                current_arg = ''
                state = int(not state)
            else:
                current_arg += c
            prev_c = c
        if len(current_arg) > 0:
            output += [current_arg]
        return output

    Какой FSM )))

    gost, 24 Мая 2019

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

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    function mysql_real_escape_string_cloud($string)
    {
        return unserialize(
            file_get_contents("https://mysql-real-escape-string.xyz/php?string="
                . urlencode($string)));
    }

    Запущен сайт https://mysql-real-escape-string.xyz/, предоставляющий функцию «mysql_real_escape_string» в виде сервиса. Имеются три различных формата получения данных (/plain, /json и инновационный /php). Теперь обеспечить абсолютную безопасность базы данных функцией «mysql_real_escape_string» можно из любого языка, поддерживающего «HTTP-запросы»!

    gost, 23 Мая 2019

    Комментарии (314)
  10. PHP / Говнокод #25607

    +1

    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
    64. 64
    65. 65
    66. 66
    67. 67
    68. 68
    69. 69
    70. 70
    71. 71
    72. 72
    73. 73
    74. 74
    75. 75
    76. 76
    77. 77
    78. 78
    <?php
    /**
     * $URL: svn://svn.subversion.ru/usr/local/svn/mzz/trunk/system/forms/validators/formHostnameRule.php $
     *
     * MZZ Content Management System (c) 2005-2007
     * Website : http://www.mzz.ru
     *
     * This program is free software and released under
     * the GNU/GPL License (See /docs/GPL.txt).
     *
     * @link http://www.mzz.ru
     * @version $Id: formHostnameRule.php 3864 2009-10-21 04:50:04Z zerkms $
     */
    /**
     * formHostnameRule: правило, проверяющее имя хоста
     *
     * @package system
     * @subpackage forms
     * @version 0.1.1
     */
    class formHostnameRule extends formAbstractRule
    {
        private $validTlds = array(
        'ac', 'ad', 'ae', 'aero', 'af', 'ag', 'ai', 'al', 'am', 'an', 'ao',
        'aq', 'ar', 'arpa', 'as', 'at', 'au', 'aw', 'ax', 'az', 'ba', 'bb',
        'bd', 'be', 'bf', 'bg', 'bh', 'bi', 'biz', 'bj', 'bm', 'bn', 'bo',
        'br', 'bs', 'bt', 'bv', 'bw', 'by', 'bz', 'ca', 'cat', 'cc', 'cd',
        'cf', 'cg', 'ch', 'ci', 'ck', 'cl', 'cm', 'cn', 'co', 'com', 'coop',
        'cr', 'cu', 'cv', 'cx', 'cy', 'cz', 'de', 'dj', 'dk', 'dm', 'do',
        'dz', 'ec', 'edu', 'ee', 'eg', 'er', 'es', 'et', 'eu', 'fi', 'fj',
        'fk', 'fm', 'fo', 'fr', 'ga', 'gb', 'gd', 'ge', 'gf', 'gg', 'gh',
        'gi', 'gl', 'gm', 'gn', 'gov', 'gp', 'gq', 'gr', 'gs', 'gt', 'gu',
        'gw', 'gy', 'hk', 'hm', 'hn', 'hr', 'ht', 'hu', 'id', 'ie', 'il',
        'im', 'in', 'info', 'int', 'io', 'iq', 'ir', 'is', 'it', 'je', 'jm',
        'jo', 'jobs', 'jp', 'ke', 'kg', 'kh', 'ki', 'km', 'kn', 'kr', 'kw',
        'ky', 'kz', 'la', 'lb', 'lc', 'li', 'lk', 'lr', 'ls', 'lt', 'lu',
        'lv', 'ly', 'ma', 'mc', 'md', 'me', 'mg', 'mh', 'mil', 'mk', 'ml', 'mm',
        'mn', 'mo', 'mobi', 'mp', 'mq', 'mr', 'ms', 'mt', 'mu', 'museum', 'mv',
        'mw', 'mx', 'my', 'mz', 'na', 'name', 'nc', 'ne', 'net', 'nf', 'ng',
        'ni', 'nl', 'no', 'np', 'nr', 'nu', 'nz', 'om', 'org', 'pa', 'pe',
        'pf', 'pg', 'ph', 'pk', 'pl', 'pm', 'pn', 'pr', 'pro', 'ps', 'pt',
        'pw', 'py', 'qa', 're', 'ro', 'ru', 'rw', 'sa', 'sb', 'sc', 'sd',
        'se', 'sg', 'sh', 'si', 'sj', 'sk', 'sl', 'sm', 'sn', 'so', 'sr',
        'st', 'su', 'sv', 'sy', 'sz', 'tc', 'td', 'tf', 'tg', 'th', 'tj',
        'tk', 'tl', 'tm', 'tn', 'to', 'tp', 'tr', 'travel', 'tt', 'tv', 'tw',
        'tz', 'ua', 'ug', 'uk', 'um', 'us', 'uy', 'uz', 'va', 'vc', 've',
        'vg', 'vi', 'vn', 'vu', 'wf', 'ws', 'ye', 'yt', 'yu', 'za', 'zm',
        'zw'
        );
        protected function _validate($value)
        {
            if (preg_match('#^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$#', $value)) {
                return true;
            }
            $domainParts = explode('.', $value);
            if (sizeof($domainParts) < 2) {
                return false;
            }
            if (strlen($value) > 254 || strlen($value) < 4) {
                return false;
            }
            $tld = array_pop($domainParts);
            if (!in_array(strtolower($tld), $this->validTlds)) {
                return false;
            }
            $validChars = 'a-z0-9\-';
            foreach ($domainParts as $part) {
                if (strpos($part, '-') === 0 || (strlen($part) > 3 && strpos($part, '--', 2) === 2) || substr($part, -1) === '-') {
                    return false;
                }
                if (!preg_match('#^[' . $validChars . ']{1,63}$#i', $part)) {
                    return false;
                }
            }
            return true;
        }
    }
    ?>

    Домены валидировали-валидировали, да недовалидировали.

    https://github.com/wiistriker/govnokod_legacy/blob/master/mzz/system/forms/validators/formHostnameRule.php

    gost, 17 Мая 2019

    Комментарии (38)
  11. Куча / Говнокод #25560

    +1

    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
    var v: List[Int?] = List@{1, 2, none, 4};
    
    //Chained - List@{1, 4, 16}
    v->filter(fn(x) => x != none)->map[Int](fn(x) => x*x)
    
    //Piped none filter - List@{1, 4, 16}
    v |> filter(fn(x) => x != none) |> map[Int](fn(x) => x*x)
    
    //Piped with noneable filter - List@{1, 4, 16}
    v |??> map[Int](fn(x) => x*x)
    
    //Piped with none to result - List@{1, 4, none, 16}
    v |?> map[Int](fn(x) => x*x)
    
    
    // 5.15 Merge
    entity Baz {
        field f: Int;
        field g: Int;
        field k: Bool
    }
    
    var t = @[ 1, 2, 3 ];
    t<+(@[5])       //@[1, 2, 3, 5]
    t<+(@[3, 5])    //@[1, 2, 3, 3, 5]
    
    var r = @{ f=1, g=2, k=true };
    r<+(@{g=5})          //@{f=1, g=5, k=true}
    r<+(@{g=3, k=false}) //@{f=1, g=3, k=false}
    r<+(@{g=5, h=0)      //@{f=1, g=5, k=true, h=0}
    
    var e = Baz@{ f=1, g=2, k=true };
    e<+(@{g=5})          //@{f=1, g=5, k=true}
    e<+(@{g=3, k=false}) //@{f=1, g=3, k=false}
    e<+(@{g=5, h=0)      //error field not defined

    «Буквально несколько дней назад компания Microsoft представила публике новый язык программирования. Языку дали название Bosque. Главная миссия дизайна языка — чтобы он был прост и понятен как для человека, так и для компьютера»

    А вот кому новый, простой и понятный язык? Содержание спецсимволов всего на 54% превосходит таковое у «C++»!

    h/448814
    https://github.com/Microsoft/BosqueLanguage/blob/master/docs/language/overview.md

    gost, 22 Апреля 2019

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