Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • uspace/lib/usb/src/hidparser.c

    r2f4b3a4 rd012590  
    12391239                                }
    12401240
    1241                                 size_t shift = offset%8;
     1241                                size_t shift=0;
     1242                                if(((offset+length)%8) > 0) {
     1243                                        shift = (8- ((offset+length)%8));
     1244                                }
    12421245
    12431246                                value = value << shift;                                                 
     
    12481251                                // je to ve dvou!! FIXME: melo by to umet delsi jak 2
    12491252
    1250                                 // konec prvniho -- dolni x bitu
     1253                                // konec prvniho
    12511254                                tmp_value = value;
     1255                                tmp_value = tmp_value >> (8 - (offset%8) - 1);
    12521256                                tmp_value = tmp_value & ((1 << (8-(offset%8)))-1);                             
    1253                                 tmp_value = tmp_value << (offset%8);
    12541257
    12551258                                buffer[offset/8] = buffer[offset/8] | tmp_value;
    12561259
    1257                                 // a ted druhej -- hornich length-x bitu
    1258                                 value = value >> (8 - (offset % 8));
    1259                                 value = value & ((1 << (length - (8 - (offset % 8)))) - 1);
     1260                                // a ted druhej
     1261                                value = value & ((1 << (length - (8 - (offset%8))))-1);
     1262                                value = value << (8 - (length - (8 - (offset%8))));
    12601263                               
    12611264                                buffer[(offset+length-1)/8] = buffer[(offset+length-1)/8] | value;
Note: See TracChangeset for help on using the changeset viewer.