Skip to content

Commit

Permalink
direct3d: Use D3DPOOL_DEFAULT for vertex buffers after all, release c…
Browse files Browse the repository at this point in the history
…orrectly.

Fixes Bugzilla #4679.
Fixes Bugzilla #4537.
  • Loading branch information
icculus committed Jun 21, 2019
1 parent 51555a8 commit 31bb95f
Showing 1 changed file with 9 additions and 2 deletions.
11 changes: 9 additions & 2 deletions src/render/direct3d/SDL_render_d3d.c
Expand Up @@ -1223,7 +1223,7 @@ D3D_RunCommandQueue(SDL_Renderer * renderer, SDL_RenderCommand *cmd, void *verti
IDirect3DVertexBuffer9_Release(vbo);
}

if (FAILED(IDirect3DDevice9_CreateVertexBuffer(data->device, (UINT) vertsize, usage, fvf, D3DPOOL_MANAGED, &vbo, NULL))) {
if (FAILED(IDirect3DDevice9_CreateVertexBuffer(data->device, (UINT) vertsize, usage, fvf, D3DPOOL_DEFAULT, &vbo, NULL))) {
vbo = NULL;
}
data->vertexBuffers[vboidx] = vbo;
Expand Down Expand Up @@ -1550,6 +1550,13 @@ D3D_DestroyRenderer(SDL_Renderer * renderer)
data->shaders[i] = NULL;
}
}
/* Release all vertex buffers */
for (i = 0; i < SDL_arraysize(data->vertexBuffers); ++i) {
if (data->vertexBuffers[i]) {
IDirect3DVertexBuffer9_Release(data->vertexBuffers[i]);
}
data->vertexBuffers[i] = NULL;
}
if (data->device) {
IDirect3DDevice9_Release(data->device);
data->device = NULL;
Expand Down Expand Up @@ -1591,7 +1598,7 @@ D3D_Reset(SDL_Renderer * renderer)
}
}

/* Release all vertex buffers */
/* Release all vertex buffers */
for (i = 0; i < SDL_arraysize(data->vertexBuffers); ++i) {
if (data->vertexBuffers[i]) {
IDirect3DVertexBuffer9_Release(data->vertexBuffers[i]);
Expand Down

0 comments on commit 31bb95f

Please sign in to comment.