1. PHP / Говнокод #5039

    +144

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    <?php
    
    error_reporting(E_ALL);
    if (isset($_GET["src"])) {
    if (stripos($_GET["src"], "http://") !== false || stripos($_GET["src"], "https://") !== false) { 
    die("Анонимус, пошёл на /*
    вырезано
    */
    if($ext == "jpg" or $ext == "jpeg"){
        $img = imagecreatefromjpeg($src);
    }

    защита от инклудов по HTTP от нашего любимого анального клоуна lstem aka komprenda

    Анонимус, 24 Декабря 2010

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

    +145

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    case "exit":
                unset($_SESSION["SITE_ADMIN"]);
                header("location: {$_SERVER["PHP_SELF"]}");
                die;
            break;

    выход "по-мишустински"
    не знаю как вам, а я словил лулзы

    цопырайты уходят komprenda, он же "Istem"

    Lure Of Chaos, 24 Декабря 2010

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

    +92

    1. 1
    2. 2
    Result := not FExecuting;
    if not Result then Exit;

    сейчас работаю над правкой компонента доставшегося от другого разработчика :), причем эта вершина мысли была обнаружена в недрах левого компонента, используемого моим компонентом :) ,который использовал этот разработчик :), Сам код соправождаемого мною компонента не далеко по стилю ушел от этого куска

    ageron, 23 Декабря 2010

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

    +73

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    public abstract class EntityCRUDManager<DataObject extends Serializable, DataKey extends Serializable, Filter, DaoObject extends GenericDao<DataObject, DataKey>>
    		extends EntityManager<DaoObject> implements CRUDManager<DataObject, DataKey, Filter> {
    ...
    }
    
    public interface CRUDManager<DataObject extends Serializable, DataKey extends Serializable, Filter>{
    ...
    }
    
    public abstract class EntityManager<DaoObject extends GenericDao> extends Manager{
    ...
    }

    Во как!!!

    KILA, 23 Декабря 2010

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

    +128

    1. 1
    if ((((((X >= -7) && (X<= -6) & (Y!=2)) || (X<= -2) && (X>= -6) && (Y<=0) && (Y>= -1) && (Y== 0.25*X + 0.5) || (X+ -2)*(X+ -2) + (Y+2)*(Y+2)==4) && (X >= -2) && (X<=0) && (Y>=0) && (Y<=2)|| (((X*X)+(Y*Y)==4)) && ((X>=0) && (X<=2) && (Y>=0) && (Y<=2))) || ((Y==0.5*X-1) && (X>=2) && (Y<=3) & (Y!=0)))) Console.WriteLine("Принадлежит");

    HIMen, 23 Декабря 2010

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

    +163

    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
    AClass::AClass()
    {
            char c;
    	pipe( m_ThreadPipeA );
    	pipe( m_ThreadPipeB );
            write( m_ThreadPipeA[0], &c, sizeof(c) );
    }
    
    void AClass::JobCreatorThread()
    {
    	char c;
    	do {
    		/* prepare new job and pass it to the thread pool */
    		read( m_ThreadPipeA[1], &c, sizeof(c) );
    		m_CurrJob = IncomingJob;
    		write( m_ThreadPipeB[0], &c, sizeof(c) );
    	} while (!m_Shutdown);
    }
    
    void AClass::ThreadPoolMethod()
    {
    	char c;
    	do {
    		Job j;
    		read( m_ThreadPipeB[1], &c, sizeof(c) );
    		j = m_CurrJob;
    		write( m_ThreadPipeA[0], &c, sizeof(c) );
    		/* handle the job j */
    	} while (!m_Shutdown);
    }

    из архивов.

    дала как-то архетиктура задание модуль распаралелить потоками - но при этом как можно меньше использовать локи, что бы проблем вертикального скалирования не возникало. и три месяца спустся они родили -о чудо!- многопоточный модуль ВООБЩЕ без локов. тока с производительностью проблемы - но это не могут быть локи потому что модуль ими ВООБЩЕ не пользуется - почему мне и дали задание посмотреть что там можно еще усовершенствовать.

    мне несколько часов понадобилось что бы мой примитивный мозг смог осознать величие полета мысли моих коллег. а потом (когда я наконец из моря кода выцедил приведенную сверху эссенцию) у меня волосы дыбом встали....

    лопата: чудаки пайпами симулировали мутексы/ивенты. и ведь не придерешься: архитекторы сказали локи избегать, а про пайпы ничего сказано не было.

    ЗЫ ну и то что в джоб объекте еще и строковых массивов на 80К, и они постоянно копировались туды сюды, это было cherry topping ко всему этому счастью.

    Dummy00001, 23 Декабря 2010

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

    +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
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    class RandomGeneratorFiveState : RandomGenerator {
        int zero, one, two, three, four, min, max;
        public RandomGeneratorFiveState(int min, int zero, int one, int two, int three, int four)
            : base() {
            max = min + (four != 0 ? 4 : three != 0 ? 3 : two != 0 ? 2 : one != 0 ? 1 : 0);
            this.min = min;
            this.zero = zero;
            this.one = this.zero + one;
            this.two = this.one + two;
            this.three = this.two + three;
            this.four = this.three + four;
        }
        public override int Next() {
            int n = Random.Next(four);
            if(n < zero) return min;
            if(n < one) return min + 1;
            if(n < two) return min + 2;
            if(n < three) return min + 3;
            return min + 4;
        }
        public override int GetMax() { return max; }
        public override int GetMin() { return min; }
    }

    amartynov, 23 Декабря 2010

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

    +145

    1. 1
    http://www.zvezdi-oriona.ru/134679.htm

    тут все прекрасно: и HTML и JS

    Анонимус, 23 Декабря 2010

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

    +152

    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
    $src = $_GET["src"];
    $w = $_GET["w"];
    $h = $_GET["h"];
    $q = $_GET["q"];
    $info = pathinfo($src);
    $ext = $info["extension"];
    if($ext == "jpg" or $ext == "jpeg"){
        $img = imagecreatefromjpeg($src);
    }
    else if($ext == "gif"){
        $img = imagecreatefromgif($src);
    }
    else if($ext == "png"){
        $img = imagecreatefrompng($src);
    }
    $x = $w / imagesx($img);
    $y = $h / imagesy($img);
    $k = ($x > $y) ? $y : $x;
    $nw = intval(imagesx($img) * $k);
    $nh = intval(imagesy($img) * $k);
    $img1 = imagecreatetruecolor($nw, $nh);
    // $img1 = imagecreatefromjpeg("bj.jpg");
    imagecopyresampled($img1, $img, 0, 0, 0, 0, $nw, $nh, imagesx($img), imagesy($img));
    header("Content-type: image/jpeg");
    imagejpeg($img1, null, $q);
    imagedestroy($img);
    imagedestroy($img1);

    Кусман отборного калища руки Великого уё... Гудвина =)

    Ice, 23 Декабря 2010

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

    −110

    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
    columns.each do |c|
            case c
            when 'Device'
              h << c
            when 'Usage'
              h << c
            when 'Status'
              h << c
            when 'Battery'
              h << c
            when 'GPS status'
              h << c
            when 'Wi-Fi status'
              h << c
            when 'Temperature'
              h << c
            when 'Alerts'
              h << c
            end
          end

    случайно вот родил )

    Dreamfall, 23 Декабря 2010

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