diff options
author | Drew DeVault <sir@cmpwn.com> | 2017-08-15 12:21:58 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2017-08-15 12:21:58 -0400 |
commit | 27c13d621df7b38d04f8ffb3012aa977d1b9bb24 (patch) | |
tree | 4cf9539672adb77ddc6ac2110a6f4458b386e9a1 /examples | |
parent | f60b53c6e3c91aefa432ce75deb89560a8e5c0d7 (diff) | |
parent | 5cc7342606dbbd5e6932b39e6b1b5645164669bf (diff) |
Merge pull request #88 from 4e554c4c/alloc_crashing
Prevent alloc errors from crashing
Diffstat (limited to 'examples')
-rw-r--r-- | examples/compositor/main.c | 4 | ||||
-rw-r--r-- | examples/rotation.c | 9 | ||||
-rw-r--r-- | examples/tablet.c | 5 | ||||
-rw-r--r-- | examples/touch.c | 9 |
4 files changed, 27 insertions, 0 deletions
diff --git a/examples/compositor/main.c b/examples/compositor/main.c index 16851614..e2a3a481 100644 --- a/examples/compositor/main.c +++ b/examples/compositor/main.c @@ -73,6 +73,10 @@ int main() { compositor_init(&compositor); state.renderer = wlr_gles2_renderer_init(compositor.backend); + if (!state.renderer) { + wlr_log(L_ERROR, "Could not start compositor, OOM"); + exit(EXIT_FAILURE); + } wl_display_init_shm(compositor.display); wl_compositor_init(compositor.display, &state.compositor, state.renderer); wl_shell_init(compositor.display, &state.shell); diff --git a/examples/rotation.c b/examples/rotation.c index e4c3f87f..fc12558f 100644 --- a/examples/rotation.c +++ b/examples/rotation.c @@ -16,6 +16,7 @@ #include <wlr/backend.h> #include <wlr/backend/session.h> #include <wlr/types/wlr_keyboard.h> +#include <wlr/util/log.h> #include <math.h> #include "shared.h" #include "cat.h" @@ -205,7 +206,15 @@ int main(int argc, char *argv[]) { compositor_init(&compositor); state.renderer = wlr_gles2_renderer_init(compositor.backend); + if (!state.renderer) { + wlr_log(L_ERROR, "Could not start compositor, OOM"); + exit(EXIT_FAILURE); + } state.cat_texture = wlr_render_texture_init(state.renderer); + if (!state.cat_texture) { + wlr_log(L_ERROR, "Could not start compositor, OOM"); + exit(EXIT_FAILURE); + } wlr_texture_upload_pixels(state.cat_texture, WL_SHM_FORMAT_ABGR8888, cat_tex.width, cat_tex.width, cat_tex.height, cat_tex.pixel_data); diff --git a/examples/tablet.c b/examples/tablet.c index 0651efde..17653885 100644 --- a/examples/tablet.c +++ b/examples/tablet.c @@ -17,6 +17,7 @@ #include <wlr/types/wlr_output.h> #include <wlr/types/wlr_tablet_tool.h> #include <wlr/types/wlr_tablet_pad.h> +#include <wlr/util/log.h> #include <math.h> #include "shared.h" #include "cat.h" @@ -153,6 +154,10 @@ int main(int argc, char *argv[]) { compositor_init(&compositor); state.renderer = wlr_gles2_renderer_init(compositor.backend); + if (!state.renderer) { + wlr_log(L_ERROR, "Could not start compositor, OOM"); + exit(EXIT_FAILURE); + } compositor_run(&compositor); wlr_renderer_destroy(state.renderer); diff --git a/examples/touch.c b/examples/touch.c index 9dd2fe57..a32c76ba 100644 --- a/examples/touch.c +++ b/examples/touch.c @@ -17,6 +17,7 @@ #include <wlr/backend.h> #include <wlr/backend/session.h> #include <wlr/util/list.h> +#include <wlr/util/log.h> #include "shared.h" #include "cat.h" @@ -105,7 +106,15 @@ int main(int argc, char *argv[]) { compositor_init(&compositor); state.renderer = wlr_gles2_renderer_init(compositor.backend); + if (!state.renderer) { + wlr_log(L_ERROR, "Could not start compositor, OOM"); + exit(EXIT_FAILURE); + } state.cat_texture = wlr_render_texture_init(state.renderer); + if (!state.cat_texture) { + wlr_log(L_ERROR, "Could not start compositor, OOM"); + exit(EXIT_FAILURE); + } wlr_texture_upload_pixels(state.cat_texture, WL_SHM_FORMAT_ARGB8888, cat_tex.width, cat_tex.width, cat_tex.height, cat_tex.pixel_data); |