From be0c61018bfefcdf4ccbfc9db3148465f4eb9db2 Mon Sep 17 00:00:00 2001 From: Clownacy Date: Wed, 15 Apr 2020 22:01:27 +0100 Subject: [PATCH] Update SDL2 backend --- src/Backends/SDL2/Window-Software.cpp | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/src/Backends/SDL2/Window-Software.cpp b/src/Backends/SDL2/Window-Software.cpp index 9207fb73..d540a379 100644 --- a/src/Backends/SDL2/Window-Software.cpp +++ b/src/Backends/SDL2/Window-Software.cpp @@ -14,7 +14,7 @@ SDL_Window *window; static SDL_Surface *window_sdlsurface; static SDL_Surface *framebuffer_sdlsurface; -unsigned char* WindowBackend_Software_CreateWindow(const char *window_title, int screen_width, int screen_height, bool fullscreen, size_t *pitch) +bool WindowBackend_Software_CreateWindow(const char *window_title, int screen_width, int screen_height, bool fullscreen) { window = SDL_CreateWindow(window_title, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, screen_width, screen_height, 0); @@ -33,11 +33,9 @@ unsigned char* WindowBackend_Software_CreateWindow(const char *window_title, int if (framebuffer_sdlsurface != NULL) { - *pitch = framebuffer_sdlsurface->pitch; - Backend_PostWindowCreation(); - return (unsigned char*)framebuffer_sdlsurface->pixels; + return true; } else { @@ -58,7 +56,7 @@ unsigned char* WindowBackend_Software_CreateWindow(const char *window_title, int Backend_ShowMessageBox("Fatal error (software rendering backend)", error_message.c_str()); } - return NULL; + return false; } void WindowBackend_Software_DestroyWindow(void) @@ -67,6 +65,13 @@ void WindowBackend_Software_DestroyWindow(void) SDL_DestroyWindow(window); } +unsigned char* WindowBackend_Software_GetFramebuffer(size_t *pitch) +{ + *pitch = framebuffer_sdlsurface->pitch; + + return (unsigned char*)framebuffer_sdlsurface->pixels; +} + void WindowBackend_Software_Display(void) { if (SDL_BlitSurface(framebuffer_sdlsurface, NULL, window_sdlsurface, NULL) < 0)