From b03cd1ea5329a0e7e2e435de827108c7d00265b5 Mon Sep 17 00:00:00 2001 From: Jari Vetoniemi Date: Sat, 25 Oct 2014 16:39:39 +0300 Subject: Use BM_PLUGIN_VERSION for renderers. --- lib/library.c | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) (limited to 'lib/library.c') diff --git a/lib/library.c b/lib/library.c index c7f5e60..7fca099 100644 --- a/lib/library.c +++ b/lib/library.c @@ -34,24 +34,28 @@ load(const char *file, struct bm_renderer *renderer) const char* (*regfun)(struct render_api*); if (!(regfun = chckDlLoadSymbol(handle, "register_renderer", &error))) - goto fail; + goto load_fail; const char *name; if (!(name = regfun(&renderer->api))) goto fail; - if (strcmp(renderer->api.version, BM_VERSION)) - goto fail; + if (strcmp(renderer->api.version, BM_PLUGIN_VERSION)) + goto mismatch_fail; renderer->handle = handle; renderer->name = bm_strdup(name); renderer->file = bm_strdup(file); return true; +load_fail: + fprintf(stderr, "%s\n", error); + goto fail; +mismatch_fail: + fprintf(stderr, "%s: version mismatch (%s != %s)\n", name, renderer->api.version, BM_PLUGIN_VERSION); fail: if (handle) chckDlUnload(handle); - fprintf(stderr, "%s\n", error); return false; } -- cgit v1.2.3-70-g09d2