]> code.delx.au - pulseaudio/commitdiff
core-util: Fix logic of pa_make_path_absolute()
authorAndy Shevchenko <ext-andriy.shevchenko@nokia.com>
Fri, 28 Aug 2009 12:16:53 +0000 (15:16 +0300)
committerLennart Poettering <lennart@poettering.net>
Fri, 28 Aug 2009 15:12:26 +0000 (17:12 +0200)
Make it works as described in commentary (when fn is NULL, pa_assert(fn) could
break logic).

src/pulsecore/core-util.c

index 1c8c6780e2e8ff52910b33545f87ab37478b6bac..678230197860546eba10e0dc8f5a8c8e3f5a9d17 100644 (file)
@@ -1877,17 +1877,17 @@ char *pa_make_path_absolute(const char *p) {
 static char *get_path(const char *fn, pa_bool_t prependmid, pa_bool_t rt) {
     char *rtp;
 
-    if (pa_is_path_absolute(fn))
-        return pa_xstrdup(fn);
-
     rtp = rt ? pa_get_runtime_dir() : pa_get_state_dir();
 
-    if (!rtp)
-        return NULL;
-
     if (fn) {
         char *r;
 
+        if (pa_is_path_absolute(fn))
+            return pa_xstrdup(fn);
+
+        if (!rtp)
+            return NULL;
+
         if (prependmid) {
             char *mid;