mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 16:08:04 +02:00
st/nine: Use align_calloc instead of align_malloc
We are not sure exactly what needs to be 0 initialized, but we are missing some cases. 0 initialize all our current aligned allocation. Fixes Tree of Savior visual issues. Signed-off-by: Axel Davy <axel.davy@ens.fr>
This commit is contained in:
parent
54010cf8b6
commit
942778099e
5 changed files with 7 additions and 7 deletions
|
|
@ -125,7 +125,7 @@ NineBuffer9_ctor( struct NineBuffer9 *This,
|
|||
return hr;
|
||||
|
||||
if (Pool == D3DPOOL_MANAGED) {
|
||||
This->managed.data = align_malloc(
|
||||
This->managed.data = align_calloc(
|
||||
nine_format_get_level_alloc_size(This->base.info.format,
|
||||
Size, 1, 0), 32);
|
||||
if (!This->managed.data)
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ NineCubeTexture9_ctor( struct NineCubeTexture9 *This,
|
|||
face_size = nine_format_get_size_and_offsets(pf, level_offsets,
|
||||
EdgeLength, EdgeLength,
|
||||
info->last_level);
|
||||
This->managed_buffer = align_malloc(6 * face_size, 32);
|
||||
This->managed_buffer = align_calloc(6 * face_size, 32);
|
||||
if (!This->managed_buffer)
|
||||
return E_OUTOFMEMORY;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ NineSurface9_ctor( struct NineSurface9 *This,
|
|||
FALSE,
|
||||
TRUE);
|
||||
if (This->base.info.format != This->format_conversion) {
|
||||
This->data_conversion = align_malloc(
|
||||
This->data_conversion = align_calloc(
|
||||
nine_format_get_level_alloc_size(This->format_conversion,
|
||||
pDesc->Width,
|
||||
pDesc->Height,
|
||||
|
|
@ -160,7 +160,7 @@ NineSurface9_ctor( struct NineSurface9 *This,
|
|||
if ((allocate && pDesc->Pool != D3DPOOL_DEFAULT) || pDesc->Format == D3DFMT_NULL) {
|
||||
/* Ram buffer with no parent. Has to allocate the resource itself */
|
||||
assert(!user_buffer);
|
||||
This->data = align_malloc(
|
||||
This->data = align_calloc(
|
||||
nine_format_get_level_alloc_size(This->base.info.format,
|
||||
pDesc->Width,
|
||||
pDesc->Height,
|
||||
|
|
|
|||
|
|
@ -161,7 +161,7 @@ NineTexture9_ctor( struct NineTexture9 *This,
|
|||
* apps access sublevels of texture even if they locked only first
|
||||
* level) */
|
||||
level_offsets = alloca(sizeof(unsigned) * (info->last_level + 1));
|
||||
user_buffer = align_malloc(
|
||||
user_buffer = align_calloc(
|
||||
nine_format_get_size_and_offsets(pf, level_offsets,
|
||||
Width, Height,
|
||||
info->last_level), 32);
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ NineVolume9_AllocateData( struct NineVolume9 *This )
|
|||
DBG("(%p(This=%p),level=%u) Allocating 0x%x bytes of system memory.\n",
|
||||
This->base.container, This, This->level, size);
|
||||
|
||||
This->data = (uint8_t *)align_malloc(size, 32);
|
||||
This->data = (uint8_t *)align_calloc(size, 32);
|
||||
if (!This->data)
|
||||
return E_OUTOFMEMORY;
|
||||
return D3D_OK;
|
||||
|
|
@ -124,7 +124,7 @@ NineVolume9_ctor( struct NineVolume9 *This,
|
|||
This->layer_stride_conversion = util_format_get_2d_size(This->format_conversion,
|
||||
This->stride_conversion,
|
||||
pDesc->Height);
|
||||
This->data_conversion = align_malloc(This->layer_stride_conversion *
|
||||
This->data_conversion = align_calloc(This->layer_stride_conversion *
|
||||
This->desc.Depth, 32);
|
||||
if (!This->data_conversion)
|
||||
return E_OUTOFMEMORY;
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue