diff options
author | Ychebotarev ProductEngine <ychebotarev@productengine.com> | 2010-02-02 13:20:00 +0200 |
---|---|---|
committer | Ychebotarev ProductEngine <ychebotarev@productengine.com> | 2010-02-02 13:20:00 +0200 |
commit | fb174d1de39a2b551030da09e0dd9262b79278df (patch) | |
tree | e68c81bfbb13de6eff99436a6acb4b2179dd2012 /indra/llrender | |
parent | e6538ddbe95f0c297e67b9f5decabfcb6241ed2a (diff) | |
parent | 9b0518dd8e46dfe74eaa0f7622b1486dbde32b82 (diff) |
merge
--HG--
branch : product-engine
Diffstat (limited to 'indra/llrender')
-rw-r--r-- | indra/llrender/llimagegl.cpp | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/indra/llrender/llimagegl.cpp b/indra/llrender/llimagegl.cpp index 8bcc4723ae..36ac3ff119 100644 --- a/indra/llrender/llimagegl.cpp +++ b/indra/llrender/llimagegl.cpp @@ -1693,11 +1693,11 @@ void LLImageGL::updatePickMask(S32 width, S32 height, const U8* data_in) return; } - U32 pick_width = width/2; - U32 pick_height = height/2; + U32 pick_width = width/2 + 1; + U32 pick_height = height/2 + 1; - U32 size = llmax(pick_width, (U32) 1) * llmax(pick_height, (U32) 1); - size = size/8 + 1; + U32 size = pick_width * pick_height; + size = (size + 7) / 8; // pixelcount-to-bits mPickMask = new U8[size]; mPickMaskWidth = pick_width; mPickMaskHeight = pick_height; @@ -1745,8 +1745,8 @@ BOOL LLImageGL::getMask(const LLVector2 &tc) llassert(mPickMaskWidth > 0 && mPickMaskHeight > 0); - S32 x = (S32)(u * mPickMaskWidth); - S32 y = (S32)(v * mPickMaskHeight); + S32 x = llfloor(u * mPickMaskWidth); + S32 y = llfloor(v * mPickMaskHeight); if (LL_UNLIKELY(x >= mPickMaskWidth)) { |