From a9d4bccde03dd6d29338366bf6900b7094e63ad4 Mon Sep 17 00:00:00 2001 From: David Robillard Date: Wed, 26 Jul 2006 17:46:54 +0000 Subject: Use getenv("HOME") instead of hardcoded "~" git-svn-id: http://svn.drobilla.net/lad/libslv2@102 a436a847-0d15-0410-975c-d299462d15a1 --- TODO | 4 ++++ src/pluginlist.c | 20 ++++++++++++-------- 2 files changed, 16 insertions(+), 8 deletions(-) create mode 100644 TODO diff --git a/TODO b/TODO new file mode 100644 index 0000000..38e4834 --- /dev/null +++ b/TODO @@ -0,0 +1,4 @@ +- Rewrite all the realloc nightmare stuff + + drobilla: slv2_port_get_default_value checks if a property is returned,and creates the result. But it calls slv2_property_free() even if the property == 0 !! + drobilla: (which causes a segfault) diff --git a/src/pluginlist.c b/src/pluginlist.c index cd83629..e379c7a 100644 --- a/src/pluginlist.c +++ b/src/pluginlist.c @@ -55,16 +55,20 @@ slv2_list_load_all(SLV2List list) { assert(list != NULL); - char* slv2_path = getenv("LV2_PATH"); - - if (!slv2_path) { - slv2_path = "~/.lv2:/usr/local/lib/lv2:usr/lib/lv2"; + const char* slv2_path = getenv("LV2_PATH"); + + if (slv2_path) { + slv2_list_load_path(list, slv2_path); + } else { + const char* const home = getenv("HOME"); + const char* const suffix = "/.lv2:/usr/local/lib/lv2:usr/lib/lv2"; + slv2_path = strjoin(home, suffix); - printf("$LV2_PATH is unset. Using default path %s\n", - slv2_path); - } + printf("$LV2_PATH is unset. Using default path %s\n", slv2_path); + slv2_list_load_path(list, slv2_path); - slv2_list_load_path(list, slv2_path); + free(slv2_path); + } } -- cgit v1.2.1