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

    +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
    PHPAPI void php_var_export_ex(zval *struc, int level, smart_str *buf) /* {{{ */
    {
    	/* insignificant bullshit omitted */
    	zend_string *ztmp, *ztmp2;
    
    	switch (Z_TYPE_P(struc)) {
    		case IS_STRING:
    			ztmp = php_addcslashes(Z_STR_P(struc), 0, "'\\", 2);
    			ztmp2 = php_str_to_str(ZSTR_VAL(ztmp), ZSTR_LEN(ztmp), "\0", 1, "' . \"\\0\" . '", 12);
    
    			smart_str_appendc(buf, '\'');
    			smart_str_append(buf, ztmp2);
    			smart_str_appendc(buf, '\'');
    
    			zend_string_free(ztmp);
    			zend_string_free(ztmp2);
    			break;
    	}
    }
    /* }}} */

    Пыхарь: Расмус, у меня верстка едет, когда я через var_export() нулевые байты в браузер кидаю. Пофикси! (https://bugs.php.net/bug.php?id=37262)
    Расмус: Пофиксил тебе за щеку. Проверяй. (https://github.com/php/php-src/blob/master/ext/standard/var.c#L482)
    Пыхарь: Проверил. Помогло. (https://ideone.com/gnCKh1)

    Stallman, 16 Ноября 2017

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

    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
    PrefixAllocator::PrefixAllocator(
        const std::string& myNodeName,
        const KvStoreLocalCmdUrl& kvStoreLocalCmdUrl,
        const KvStoreLocalPubUrl& kvStoreLocalPubUrl,
        const PrefixManagerLocalCmdUrl& prefixManagerLocalCmdUrl,
        const MonitorSubmitUrl& monitorSubmitUrl,
        const AllocPrefixMarker& allocPrefixMarker,
        const folly::Optional<folly::CIDRNetwork> seedPrefix,
        uint32_t allocPrefixLen,
        bool setLoopbackAddress,
        bool overrideGlobalAddress,
        const std::string& loopbackIfaceName,
        std::chrono::milliseconds syncInterval,
        PersistentStoreUrl const& configStoreUrl,
        fbzmq::Context& zmqContext)
        : myNodeName_(myNodeName),
          allocPrefixMarker_(allocPrefixMarker),
          seedPrefix_(seedPrefix),
          allocPrefixLen_(allocPrefixLen),
          setLoopbackAddress_(setLoopbackAddress),
          overrideGlobalAddress_(overrideGlobalAddress),
          loopbackIfaceName_(loopbackIfaceName),
          syncInterval_(syncInterval),
          configStoreClient_(configStoreUrl, zmqContext),
          zmqMonitorClient_(zmqContext, monitorSubmitUrl) {

    Фейсбук выложил какую-то хуйню https://github.com/facebook/openr/blob/master/openr/allocators/PrefixAllocator.cpp#L61

    g0cTb, 16 Ноября 2017

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

    −1

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    Как думаете, гландопродавцы, какого хуя подавляющее большинство держателей каких-либо API продолжают отчаянно
    цепляться за устаревший формат "XML", отказываясь признавать простоту и удобство (для обеих сторон) формата "JSON"? 
    Как "simplexml_load_file(...)" с неебическим количеством мусора типа "@attributes" может быть лучше приятненького
    "json_decode(..., true)", учитывая, что первый, в случае, если дочерний тег с определённым именем у "родителя" один,
    возвращает по этому тегу одномерный массив, а в случае, если их несколько - многомерный? Где предсказуемость?

    COWuTEJIbTBOEuMAMKu, 16 Ноября 2017

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

    0

    1. 1
    2. 2
    3. 3
    do {
    // много кода и в нужный момент break :)
    } while (true === true);

    Для пущей уверенности в том что цикл "не сорвётся" в коде используется тождественно равно - моя отсебятинка в одном их проектов :)

    loderuner, 16 Ноября 2017

    Комментарии (14)
  5. JavaScript / Говнокод #23542

    0

    1. 1
    2. 2
    if(services_type == 3) var checked = 1;
    else var checked = 0;

    fellownik, 16 Ноября 2017

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

    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
    function numeral($s, $t1, $t3, $t5)
    {
    	$s = intval($s) % 100;
    	$z2 = intval($s / 10);
    	$z3 = $s % 10;
    	return ($z3 == 0) || ($z3 > 4) || ($z2 == 1)
    	       ? $t5
    	       : (($z3 > 1) && ($z3 < 5) ? $t3 : $t1);
    }
    
    function fileSizeInKB($size)
    {
        if ($size < 1024) {
            return intval($size) . '&nbsp;' . numeral($size, 'байт', 'байта', 'байтов');
        } else {
            $size /= 1024;
            if ($size < 1024)
                return intval($size) . '&nbsp;КБ';
            else
                return intval($size / 1024) . '&nbsp;МБ';
        }
    }

    high top pluralization method

    SeniorShaurman, 16 Ноября 2017

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

    +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
    <?php
     
    class Govno
    {
    	function __toString()
    	{
    		return 'govno';
    	}
    }
     
    ${'<?php'}   = 42;
    ${M_PI}      = 43;
    ${new Govno} = 44;
    ${"\0"}      = 45;
    ${''}        = 46;
    ${null}      = 47;
     
    ${create_function('', 'return null;')} = 444;
    ob_start();
    phpinfo();
    ${ob_get_clean()} = 9000;
     
     
    var_dump(get_defined_vars());

    В ПХП возможно всё, если делать это через жопу.
    https://ideone.com/svS2sO

    Stallman, 16 Ноября 2017

    Комментарии (56)
  8. Си / Говнокод #23539

    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
    #include "string.h"
    #include "stdio.h"
    
    int main()
    {
      char c[15],*d = &c[0]; 
      scanf("%10u", &c[11]);
      sprintf(d, "%u\0",
         (c[11]&0xFF)|
        ((c[12]&0xFF)<<8)|
        ((c[13]&0xFF)<<16)|
        ((c[14]&0xFF)<<24));
      do if (c[0] > *d) c[0] = *d;
      while (*d++, *(d+1) != 0);
      printf("%d\n", c[0]-'0');
      return 0;
    }

    Находит наименьшее цифру в числе

    Sempai, 15 Ноября 2017

    Комментарии (2)
  9. Java / Говнокод #23538

    +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
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    import java.io.*;
    import java.math.RoundingMode;
    import java.text.DecimalFormat;
    import java.text.NumberFormat;
    
    import java.util.Scanner;
    /*
    Число E
    
    (Время: 1 сек. Память: 16 Мб Сложность: 10%)
    Выведите в выходной файл округленное до n знаков после десятичной точки число E. 
    В данной задаче будем считать, что число Е в точности равно 2.7182818284590452353602875.
    */
    
    import static com.sun.org.apache.xml.internal.security.keys.keyresolver.KeyResolver.length;
    
    public class Main {
        public static void main(String args[]) throws IOException {
            
            Scanner scanner=new Scanner(System.in);
            int n=scanner.nextInt();
            NumberFormat numberFormat = new DecimalFormat("0.000000000000000000000000000");
            numberFormat.setRoundingMode(RoundingMode.DOWN);
            String a=numberFormat.format(Math.E);
            char[] arr=a.toCharArray();
            for(int i=0;i<n+2;i++){
                System.out.print(arr[i]);
            }
        }
    
        }

    Понять и простить

    ArthurMakaev, 15 Ноября 2017

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

    −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
    <?foreach($RObl as $v) {$n++;?>
    <li>
    <?if(!empty($v['URL_HOST'])) switch ($v['SOCR']) {?>
    <?	case 'обл.':?>
    <a href="http://<?if(isSet($v['URL_HOST']) and $v['URL_HOST']!='') echo $v['URL_HOST']."/";?>"><?=$v['NAME']?> область</a>
    <?		break;?>
    <?	case 'край':?>
    <a href="http://<?if(isSet($v['URL_HOST']) and $v['URL_HOST']!='') echo $v['URL_HOST']."/";?>"><?=$v['NAME']?> край</a>
    <?		break;?>
    <?	case 'Респ.':?>
    <?if(substr($v['NAME'],-2)!=='ая') {?>
    <a href="http://<?if(isSet($v['URL_HOST']) and $v['URL_HOST']!='') echo $v['URL_HOST']."/";?>">Республика <?=$v['NAME']?></a>
    			<?;} else {?>
    <a href="http://<?if(isSet($v['URL_HOST']) and $v['URL_HOST']!='') echo $v['URL_HOST']."/";?>"><?=$v['NAME']?> республика</a>
    			<?}?>
    <?		break;?>
    <?	case 'АО':?>
    <a href="http://<?if(isSet($v['URL_HOST']) and $v['URL_HOST']!='') echo $v['URL_HOST']."/";?>">АО <?=$v['NAME']?></a>
    <?		break;?>
    <?	case 'Аобл.':?>
    <a href="http://<?if(isSet($v['URL_HOST']) and $v['URL_HOST']!='') echo $v['URL_HOST']."/";?>"><?=$v['NAME']?> автономная область</a>
    <?		break;?>
    <?	default:?>
    <a href="http://<?if(isSet($v['URL_HOST']) and $v['URL_HOST']!='') echo $v['URL_HOST']."/";?>"><?=$v['SOCR']?> <?=$v['NAME']?></a>
    <?}?>
    </li>

    Падаван Дмитрия Котерова

    SeniorShaurman, 15 Ноября 2017

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