(svn r26201) -Fix: unscaling by a negative value is the same as scaling by a positive number

pull/155/head
rubidium 11 years ago
parent 3d40beeb69
commit 98b320614a

@ -162,7 +162,7 @@ uint GetMaxSpriteID()
static bool ResizeSpriteIn(SpriteLoader::Sprite *sprite, ZoomLevel src, ZoomLevel tgt) static bool ResizeSpriteIn(SpriteLoader::Sprite *sprite, ZoomLevel src, ZoomLevel tgt)
{ {
uint8 scaled_1 = UnScaleByZoom(1, (ZoomLevel)(tgt - src)); uint8 scaled_1 = ScaleByZoom(1, (ZoomLevel)(src - tgt));
/* Check for possible memory overflow. */ /* Check for possible memory overflow. */
if (sprite[src].width * scaled_1 > UINT16_MAX || sprite[src].height * scaled_1 > UINT16_MAX) return false; if (sprite[src].width * scaled_1 > UINT16_MAX || sprite[src].height * scaled_1 > UINT16_MAX) return false;

Loading…
Cancel
Save