1. Лучший говнокод

    В номинации:
    За время:
  2. Си / Говнокод #20703

    +261

    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
    /* load config */
            for (i = 0; ; i++) {
                    conf[0] = '\0';
                    switch (i) {
                    case 0:
                            /* ~ */
                            snprintf(conf, sizeof conf, "%s/.%s",
                                pwd->pw_dir, SWM_CONF_FILE);
                            break;
                    case 1:
                            /* global */
                            snprintf(conf, sizeof conf, "/etc/%s",
                                SWM_CONF_FILE);
                            break;
                    case 2:
                            /* ~ compat */
                            snprintf(conf, sizeof conf, "%s/.%s",
                                pwd->pw_dir, SWM_CONF_FILE_OLD);
                            break;
                    case 3:
                            /* global compat */
                            snprintf(conf, sizeof conf, "/etc/%s",
                                SWM_CONF_FILE_OLD);
                            break;
                    default:
                            goto noconfig;
                    }
    
                    if (strlen(conf) && stat(conf, &sb) != -1)
                            if (S_ISREG(sb.st_mode)) {
                                    cfile = conf;
                                    break;
                            }
            }

    Вот так spectrwm грузит конфиги.

    codemonkey, 15 Августа 2016

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

    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
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    function CheckPropertyForSend(&$fields) {
        if ($fields["IBLOCK_ID"] == CATALOG_ID) {
            $arFilter = array("IBLOCK_ID" =>CATALOG_ID, "ID"=>$fields["ID"], "PROPERTY_NOT_ALLOWED" =>92);
            $res = CIBlockElement::GetList(Array(), $arFilter);
    
            if($res->SelectedRowsCount() == 1){
                $GLOBALS['NEED_CHECK'] = true;
            }else{
                $GLOBALS['NEED_CHECK'] = false;
            }
    
            $prod = LenalHelp::getProductInfo($fields["ID"]);
            $count = 0;
            $cheked = ( $fields["PROPERTY_VALUES"][580][0]["VALUE"] == 92 ) ? true : false;
            foreach ( $prod["STORES"] as $item ) {
                if ( $item["PRODUCT_AMOUNT"] ) {
                    $count += $item["PRODUCT_AMOUNT"];
                }
            }
    
            // -- убираем фдаг "нет в наличии" ---
            if ( $count > 0 && $cheked ) {
                $fields["PROPERTY_VALUES"][580] = "";
            }
            // -- устанавливаем фдаг "нет в наличии" ---
            if ( $count == 0 && !$cheked ) {
                $fields["PROPERTY_VALUES"][580][0]["VALUE"] = 92;
            }
    
        }
    }

    Платформа Битрикс, Lenal гребанные ублюдки

    lscin, 22 Июля 2016

    Комментарии (4)
  4. C# / Говнокод #20391

    +11

    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
    using System; 
    using System.Threading; 
    using System.Threading.Tasks; 
    
    
    
    namespace ConsoleApplication23 { 
    
    
    class InternalRandom { 
    static double x; 
    
    Task t, t2; 
    
    public InternalRandom() { 
    t = new Task(ThreadFunc); 
    t.Start(); 
    t2 = new Task(ThreadFunc); 
    t2.Start(); 
    } 
    
    public double Next() { 
    return x; 
    } 
    
    public double Next(double max) { 
    x+=7; 
    return NORMALNYYREM(x,max); 
    //return Math.IEEERemainder(max, x); 
    } 
    
    
    
    static double NORMALNYYREM(double A,double B) { 
    return A - ((double)((long)(A/B))) * B; 
    } 
    
    
    static void ThreadFunc() { 
    while(true) { 
    x += 1; 
    } 
    } 
    
    } 
    
    
    
    class Program { 
    static InternalRandom ir; 
    
    static void Main(string[] args) { 
    ir = new InternalRandom(); 
    for(int i = 1; i <= 20; i++) { 
    Console.WriteLine( "#"+i+" = "+ Random() ); 
    } 
    Console.ReadLine(); 
    //Environment.Exit(0); 
    } 
    
    
    static double Random() { 
    return ir.Next(10); 
    } 
    
    
    } 
    }

    dm_fomenok, 18 Июля 2016

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

    −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
    общественного недействительными "тест Unit похолодало Effect '() {
            Дано: "температура камеры является смертельной"
            Защиту ячейка = worldSteps.getNextStandaloneCell ()
            INT coldTemperature = Unit.HEALTHY_TEMPERATURE_MIN - 1;
            worldSteps.makePerfectConditionsOnCell (клетка);
            cell.setTemperature (coldTemperature);
    
            когда: "единица создается на этой ячейке"
            worldSteps.createTeamTempGarantNoZeroTeamsInWorld ()
            Защиту humanSquad1 = worldSteps.createUnit (
                    worldSteps.createHumanTeam (),
                    клетка);
    
            Блок Блок = humanSquad1.unit
            Защиту preHealth = unit.getTotalParam (UnitParameterType.HEALTH)
            unit.setTemperature (coldTemperature);
    
            затем: "единица измерения температуры до сих пор не создают эффекта холодной"
            WorldAsserts.assertUnitHasNoEffect (единица измерения, Cold.class);
            утверждают unit.getTotalParam (UnitParameterType.HEALTH) == preHealth
            когда:
            worldSteps.rewindTeamsToStartNewWorldStep ();
            Utils.sleepThread (1000)
    
            затем: "добавлен эффект холодной"
            WorldAsserts.assertUnitAlive (единица измерения);
            WorldAsserts.assertUnitHasEffect (единица измерения, Cold.class);
    
            и: "health-- на той же стадии"
            утверждают unit.getTotalParam (UnitParameterType.HEALTH) == preHealth - 1
        }

    dmli, 14 Июля 2016

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

    +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
    24. 24
    function implode() {
        $str = '';
        if(func_num_args()==1) {
            $array  = (is_array(func_get_arg(0))) ? func_get_arg(0) : false;
            $symbol = '';
        } elseif(func_num_args()==2) {
            $array = (is_array(func_get_arg(0))) ? func_get_arg(0): func_get_arg(1);
            $symbol = (!is_array(func_get_arg(0))) ? func_get_arg(0) : func_get_arg(1);
        } else {
            return false;
        }
        if($array===false) {
            return false;
        } else {
            foreach($array as $k=>$v) {
                if(is_array($v)) {
                    return false;
                } else {
                    $str = $str.$symbol.$v;
                }
            }
        return $str;
        }
    }

    Свой аналог функции implode. И такое бывает

    McLotos, 11 Июля 2016

    Комментарии (4)
  7. PHP / Говнокод #20329

    +3

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    ###############################
    ##### Проверяем сылку гет #####
    ###############################
    foreach ($_GET as $links) {
    if (!is_string($links) || !preg_match('#^(?:[a-z0-9_\-/]+|\.+(?!/))*$#i', $links)) {
    header ('Location: '.$HOME.'');
    exit;
    } 
    } 
    unset($links);

    Защита с strongcms v.1.1 . Офф сайт strongcms.ru
    ---
    P.s. продам такую же защиту на $_POST данные ))

    eskrano, 05 Июля 2016

    Комментарии (4)
  8. C# / Говнокод #20325

    +3

    1. 1
    2. 2
    3. 3
    4. 4
    if (Expires != 0 && Expires.ToString() != "9223372036854775807")
    {
            ...
    }

    Expires типа long

    Pointerjkeee, 05 Июля 2016

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

    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
    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
    header.php
    
     <?$APPLICATION->IncludeComponent(
                    "lenal:lenal.menu",
                    "mobile",
                    array(
                        "VIEW_MODE" => "LINE",
                        "SHOW_PARENT_NAME" => "Y",
                        "IBLOCK_TYPE" => "catalog",
                        "IBLOCK_ID" => "39",
                        "SECTION_ID" => $_REQUEST["SECTION_ID"],
                        "SECTION_CODE" => "",
    
    ..................................................
    
    
    component.php
    
    if(!isset($arParams["CACHE_TIME"]))
    	$arParams["CACHE_TIME"] = 36000000;
    
    if($this->StartResultCache(false, ($arParams["CACHE_GROUPS"]==="N"? false: $USER->GetGroups())))
    {
    	/*
    	 * Lenal вы гребаные идиоты, у вас в параметрах стоит  "SECTION_ID" => $_REQUEST["SECTION_ID"] и
    	 * единственным условием у вас сброса кеша ("CACHE_TIME" => "36000000"!!!!!! бля)
    	 * ВОТ ЭТО?! Отсутствие модуля iblock ?!? 
    	 * Чтоб вы всю жизнь на жевачку работали, придурки!
    	 * 
    	 * 100 000 файлов кеша на ОДНО МЕНЮ ОДНОГО САЙТА! 
    	 * 
    	 * Дегенераты.
    	 * 
    	 */ 
    	if(!\Bitrix\Main\Loader::includeModule("iblock"))
    	{
    		$this->AbortResultCache();
    		ShowError(GetMessage("IBLOCK_MODULE_NOT_INSTALLED"));
    		return;
    	}
    /*********************

    Компонент меню на публичной части от компании Lenal (платформа 1С-Битрикс)

    lscin, 04 Июля 2016

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

    +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
    public void notificationSuccess(String operation) {
            Logger.getLogger(this.getClass().getName()).log(Level.INFO, "Operation " + operation + " success");
            FacesMessage msg = null;
            msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Notification", "Success");
            FacesContext.getCurrentInstance().addMessage(null, msg);
        }
    
        public void notificationError(Exception e, String operation) {
            Logger.getLogger(this.getClass().getName()).log(Level.ERROR, "Operation " + operation + " Error ", e);
            FacesMessage msg = null;
            msg = new FacesMessage(FacesMessage.SEVERITY_INFO, "Notification", "Error");
            FacesContext.getCurrentInstance().addMessage(null, msg);
    }

    А не созавать ли мне новый экземпляр логгера при каждом уведомлении...

    proselyte, 03 Июля 2016

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

    +4

    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
    <xsl:choose>
    	<xsl:when test="name = 'Палатка ALEXIKA RONDO 3 Plus'">
    	<h2>Палатки ALEXIKA – идеальный вариант для активного отдыха</h2></xsl:when>
    	<xsl:otherwise>
    	<xsl:choose>
    		<xsl:when test="name = 'Мешок спальный ALEXIKA SIBERIA Plus(правый)'">
    		<h2>Предпочитаете отдых в палатках? Купите спальный мешок ALEXIKA SIBERIA PLUS</h2></xsl:when>
    		<xsl:otherwise>
    		<xsl:choose>
    			<xsl:when test="name = ''"></xsl:when>
    			<xsl:otherwise>
    			<xsl:choose>
    				<xsl:when test="name = ''"></xsl:when>
    				<xsl:otherwise>
    				<xsl:choose>
    					<xsl:when test="name = ''"></xsl:when>
    					<xsl:otherwise>
    					<xsl:choose>
    						<xsl:when test="name = ''"></xsl:when>
    						<xsl:otherwise>
    						Полное описание товара "<xsl:value-of disable-output-escaping="yes" select="name"/>"
    						</xsl:otherwise>
    					</xsl:choose>
    					</xsl:otherwise>
    				</xsl:choose>
    				</xsl:otherwise>
    			</xsl:choose>
    			</xsl:otherwise>
    		</xsl:choose>
    		</xsl:otherwise>
    	</xsl:choose>
    	</xsl:otherwise>
    </xsl:choose>

    эмм... просто было лень

    arny, 28 Июня 2016

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