@@ -220,7 +220,10 @@ BOOL wined3d_resource_allocate_sysmem(struct
wined3d_resource *resource)
SIZE_T align = RESOURCE_ALIGNMENT - 1 + sizeof(*p);
void *mem;
- if (!(mem = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY,
resource->size + align)))
+ UINT size = resource->size;
+ if (resource->width <= 128 && resource->height <= 128)
+ size *= 2;
+ if (!(mem = HeapAlloc(GetProcessHeap(), HEAP_ZERO_MEMORY, size +
align)))
return FALSE;
p = (void **)(((ULONG_PTR)mem + align) & ~(RESOURCE_ALIGNMENT - 1)) - 1;