From 184a9517a619c0052aabd8ad6ab00ed0d2607e97 Mon Sep 17 00:00:00 2001 From: sanine Date: Mon, 13 Mar 2023 12:29:18 -0500 Subject: fix null pointer errors --- src/glfw/setup.h | 4 ++++ src/glfw/window.c | 8 +++++++- 2 files changed, 11 insertions(+), 1 deletion(-) (limited to 'src/glfw') diff --git a/src/glfw/setup.h b/src/glfw/setup.h index b867627..3e5b482 100644 --- a/src/glfw/setup.h +++ b/src/glfw/setup.h @@ -416,6 +416,10 @@ H_GLFW_FUNCTIONS X("PLATFORM_ERROR", GLFW_PLATFORM_ERROR) \ X("FORMAT_UNAVAILABLE", GLFW_FORMAT_UNAVAILABLE) \ X("NO_WINDOW_CONTEXT", GLFW_NO_WINDOW_CONTEXT) \ + X("PRESS", GLFW_PRESS) \ + X("RELEASE", GLFW_RELEASE) \ + X("REPEAT", GLFW_REPEAT) \ + #endif diff --git a/src/glfw/window.c b/src/glfw/window.c index 0199fb0..5922dde 100644 --- a/src/glfw/window.c +++ b/src/glfw/window.c @@ -88,6 +88,12 @@ int glfwCreateWindow_bind(lua_State *L) GLFWwindow ** window = create_window(L); *window = glfwCreateWindow(width, height, title, *monitor, *share); + if (*window == NULL) { + int code; + const char *err; + code = glfwGetError(&err); + return luaL_error(L, "failed to create window: %s [code %d]", err, code); + } configure_window(window); return 1; } @@ -113,7 +119,7 @@ int glfwWindowShouldClose_bind(lua_State *L) int glfwSetWindowShouldClose_bind(lua_State *L) { GLFWwindow ** window = luaL_checkudata(L, 1, glfw_window_tname); - int value = luaL_checkinteger(L, 2); + int value = lua_toboolean(L, 2); glfwSetWindowShouldClose(*window, value); return 0; } -- cgit v1.2.1