Kaydet (Commit) a9d2302d authored tarafından Caolán McNamara's avatar Caolán McNamara

Related: tdf#87967 valgrind reported invalid reads on 1 pixel wide bitmap

Change-Id: Iddd18280c780d8b9f5e11fcc2af80749917192c4
üst 23172fc9
......@@ -811,7 +811,7 @@ public:
const long nMapY = mpMapY[nY];
const long nMapFY = mpMapYOffset[nY];
pLine0 = pSource->GetScanline(nMapY);
pLine0 = pSource->GetScanline(nMapY);
// tdf#95481 guard nMapY + 1 to be within bounds
pLine1 = (nMapY + 1 < pSource->Height()) ? pSource->GetScanline(nMapY + 1) : pLine0;
......@@ -827,7 +827,7 @@ public:
const long nMapFX = mpMapXOffset[nX];
pColorSample1 = pLine0 + 3L * nMapX;
pColorSample2 = pColorSample1 + 3L;
pColorSample2 = (nMapX + 1 < pSource->Width()) ? pColorSample1 + 3L : pColorSample1;
nColor1Line1 = (static_cast<long>(*pColorSample1) << 7) + nMapFX * (static_cast<long>(*pColorSample2) - *pColorSample1);
pColorSample1++;
......@@ -839,7 +839,7 @@ public:
nColor3Line1 = (static_cast<long>(*pColorSample1) << 7) + nMapFX * (static_cast<long>(*pColorSample2) - *pColorSample1);
pColorSample1 = pLine1 + 3L * nMapX;
pColorSample2 = pColorSample1 + 3L;
pColorSample2 = (nMapX + 1 < pSource->Width()) ? pColorSample1 + 3L : pColorSample1;
nColor1Line2 = (static_cast<long>(*pColorSample1) << 7) + nMapFX * (static_cast<long>(*pColorSample2) - *pColorSample1);
pColorSample1++;
......@@ -851,11 +851,11 @@ public:
nColor3Line2 = (static_cast<long>(*pColorSample1) << 7) + nMapFX * (static_cast<long>(*pColorSample2) - *pColorSample1);
pColorSample1 = pLineAlpha0 + nMapX;
pColorSample2 = pColorSample1 + 1L;
pColorSample2 = (nMapX + 1 < pSourceAlpha->Width()) ? pColorSample1 + 1L : pColorSample1;
nAlphaLine1 = (static_cast<long>(*pColorSample1) << 7) + nMapFX * (static_cast<long>(*pColorSample2) - *pColorSample1);
pColorSample1 = pLineAlpha1 + nMapX;
pColorSample2 = pColorSample1 + 1L;
pColorSample2 = (nMapX + 1 < pSourceAlpha->Width()) ? pColorSample1 + 1L : pColorSample1;
nAlphaLine2 = (static_cast<long>(*pColorSample1) << 7) + nMapFX * (static_cast<long>(*pColorSample2) - *pColorSample1);
nColor1 = (nColor1Line1 + nMapFY * ((nColor1Line2 >> 7) - (nColor1Line1 >> 7))) >> 7;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment