Improve initOutput error handling

Bail out on DRM error.
This commit is contained in:
Simon Ser 2020-05-12 15:07:52 +02:00
parent dced8a88da
commit 1e82803574
No known key found for this signature in database
GPG key ID: 0FDE7BE0E88F5E48
2 changed files with 11 additions and 6 deletions

View file

@ -111,7 +111,11 @@ int main(int argc, char **argv)
wlserver_init(argc, argv, g_bIsNested == true ); wlserver_init(argc, argv, g_bIsNested == true );
initOutput(); if ( initOutput() != 0 )
{
fprintf( stderr, "Failed to initialize output\n" );
return 1;
}
wlserver_run(); wlserver_run();
} }
@ -129,7 +133,7 @@ void startSteamCompMgr(void)
return; return;
} }
void initOutput(void) int initOutput(void)
{ {
if ( g_bIsNested == true ) if ( g_bIsNested == true )
{ {
@ -151,7 +155,7 @@ void initOutput(void)
if ( window == nullptr ) if ( window == nullptr )
{ {
fprintf(stderr, "Failed to create SDL window\n"); fprintf(stderr, "Failed to create SDL window\n");
exit(1); return -1;
} }
unsigned int extCount = 0; unsigned int extCount = 0;
@ -160,10 +164,11 @@ void initOutput(void)
g_vecSDLInstanceExts.resize( extCount ); g_vecSDLInstanceExts.resize( extCount );
SDL_Vulkan_GetInstanceExtensions( window, &extCount, g_vecSDLInstanceExts.data() ); SDL_Vulkan_GetInstanceExtensions( window, &extCount, g_vecSDLInstanceExts.data() );
return 0;
} }
else else
{ {
init_drm( &g_DRM, nullptr, nullptr, 0 ); return init_drm( &g_DRM, nullptr, nullptr, 0 );
} }
} }

View file

@ -9,7 +9,7 @@ extern SDL_Window *window;
#include "wlr/render/dmabuf.h" #include "wlr/render/dmabuf.h"
void initOutput(void); int initOutput(void);
void startSteamCompMgr(void); void startSteamCompMgr(void);