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

    +133

    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
    //......................................
    void DlPortWritePortUshort(WORD addr, WORD data) {
      DWORD br;
      (&addr)[1]=data;
      DeviceIoControl(hdriver,IOCTL_WRITE_PORT_USHORT,&addr,4,NULL,0,&br,NULL);
    }
    
    DWORD DlPortReadPortUlong(WORD addr) {
     DWORD br;
     DeviceIoControl(hdriver,IOCTL_READ_PORT_ULONG,&addr,2,&addr,4,&br,NULL);
     return *(DWORD*)&addr;
    }
    
    void DlPortWritePortUlong(WORD addr, DWORD data) {
      DWORD br;
      DeviceIoControl(hdriver,IOCTL_WRITE_PORT_ULONG,&addr,8,NULL,0,&br,NULL);
    }
    //......................................

    Кусок очередного форка dll-ки для работы с очередным, мать его, форком драйвера inpout32.sys.
    Попался в поисках исправленного драйвера и dll-обёртки для него.

    harvestor, 22 Января 2015

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

    +144

    1. 1
    2. 2
    3. 3
    4. 4
    5. 5
    6. 6
    #include <stdio.h>
    int main(void) 
    {
        puts("1\n3\n5\n7\n9\n11\n13\n15\n17\n19\n21\n23\n25\n27\n29\n31\n33\n35\n37\n39\n41\n43\n45\n47\n49\n51\n53\n55\n57\n59\n61\n63\n65\n67\n69\n71\n73\n75\n77\n79\n81\n83\n85\n87\n89\n91\n93\n95\n97\n99");
        return 0; 
    }

    Выводим все нечетные числа от 0 до 100. Одно число - одна строка.

    GreatMASTERcpp, 19 Января 2015

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

    +134

    1. 1
    2. 2
    if (channel->leftover < 0)		// if nothing left over for next time:
    	printk("ERRRRRRRRRRRRRRRRRRRRRRRRRRRR\n");

    RRRRRRRRRRRRRRetard.

    codemonkey, 19 Января 2015

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

    +136

    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
    struct hostent *rc_gethostbyname(const char *hostname)
    {
    	struct 	hostent *hp;
    #ifdef GETHOSTBYNAME_R
    #if defined (GETHOSTBYNAMERSTYLE_SYSV) || defined (GETHOSTBYNAMERSTYLE_GNU)
    	struct 	hostent hostbuf;
    	size_t	hostbuflen;
    	char	*tmphostbuf;
    	int	res;
    	int	herr;
    	
    	hostbuflen = 1024;
    	tmphostbuf = malloc(hostbuflen);
    #endif
    #endif
    
    #ifdef GETHOSTBYNAME_R
    #if defined (GETHOSTBYNAMERSTYLE_GNU)
    	while ((res = gethostbyname_r(hostname, &hostbuf, tmphostbuf, hostbuflen, &hp, &herr)) == ERANGE)
    	{
    		/* Enlarge the buffer */
    		hostbuflen *= 2;
    		tmphostbuf = realloc(tmphostbuf, hostbuflen);
    	}
    	free(tmphostbuf);
    #elif defined (GETHOSTBYNAMERSTYLE_SYSV)
    	hp = gethostbyname_r(hostname, &hostbuf, tmphostbuf, hostbuflen, &herr);
    	free(tmphostbuf);
    #else
    	hp = gethostbyname(hostname);
    #endif
    #else
    	hp = gethostbyname(hostname);
    #endif
    
    	if (hp == NULL) {
    		return NULL;
    	}
    	return hp;
    }

    freeradius-client 1.1.6, казалось бы серьезная либа... Говно мамонта, конечно, но оно валяется в репе бубунты 14.10... Неужели никто еще не заметил? :)

    bormand, 15 Января 2015

    Комментарии (9)
  5. Си / Говнокод #17446

    +138

    1. 1
    if (!GL_TRUE == linkStatus)

    пример из vuforia sdk
    вроде подобного булшита еще не было

    chtulhu, 15 Января 2015

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

    +143

    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
    void ** __attribute__((noinline)) findVoidSortMap(void ** list,void *key)
    {
        if (!list) return 0;
        if (!*list) return 0;
        unsigned int count= **(unsigned int**)list;
        char *p=(char*)*list;
        p+=4;
        Element *b=(Element *)p;
     
        long long skey=(long long)key;
     
        while (count>0) {
            void** kt=(void**)&b[count>>1];
            long long rkey=(long long)kt[0];
            if (skey==rkey) return (void**)&kt[1];
            if (skey>rkey) {b+=(count>>1)+1;count--;}
            count=count>>1;
        }
     
        return (void**)-1;
    }

    гуру осемблира на этом коде доказывал, что Эльбрус сосёт
    http://www.gamedev.ru/flame/forum/?id=196722&page=33#m481

    TarasB, 05 Января 2015

    Комментарии (45)
  7. Си / Говнокод #17396

    +135

    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
    /*
         * Lack of time prevents me from writing this segment properly.
         * May Krishna have mercy on my soul.
         */
        static const uint32_t pal            = 720 * 576 * 2;
        static const uint32_t ntsc_composite = 720 * 507 * 2;
        static const uint32_t ntsc_sdi       = 720 * 480 * 2;
        uint16_t new_width = width, new_height = height;
    
        if (height == 0) {
            new_width = 1920;
            new_height = 1080;
        }
    
        if (format == PAL) {
            rv = pal;
            memset(out_payload, 0x3F, rv);
        }
        else if (format == NTSC) {
            if (source == SDI_VIDEO) {
                rv = ntsc_sdi;
                memset(out_payload, 0x3F, rv);
            }
            else {
                rv = ntsc_composite;
                memset(out_payload, 0x3F, rv);
            }
        }
        else {
            rv = new_width * new_height * 2;
            memset(out_payload, 0x3F, rv);
        }

    Вот что переизбыток мочи делает.

    codemonkey, 31 Декабря 2014

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

    +142

    1. 1
    return (guint)(((double)(((double)((SAMPLERATE_48KHZ)) / (((double)(fps_numerator) / (double)(fps_denominator)))))));

    Фу, блять.

    codemonkey, 29 Декабря 2014

    Комментарии (55)
  9. Си / Говнокод #17380

    +143

    1. 1
    sprintf(path, "/usr/local/something/something_else_%d_%d.uyvy%c", some_int, some_other_int, '\0');

    Мда-с.

    codemonkey, 28 Декабря 2014

    Комментарии (43)
  10. Си / Говнокод #17375

    +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
    date = j / 86400l;
    t = j - (date * 86400l);
    date += 731000ul;
    y = (4 * date - 1) / 146097;
    d = (4 * date - 1 - 146097 * y) / 4;
    date = (4 * d + 3) / 1461;
    d = (4 * d + 7 - 1461 * date) / 4;
    m = (5 * d - 3) / 153;
    d = (5 * d + 2 - 153 * m) / 5;
    y = 100 * y + date;
    if (m < 10) {
        m += 3;
    } else {
        m -= 9;
        y++;
    }

    Voodoo magic...

    bormand, 26 Декабря 2014

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