From 05356e23b17441d7f134b0ab5b4c8c89c483293f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sigrid=20Solveig=20Hafl=C3=ADnud=C3=B3ttir?= Date: Mon, 10 Jul 2023 15:35:35 +0000 Subject: [PATCH] capture_screen: check for errors --- src/uxnemu.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/uxnemu.c b/src/uxnemu.c index 19ca020..6438c28 100644 --- a/src/uxnemu.c +++ b/src/uxnemu.c @@ -289,13 +289,15 @@ capture_screen(void) int w, h; SDL_Surface *surface; SDL_GetRendererOutputSize(emu_renderer, &w, &h); - surface = SDL_CreateRGBSurface(0, w, h, 24, Rmask, Gmask, Bmask, 0); + if((surface = SDL_CreateRGBSurface(0, w, h, 24, Rmask, Gmask, Bmask, 0)) == NULL) + return; SDL_RenderReadPixels(emu_renderer, NULL, format, surface->pixels, surface->pitch); strftime(fname, sizeof(fname), "screenshot-%Y%m%d-%H%M%S.bmp", localtime(&t)); - SDL_SaveBMP(surface, fname); + if(SDL_SaveBMP(surface, fname) == 0){ + fprintf(stderr, "Saved %s\n", fname); + fflush(stderr); + } SDL_FreeSurface(surface); - fprintf(stderr, "Saved %s\n", fname); - fflush(stderr); } static void