diff options
Diffstat (limited to 'examples/hello.c')
| -rw-r--r-- | examples/hello.c | 17 |
1 files changed, 7 insertions, 10 deletions
diff --git a/examples/hello.c b/examples/hello.c index ded4235..1761e04 100644 --- a/examples/hello.c +++ b/examples/hello.c @@ -3,17 +3,16 @@ #include <stdio.h> -struct app { - bool failed; -}; +static bool failed; static enum yasl_app_result init(void *ud, struct yasl_display *display) { + (void)ud; struct yasl_window_spec spec = {.title = "Hello YASL", .size = {640, 480}}; struct yasl_surface *surface = yasl_surface_create_toplevel(display, &spec); if (!surface) { perror("yasl_surface_create_toplevel"); - ((struct app *)ud)->failed = true; + failed = true; return YASL_APP_QUIT; } yasl_surface_request_frame(surface); @@ -28,29 +27,27 @@ static enum yasl_app_result event(void *ud, const struct yasl_event *event) static void draw(void *ud, struct yasl_surface *surface, struct yasl_frame_context *frame) { - struct app *app = ud; + (void)ud; size_t count = (size_t)frame->size.x * frame->size.y; for (size_t i = 0; i < count; i++) frame->cpu.pixels[i] = 0xff306090; /* Opaque premultiplied ARGB. */ if (!yasl_frame_present_cpu(frame, NULL, 0)) { fprintf(stderr, "Could not present the draw target\n"); - app->failed = true; + failed = true; } - if (app->failed) yasl_surface_destroy(surface); + if (failed) yasl_surface_destroy(surface); } int main(void) { - struct app app = {0}; struct yasl_app_desc desc = { .app_id = "org.example.hello", - .userdata = &app, .init = init, .event = event, .frame = draw, }; int result = yasl_run(&desc); if (result) fprintf(stderr, "Could not run the application\n"); - return result || app.failed ? 1 : 0; + return result || failed ? 1 : 0; } |
