1. C++ / Говнокод #13857

    +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
    void gte::loadProps(const char* fileName){
        
    	propMap.clear();
    	s3eFile* g_FileHandle = s3eFileOpen(fileName, "rb");
    	while (!s3eFileEOF(g_FileHandle)) {
    		char c1=0;
    		char c2=0;
    		s3eFileRead(&c1, 1, 1, g_FileHandle);
    		s3eFileRead(&c2, 1, 1, g_FileHandle);
    		int len = 0;
    		len = (c2 & 0xFF) | ( (c1  & 0xff) << 8);
    		if (len==0) continue;
    		char* textData = new char[len+1];
    		textData[len] = 0;
    		s3eFileRead(textData, sizeof(char), len, g_FileHandle);
    		char* pos = strchr(textData, ':');
    		string key(textData, pos - textData);
    		string value(pos + 2, textData + len - pos - 2);//(textData,
    		propMap[key] = value;
    	}
    
    	s3eFileClose(g_FileHandle);
    }

    Чтение строки, первые 2 байта - длинна.
    Проект использует Marmalade SDK.

    krypt, 27 Сентября 2013

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

    +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
    function compare_date(start_day, start_hour, start_min, end_day, end_hour, end_min)
    {
      var start_ = start_day.split('-');
      var end_ = end_day.split('-');
    
      if (start_[2] > end_[2]) return false;
      else {
        if (start_[2] == end_[2]) {
          if (start_[1] > end_[1]) return false;
          else {
            if (start_[1] == end_[1]) {
              if (start_[0] > end_[0]) return false;
              else {
                if (start_[0] == end_[0]) {
                  if (parseFloat(start_hour) > parseFloat(end_hour)) return false;
                  else {
                    if (parseFloat(start_hour) == parseFloat(end_hour)) {
                      if (parseFloat(start_min) > parseFloat(end_min)) return false;
                      else {
                        if (parseFloat(start_min) == parseFloat(end_min)) return false;
                        else return true;
                      }
                    }
                    else return true;
                  }
                }
                else return true;
              }
            }
            else return true;
          }
        }
        else return true;
      }
    }

    Откопал функцию-велосипед для сравнения двух дат. Возвращает true, если вторая дата позже первой.

    MikleSmart, 27 Сентября 2013

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

    +153

    1. 1
    2. 2
    // В противном случаи я получаю что-то типа 012.303245.23
    summ += parseFloat(parseFloat(value).toFixed(2));

    Флоутим помаленьку...

    nonamez, 27 Сентября 2013

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

    +157

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    window.SYSTEM_LOCALE ='ru';
    if ((/ru/i).test(window.SYSTEM_LOCALE)) {
        window.SYSTEM_LOCALE = "ru";
    } else if ((/en/i).test(window.SYSTEM_LOCALE)) {
        window.SYSTEM_LOCALE = "en";
    } else if ((/uk|ua/i).test(window.SYSTEM_LOCALE)) {
        window.SYSTEM_LOCALE = "uk";
    };

    wtf?

    SSSandman, 26 Сентября 2013

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

    +162

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    $count = count($array);
    
    // Говорю коллеге: "У тебя там деление на ноль, исправь". 
    // После этого появилось следующее...
    if ( $count == 0 ) $count = 1;
    
    $result = (int) ((1/$count) * SOME_VALUE1 + SOME_VALUE2);

    Код, блять, Хемминга

    bot, 26 Сентября 2013

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

    +81

    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
    #include <iostream>
    #include <cstdlib>
    using namespace std;
    
    int bin_search(int *A, int key, int low, int high){
      if (low > high){
          return 0;
      }
      int mid = ( low + high ) / 2;
      if (A[mid] == key)
        return mid+1;
      else if( A[mid] < key)
        bin_search(A, key, mid + 1, high);
      else if (A[mid] > key)
        bin_search(A, key, low, mid - 1);
    }
    
    int main()
    {
        int n, k;
        cin >> k >> n;
        int A[n-1];
        for (int i = 0; i < n; i++)
        {
            cin >> A[i];
        }
            cout << bin_search(A, k, 0, n);
    }

    Нужно реализовать бинпоиск рекурсией, на вход значение искомого элемента,
    число элементов и сам массив,
    вывести номер минимального элемента равного искомому.
    У меня откровенно говоря баг, не могу его откопать, помогите!!!

    aesc_smirnov, 26 Сентября 2013

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

    +2

    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
    #if defined(_WIN32) || defined(_WIN64)
         size_t size = message.size();
         size_t size_buf = 1015;
    
         size_t pointer = 0;
         for (int i = 0; i < (size/size_buf) + 1 ; i++){
             
             /*Делаем для красивого вывода. Пробел всегда один байт.
              *Потому сматываем указатель буфера до первого пробела.*/
             int buf = size_buf;
             while (message[pointer+buf] != ' ')
                 buf--;
             
             /*Здесь лечится косяк MinGw, буфер принимает по 1к байтов.
              *Лечение производим создавая дополнительные буферы.*/
             istringstream ss(message.substr(pointer,buf) );
             std::cout << ss.rdbuf();
             
             pointer += buf;
         }
    #else
         std::cout << message;
    #endif

    Похоже плохая сборка MinGw.
    http://govnokod.ru/13094

    crastinus, 26 Сентября 2013

    Комментарии (71)
  8. Куча / Говнокод #13850

    +125

    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
    Синтаксический сахар в #MAXScript такой сахар!
    
    Надоели конструкции такого вида?
    if (SomeShit == undefined) then (...)
    
    Запили в парочку функций - и всё ок!
    fn Have Obj = (Obj != undefined)
    fn No Obj = (not (Have Obj))
    
    ...
    ......
    Профит!
    if (Have Beer) then (...)
    if (No Glass) then (...)
    
    Миллисекунда оверхеда на вызов функции - в подарок!

    Уроки ленивого программирования для самых ленивых или берегущих клавиатуру xD

    3Doomer, 24 Сентября 2013

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

    +150

    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
    private function checkCookie(){
                      if(!isset($_COOKIE['sessid'])) {
                              $this->userInfo['id'] = 0;
                              $this->userInfo['isAdmin'] = false;
                              return false;
                      }
    
                      $id_lenght = strlen($_COOKIE['sessid']) - 32;
                      $cookie_id = substr($_COOKIE['sessid'],0,$id_lenght);
                      $cookie_hash = substr($_COOKIE['sessid'],$id_lenght);
                      $this->registry['db']->heal($cookie_id); // антиинжект
                      $dbres = $this->registry['db']->query("SELECT password FROM users WHERE user_id = '$cookie_id';")->fetch();
                      if(md5($dbres['password']) == $cookie_hash){
                             $this->userInfo['id'] = $cookie_id;
                             return true;
                      }
                      return false;
          }

    в чем-то гениально

    djumpen, 24 Сентября 2013

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

    +142

    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
    if( gm !== null ) {
                group   = 'grid';            
                stp     = this.options.step;                  
                gsc     = stp.split('|');
                st  = 0; 
        
                for( var gstp in gsc ) {                        
                    
                    data = ( this.resolution( gsc[st] ) !== null ) ? this.resolution( gsc[st] ) : data;
                    $.Storage.set( group, data );
                    st++;
    
                }
            }           
            unify   = ( this.options.debug === true ) ? '?' + Math.floor( Math.random( 1, 30 ) * 200 ) : ''; 
            // construct DOM & switchers
            this.builder( gm, gsc, data, cntwrp, itmwrp, group, unify, pl, sp, st );
            // on-ready activation
            if( data !== undefined ) this.activation( data, group );
            //switch engine
            $('li', '.switcher').click(function( e ) { 
                t = $(this).attr('data-st');
                g = $(this).attr('data-gr');           
                //clear
                $('link[data-gr="'+ g +'"]', 'head').attr('rel','fake');
                $('li', '.switcher[data-gr="'+ g +'"]').removeClass('activ');          
                //set
                $('link[data-st='+ t +']','head').attr('rel', 'stylesheet');
                $(this).addClass('activ');
                $.Storage.set( g, t );
                e.preventDefault();
            });    
     Plugin.prototype.builder = function ( gm, gsc, data, cntwrp, itmwrp, group, unify, pl, sp, st ) {
            itms = lnks = '';
            x = 0;
            for( i = 1; i <= st; i++ ) {   
                if( group === 'grid' ) {
                    href    = sp + gsc[x] +'.css'+ unify;
                    idm     = gsc[x]; 
                    x++;           
                } 
    			else {
                    href    = sp +'st'+ i +'.css'+ unify; 
                    idm     = 'st'+ i +'_'+ group;
                }                
                lnks += '<link href="'+ href +'" rel="fake" media="screen" data-st="'+ idm +'" data-gr="'+ group +'" />';
                itms += '<'+ itmwrp +' id="'+ idm +'" data-gr="'+ group +'" data-st="'+ idm +'"'+'>'+'['+ i +']'+'</'+ itmwrp +'>';
            }
            $('head').append(lnks);
            if( cntwrp === null ) { // independent block
                cntwrp = $('<div style="display: inline" id="inline_merge_'+ group +'"></div>');
            }
            if( gm !== 'auto' ) {
                $(pl).append( cntwrp );
                cntwrp.attr({ 'class': 'switcher', 'data-gr': group }).html( itms );
            }         
        }
        // Plugin logic wrapper
        $.fn[pluginName] = function ( options ) {
            return this.each(function () {
                if (!$.data(this, 'plugin_' + pluginName)) {
                    $.data(this, 'plugin_' + pluginName,
                    new Plugin( this, options ));
                }
            });
        }

    Я убил 84 человека ... Я пидарас ;) Звук ебаный ублюдок, пидор и гнида всем составом до последнего вздоха, капли пота и копейки в его кармане ... Он должен мне over 30 000 000 $, которые прокукарекал в результате наезда и остался конченным пидрилой всем составом ... Аминь, я полный Лох( это по Японским понятиям ). Я никогда бы не подумал, что пидорами были все президенты этой великой державы, все дупутаты, гос. дума и те, кто имел честь с ними "сотрудничать". Я люблю Россию, мне жалко пидоров и звук ;) Помимо прочего это до сих пор работает ... Подвел jQuery из-за AJAX.

    Full version: https://github.com/x029ah/style-switch/blob/master/scripts/jquery.cssSwitcher.js

    Сайты удалили, бабу изнасиловали, мусоров купили, а пидоры до сих пор кукарекают. Поздравляю всех выживших. Говном вы не были -- говном вы стали ;)

    Stealth, 24 Сентября 2013

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