summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--sol.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/sol.c b/sol.c
index bb73b84..1f791c2 100644
--- a/sol.c
+++ b/sol.c
@@ -343,6 +343,7 @@ static bool mouseMotion(SDL_MouseMotionEvent motion) {
 	return true;
 }
 
+static SDL_Window *window;
 static SDL_Renderer *render;
 static SDL_Texture *textures[Cards_Count];
 
@@ -356,9 +357,11 @@ static void renderList(const struct List *list) {
 	}
 }
 
-// TODO: Use SDL_ShowMessageBox.
-static void err(const char *prefix) {
-	fprintf(stderr, "%s: %s\n", prefix, SDL_GetError());
+static void err(const char *title) {
+	int error = SDL_ShowSimpleMessageBox(
+		SDL_MESSAGEBOX_ERROR, title, SDL_GetError(), window
+	);
+	if (error) fprintf(stderr, "%s\n", SDL_GetError());
 	exit(EXIT_FAILURE);
 }
 
@@ -366,7 +369,6 @@ int main(void) {
 	if (SDL_Init(SDL_INIT_VIDEO) < 0) err("SDL_Init");
 	atexit(SDL_Quit);
 
-	SDL_Window *window;
 	int error = SDL_CreateWindowAndRenderer(
 		WindowWidth, WindowHeight, SDL_WINDOW_ALLOW_HIGHDPI,
 		&window, &render