hplip/hplip-alloc.patch

38 lines
1.5 KiB
Diff

diff -up hplip-2.7.12/prnt/hpijs/compression.cpp.alloc hplip-2.7.12/prnt/hpijs/compression.cpp
--- hplip-2.7.12/prnt/hpijs/compression.cpp.alloc 2008-01-25 12:16:45.000000000 +0000
+++ hplip-2.7.12/prnt/hpijs/compression.cpp 2008-01-25 12:18:02.000000000 +0000
@@ -104,12 +104,12 @@ Mode9::Mode9 (SystemServices* pSys,unsig
if (constructor_error != NO_ERROR) // if error in base constructor
return;
- // In the worst case, compression expands data by 50%
- compressBuf = (BYTE*)pSS->AllocMem(RasterSize + RasterSize/2);
+ // In the worst case, compression expands data by 100%
+ compressBuf = (BYTE*)pSS->AllocMem(2 * RasterSize);
if (compressBuf == NULL)
constructor_error=ALLOCMEM_ERROR;
- memset(compressBuf, 0, RasterSize + RasterSize/2);
+ memset(compressBuf, 0, 2 * RasterSize);
memset(SeedRow,0,RasterSize);
ResetSeedRow = FALSE;
@@ -199,7 +199,7 @@ BOOL Mode9::Process(RASTERDATA* input)
return TRUE;
}
- memset(compressBuf, 0, inputsize + inputsize/2);
+ memset(compressBuf, 0, 2 * inputsize);
unsigned int originalsize=input->rastersize[myplane];
unsigned int size=input->rastersize[myplane];
@@ -571,7 +571,7 @@ Mode3::Mode3 (SystemServices* pSys, Prin
// Worst case is when two rows are completely different
// In that case, one command byte is added for every 8 bytes
// In the worst case, compression expands data by 50%
- compressBuf = (BYTE*)pSS->AllocMem(RasterSize + RasterSize/2);
+ compressBuf = (BYTE*)pSS->AllocMem(2 * RasterSize);
if (compressBuf == NULL)
constructor_error=ALLOCMEM_ERROR;