diff --git a/src/osd/windows/d3dhlsl.c b/src/osd/windows/d3dhlsl.c index 0a3447354ea..625ad7f3400 100644 --- a/src/osd/windows/d3dhlsl.c +++ b/src/osd/windows/d3dhlsl.c @@ -2277,12 +2277,6 @@ void hlsl_info::delete_resources() registered_targets = 0; - if (shadow_texture != NULL) - { - global_free(shadow_texture); - shadow_texture = NULL; - } - if (shadow_bitmap != NULL) { global_free(shadow_bitmap); diff --git a/src/osd/windows/drawd3d.c b/src/osd/windows/drawd3d.c index 6f193be9974..41245e70906 100644 --- a/src/osd/windows/drawd3d.c +++ b/src/osd/windows/drawd3d.c @@ -892,15 +892,15 @@ static int device_create_resources(d3d_info *d3d) static void device_delete(d3d_info *d3d) { + // free our effects + d3d->hlsl->delete_resources(); + // delete the HLSL interface global_free(d3d->hlsl); // free our base resources device_delete_resources(d3d); - // free our effects - d3d->hlsl->delete_resources(); - // free the device itself if (d3d->device != NULL) (*d3dintf->device.release)(d3d->device);