1. Си / Говнокод #11847

    +141

    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
    #include <stdio.h>
    
    void swap(long *a,long *b){
      *a=(*a<<sizeof(*a)*4);
      *a+=*b;
      *b=*a ^ *b;
      *b=(*b>>sizeof(*a)*4);
      *a=(*a<<sizeof(*a)*4);
      *a=(*a>>sizeof(*a)*4);
    }
    
    int main(){
     long a=22807;
     long b=1012;
       printf("a=%ld b=%ld\n",a,b);
     swap(&a,&b);
      printf("a=%ld b=%ld\n",a,b);
    }

    Swap variables without third variable

    AliceGoth, 29 Сентября 2012

    Комментарии (37)
  2. PHP / Говнокод #11846

    +50

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    /**
         * Что я курил, когда это писал? Почему нельзя было date('H:i:s', $time) ??? +___=
         * @param $seconds
         * @return string
         */
        private static function prettySecondsPrint($seconds){
            return str_pad((int)($seconds / 3600), 2, '0', STR_PAD_LEFT)
                .':'.str_pad((int)(($seconds % 3600) / 60), 2, '0', STR_PAD_LEFT)
                .':'.str_pad($seconds % 60, 2, '0', STR_PAD_LEFT);
        }

    А это, к сожалению, мое творение) Комменарий приписал когда позже просматривал код и обнаружил это)

    et, 28 Сентября 2012

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

    −193

    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
    if(!empty($_SESSION['order_id'])&&($_SESSION['order_id'] == $order->id))
    ;
    else{
        if(empty($order->user_id))
            if($password = $this->request->post('password','string')){
                if($url != $this->orders->check_password($url, $password))
                    return false;
            }
            else
                // Выводим форму запроса пароля
                return $this->body = $this->design->fetch('order_login.tpl');
        elseif ($order->user_id != $this->user->id)
            return false;
    }

    из разряда "я не умею писать условия"

    Snickers, 28 Сентября 2012

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

    +134

    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
    .events-bx-calendar .calendar-wrapper .calendar .days #day_1,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_2,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_3,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_4,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_5,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_6,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_7,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_8,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_9,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_10,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_11,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_12,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_13,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_14,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_15,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_16,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_17,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_18,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_19,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_20,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_21,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_22,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_23,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_24,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_25,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_26,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_27,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_28,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_29,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_30,
    .events-bx-calendar .calendar-wrapper .calendar .days #day_31 { padding: 5px 3px; }

    Un1oR, 27 Сентября 2012

    Комментарии (12)
  5. Java / Говнокод #11843

    +75

    1. 1
    v.getParent().getParent().getParent().getParent().requestDisallowInterceptTouchEvent(true);

    Не моё, но не могу не поделиться :)

    byss, 27 Сентября 2012

    Комментарии (3)
  6. Си / Говнокод #11842

    +141

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    7. 7
    8. 8
    9. 9
    #include "statements.h"
    #include "lexer.h"
    #include "conditions.h"
    #include "variables.h"
    #include "generator.h"
    #include "labels.h"
    #include "types.h"
    #include "errors.h"
    #include "io.h"

    В одном из cpp-файлов такой вот нехилый список инклудов.

    Fai, 27 Сентября 2012

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

    −95

    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
    private var _disabled:int = 0;
            public function set enabled(v:Boolean):void {
                if (!v) {
                    this._disabled ++;
                } else {
                    this._disabled --;
                }
                this.run();
            }
    
            public function get enabled():Boolean {
                return !this._disabled;
            }

    Интересно что будет если _disabled внезапно примет значение -1.

    kyzi007, 27 Сентября 2012

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

    +50

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    if($_REQUEST['filter2'] == 'my' OR $_REQUEST['filter2'] == 'all' OR $_REQUEST['filter2'] == 'delegated'){
        $filter2 = htmlspecialchars( $_REQUEST['filter2'], ENT_QUOTES );
    }else{
        $filter2 = 'all';
    }

    Может тогда уж $filter2 = htmlspecialchars( 'all', ENT_QUOTES ); для полного счастья?

    somnambulism, 27 Сентября 2012

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

    +35

    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
    void GetDPI ()
    {
    	jclass c; jmethodID m; jobject o, dm; jfieldID fxdpi, fydpi;
    
    	c = env->FindClass		("android/util/DisplayMetrics");
    	m = env->GetMethodID		(c, "<init>", "()V");
    	dm = env->NewObject		(c, m);
    
    	fxdpi = env->GetFieldID		(c, "xdpi", "F");
    	fydpi = env->GetFieldID		(c, "ydpi", "F");
    
    	c = env->FindClass		("android/app/NativeActivity");
    	m = env->GetMethodID		(c, "getWindowManager", "()Landroid/view/WindowManager;");
    	o = env->CallObjectMethod	(appState->activity->clazz, m);
    
    	c = env->GetObjectClass		(o);
    	m = env->GetMethodID		(c, "getDefaultDisplay", "()Landroid/view/Display;");
    	o = env->CallObjectMethod	(o, m);
    
    	c = env->GetObjectClass		(o);
    	m = env->GetMethodID		(c, "getMetrics", "(Landroid/util/DisplayMetrics;)V");
    	o = env->CallObjectMethod	(o, m, dm);
    
    	xdpi = env->GetFloatField	(dm, fxdpi);
    	ydpi = env->GetFloatField	(dm, fydpi);
    	LOGI("dpi is (%f, %f)", xdpi, ydpi);
    }

    Пишем под ведроид, дёргаем жабьи методы
    На жабе:
    DisplayMetrics d = new DisplayMetrics;
    getWindowManager.getDefaultDisplay.getMe trics(d);
    xdpi=d.xdpi;
    ydpi=d.ydpi;

    TarasB, 27 Сентября 2012

    Комментарии (61)
  10. 1C / Говнокод #11837

    −121

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    Функция ПолучитьКонтрольКонтрагентовВключен() Экспорт
    	мПривилегированныйРежим=ПривилегированныйРежим();
    	Если НЕ мПривилегированныйРежим Тогда
    		УстановитьПривилегированныйРежим(Истина);
    		мКонтрольКонтрагентовВключен=КОнстанты.КонтрольКонтрагентовВключен.Получить()=Истина;
    		УстановитьПривилегированныйРежим(мПривилегированныйРежим);
    	Иначе
    		мКонтрольКонтрагентовВключен=КОнстанты.КонтрольКонтрагентовВключен.Получить()=Истина;
    	КонецЕсли;	
    	
    	Возврат мКонтрольКонтрагентовВключен;
    КонецФункции

    Получение константы в в привилегированном режиме поражает. Антипаттерн Спагетти (можно обойтись двумя строками). Автор Хан Юрий Валентинович.

    ilya2184, 27 Сентября 2012

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