code simplification
svn-id: r14905
This commit is contained in:
parent
647d8e8bcf
commit
c4065d0af9
1 changed files with 10 additions and 17 deletions
|
@ -1407,14 +1407,14 @@ void Gdi::decompressImageHE(uint8 *dst, int dstWidth, const Common::Rect *dstRec
|
|||
return;
|
||||
|
||||
while (1) {
|
||||
if (h < 0)
|
||||
break;
|
||||
--h;
|
||||
xoff = srcRect->left;
|
||||
off = READ_LE_UINT16(dataPtr);
|
||||
w = srcRect->right - srcRect->left + 1;
|
||||
dstPtrNext = dstWidth + dstPtr;
|
||||
dataPtrNext = off + 2 + dataPtr;
|
||||
if (h < 0)
|
||||
break;
|
||||
--h;
|
||||
dataPtr += 2;
|
||||
if (off == 0) goto dec_next;
|
||||
|
||||
|
@ -1466,30 +1466,23 @@ dec_sub1: dstPtr += code;
|
|||
if (databit) {
|
||||
++code;
|
||||
dec_sub2: w -= code;
|
||||
if (w >= 0) {
|
||||
memset(dstPtr, *dataPtr++, code);
|
||||
dstPtr += code;
|
||||
} else {
|
||||
if (w < 0) {
|
||||
code += w;
|
||||
}
|
||||
memset(dstPtr, *dataPtr++, code);
|
||||
dstPtr += code;
|
||||
}
|
||||
} else {
|
||||
++code;
|
||||
dec_sub3: w -= code;
|
||||
if (w >= 0) {
|
||||
memcpy(dstPtr, dataPtr, code);
|
||||
dstPtr += code;
|
||||
dataPtr += code;
|
||||
} else {
|
||||
if (w < 0) {
|
||||
code += w;
|
||||
}
|
||||
memcpy(dstPtr, dataPtr, code);
|
||||
dstPtr += code;
|
||||
dataPtr += code;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
dec_next:
|
||||
dataPtr = dataPtrNext;
|
||||
dstPtr = dstPtrNext;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue