From 5e80e165754064e9942fdf7bd3449a9f4fa047a0 Mon Sep 17 00:00:00 2001 From: David Robillard <d@drobilla.net> Date: Tue, 10 Jul 2018 19:10:06 +0200 Subject: Fix saving state when broken links are encountered --- NEWS | 3 ++- src/util.c | 5 +++++ wscript | 6 ++++++ 3 files changed, 13 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index 5f3f580..3d0b148 100644 --- a/NEWS +++ b/NEWS @@ -1,5 +1,6 @@ lilv (0.24.3) unstable; + * Fix saving state when broken links are encountered * Don't attempt to load remote or non-Turtle files * lv2apply: Use default values when they are not nan * lv2bench: Improve support for plugins with sequence ports @@ -9,7 +10,7 @@ lilv (0.24.3) unstable; * Install Python bindings when configured without tests (thanks Clement Skau) - -- David Robillard <d@drobilla.net> Thu, 23 Mar 2017 21:37:42 +0100 + -- David Robillard <d@drobilla.net> Tue, 10 Jul 2018 20:14:01 +0200 lilv (0.24.2) stable; diff --git a/src/util.c b/src/util.c index 9e791b4..4973181 100644 --- a/src/util.c +++ b/src/util.c @@ -272,7 +272,12 @@ lilv_dirname(const char* path) bool lilv_path_exists(const char* path, void* ignored) { +#ifdef HAVE_LSTAT + struct stat st; + return !lstat(path, &st); +#else return !access(path, F_OK); +#endif } char* diff --git a/wscript b/wscript index 0ff80f8..cb6a278 100644 --- a/wscript +++ b/wscript @@ -108,6 +108,12 @@ def configure(conf): if conf.env.DEST_OS == 'darwin' or conf.env.DEST_OS == 'win32': rt_lib = [] + autowaf.check_function(conf, 'c', 'lstat', + header_name = ['sys/stat.h'], + defines = defines, + define_name = 'HAVE_LSTAT', + mandatory = False) + autowaf.check_function(conf, 'c', 'flock', header_name = 'sys/file.h', defines = defines, -- cgit v1.2.1