Skip to content

Commit

Permalink
xrDXT: fix 64-bit pointer issue
Browse files Browse the repository at this point in the history
  • Loading branch information
abramcumner authored and Xottab-DUTY committed May 13, 2018
1 parent 6674821 commit 440cc85
Showing 1 changed file with 6 additions and 6 deletions.
12 changes: 6 additions & 6 deletions src/utils/xrDXT/Image_DXTC.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -541,14 +541,14 @@ void Image_DXTC::DecompressDXT1()
for (int j = 0; j < yblocks; j++)
{
// 8 bytes per block
pBlock = (DXTColBlock*)((DWORD)m_pCompBytes + j * xblocks * 8);
pBlock = (DXTColBlock*)((DWORD_PTR)m_pCompBytes + j * xblocks * 8);
for (int i = 0; i < xblocks; i++, pBlock++)
{
// inline func:
GetColorBlockColors(pBlock, &col_0, &col_1, &col_2, &col_3, wrd);
// now decode the color block into the bitmap bits
// inline func:
pImPos = (DWORD*)((DWORD)pBase + i * 16 + (j * 4) * m_nWidth * 4);
pImPos = (DWORD*)((DWORD_PTR)pBase + i * 16 + (j * 4) * m_nWidth * 4);
DecodeColorBlock(pImPos, pBlock, m_nWidth, (DWORD*)&col_0, (DWORD*)&col_1, (DWORD*)&col_2, (DWORD*)&col_3);
if (false) // Set to RGB test pattern
{
Expand Down Expand Up @@ -593,7 +593,7 @@ void Image_DXTC::DecompressDXT3()
{
// 8 bytes per block
// 1 block for alpha, 1 block for color
pBlock = (DXTColBlock*)((DWORD)m_pCompBytes + j * xblocks * 16);
pBlock = (DXTColBlock*)((DWORD_PTR)m_pCompBytes + j * xblocks * 16);
for (int i = 0; i < xblocks; i++, pBlock++)
{
// inline
Expand All @@ -604,7 +604,7 @@ void Image_DXTC::DecompressDXT3()
pBlock++;
GetColorBlockColors(pBlock, &col_0, &col_1, &col_2, &col_3, wrd);
// Decode the color block into the bitmap bits inline func:
pImPos = (DWORD*)((DWORD)pBase + i * 16 + (j * 4) * m_nWidth * 4);
pImPos = (DWORD*)((DWORD_PTR)pBase + i * 16 + (j * 4) * m_nWidth * 4);
DecodeColorBlock(pImPos, pBlock, m_nWidth, (DWORD*)&col_0, (DWORD*)&col_1, (DWORD*)&col_2, (DWORD*)&col_3);
// Overwrite the previous alpha bits with the alpha block
// info
Expand Down Expand Up @@ -641,7 +641,7 @@ void Image_DXTC::DecompressDXT5()
{
// 8 bytes per block
// 1 block for alpha, 1 block for color
DXTColBlock* pBlock = (DXTColBlock*)((DWORD)m_pCompBytes + j * xblocks * 16);
DXTColBlock* pBlock = (DXTColBlock*)((DWORD_PTR)m_pCompBytes + j * xblocks * 16);
for (int i = 0; i < xblocks; i++, pBlock++)
{
// inline
Expand All @@ -653,7 +653,7 @@ void Image_DXTC::DecompressDXT5()
// //TRACE("pBlock: 0x%.8x\n", pBlock );
GetColorBlockColors(pBlock, &col_0, &col_1, &col_2, &col_3, wrd);
// Decode the color block into the bitmap bits inline func:
pImPos = (DWORD*)((DWORD)pBase + i * 16 + (j * 4) * m_nWidth * 4);
pImPos = (DWORD*)((DWORD_PTR)pBase + i * 16 + (j * 4) * m_nWidth * 4);
DecodeColorBlock(pImPos, pBlock, m_nWidth, (DWORD*)&col_0, (DWORD*)&col_1, (DWORD*)&col_2, (DWORD*)&col_3);
// Overwrite the previous alpha bits with the alpha block info
DecodeAlpha3BitLinear(pImPos, pAlphaBlock, m_nWidth, alphazero);
Expand Down

0 comments on commit 440cc85

Please sign in to comment.