]> git.ipfire.org Git - thirdparty/libsolv.git/commitdiff
Make sure that we have a zero dir entry if repodata_str2dir returns zero
authorMichael Schroeder <mls@suse.de>
Wed, 1 Feb 2017 10:36:25 +0000 (11:36 +0100)
committerMichael Schroeder <mls@suse.de>
Wed, 1 Feb 2017 10:36:25 +0000 (11:36 +0100)
Should not make any difference, but just to be on the safe side...

src/repodata.c

index b611afce0e192932bc431ef553cdaeade83c86da..027c24c3ba09d34de4210181576da2135117bce3 100644 (file)
@@ -268,17 +268,13 @@ repodata_str2dir(Repodata *data, const char *dir, int create)
 #endif
   const char *dire;
 
-  parent = 0;
   if (!*dir)
-    return 0;
+    return data->dirpool.ndirs ? 0 : dirpool_add_dir(&data->dirpool, 0, 0, create);
   while (*dir == '/' && dir[1] == '/')
     dir++;
   if (*dir == '/' && !dir[1])
-    {
-      if (data->dirpool.ndirs)
-        return 1;
-      return dirpool_add_dir(&data->dirpool, 0, 1, create);
-    }
+    return data->dirpool.ndirs ? 1 : dirpool_add_dir(&data->dirpool, 0, 1, create);
+  parent = 0;
 #ifdef DIRCACHE_SIZE
   dirs = dir;
   if (data->dircache)