diff -r 144400e4630d src/render/direct3d/SDL_render_d3d.c --- a/src/render/direct3d/SDL_render_d3d.c Sun Nov 18 19:28:20 2018 +0300 +++ b/src/render/direct3d/SDL_render_d3d.c Mon Nov 19 20:48:35 2018 +0100 @@ -1566,6 +1566,15 @@ } } + /* Release all vertex buffers */ + int i; + for (i = 0; i < SDL_arraysize(data->vertexBuffers); ++i) { + if (data->vertexBuffers[i]) { + IDirect3DVertexBuffer9_Release(data->vertexBuffers[i]); + } + data->vertexBuffers[i] = NULL; + } + result = IDirect3DDevice9_Reset(data->device, &data->pparams); if (FAILED(result)) { if (result == D3DERR_DEVICELOST) {