summaryrefslogtreecommitdiff
path: root/indra/llrender
diff options
context:
space:
mode:
authorTofu Linden <tofu.linden@lindenlab.com>2010-02-01 12:31:25 +0000
committerTofu Linden <tofu.linden@lindenlab.com>2010-02-01 12:31:25 +0000
commitef5cbcb0604cbffbb6c153a433411fedcf4e5831 (patch)
tree06ff2fa6856e43b37a78b2dfa64e56008ce91b5c /indra/llrender
parent7e0a3ce7359a01ffa7776d86f279409225c3c2a7 (diff)
parentd2c2d3f58e8d150c993708cbf13fc584a557ced7 (diff)
Merge from viewer2.
Diffstat (limited to 'indra/llrender')
-rw-r--r--indra/llrender/llimagegl.cpp12
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))
{