On 18 June 2010 15:52, Iain Arnell iarnell@gmail.com wrote:
- dsty + rsrc->bottom - rsrc->top > This->surface_desc.dwHeight)
- dsty + rsrc->bottom - rsrc->top > This->surface_desc.dwHeight ||
- (dstx | dsty) & (1<<(sizeof(DWORD)*8-1)) /* dstx or dsty negative */ )
That's not very pretty. This looks like it's just an integer overflow, so that's probably also how you should handle it.