X-Git-Url: https://git.ucc.asn.au/?a=blobdiff_plain;ds=sidebyside;f=Usermode%2FLibraries%2Flibimage_sif.so_src%2Fmain.c;h=180668a56fe34b52632507164f4aeb2e435d53ee;hb=67be203adb74a30134d277c346ca2f82e0fe0850;hp=014a316c25a86ba2fb1a39fe4b569c88d3a4c950;hpb=0d7ef9be9848d9599b0fb81fd77bf1bc77264508;p=tpg%2Facess2.git diff --git a/Usermode/Libraries/libimage_sif.so_src/main.c b/Usermode/Libraries/libimage_sif.so_src/main.c index 014a316c..180668a5 100644 --- a/Usermode/Libraries/libimage_sif.so_src/main.c +++ b/Usermode/Libraries/libimage_sif.so_src/main.c @@ -150,33 +150,22 @@ tImage *Image_SIF_Parse(void *Buffer, size_t Size) { uint8_t len, val; if( fileOfs + 1 > Size ) return ret; - len = *(uint8_t*)Buffer+fileOfs; fileOfs += 1; + len = ((uint8_t*)Buffer)[fileOfs++]; if(len & 0x80) { len &= 0x7F; while(len--) { if( fileOfs + 1 > Size ) return ret; - val = *(uint8_t*)Buffer+fileOfs; fileOfs += 1; - if(i == 0) - ret->Data[ofs] = val; - else - ret->Data[ofs] |= val; + val = ((uint8_t*)Buffer)[fileOfs++]; + ret->Data[ofs] = val; ofs += sampleSize; } } else { if( fileOfs + 1 > Size ) return ret; - val = *(uint8_t*)Buffer+fileOfs; fileOfs += 1; - if(i == 0) { - while(len--) { - ret->Data[ofs] = val; - ofs += sampleSize; - } - } - else { - while(len--) { - ret->Data[ofs] |= val; - ofs += sampleSize; - } + val = ((uint8_t*)Buffer)[fileOfs++]; + while(len--) { + ret->Data[ofs] = val; + ofs += sampleSize; } } }