Browse Source

Ticket #4426: code clean up before 4.8.30 release.

(sftpfs_cb_open): minor optimization.

Signed-off-by: Andrew Borodin <aborodin@vmail.ru>
Andrew Borodin 2 years ago
parent
commit
328d27ccf1
1 changed files with 7 additions and 10 deletions
  1. 7 10
      src/vfs/sftpfs/sftpfs.c

+ 7 - 10
src/vfs/sftpfs/sftpfs.c

@@ -127,24 +127,21 @@ sftpfs_cb_open (const vfs_path_t * vpath, int flags, mode_t mode)
 
     if (path_inode == NULL)
     {
-        char *dirname, *name;
+        char *name;
         struct vfs_s_entry *ent;
         struct vfs_s_inode *dir;
 
-        dirname = g_path_get_dirname (path_super);
-        name = g_path_get_basename (path_super);
-        dir = vfs_s_find_inode (path_element->class, super, dirname, LINK_FOLLOW, FL_DIR);
+        name = g_path_get_dirname (path_super);
+        dir = vfs_s_find_inode (path_element->class, super, name, LINK_FOLLOW, FL_DIR);
+        g_free (name);
         if (dir == NULL)
-        {
-            g_free (dirname);
-            g_free (name);
             return NULL;
-        }
+
+        name = g_path_get_basename (path_super);
         ent = vfs_s_generate_entry (path_element->class, name, dir, 0755);
+        g_free (name);
         path_inode = ent->ino;
         vfs_s_insert_entry (path_element->class, dir, ent);
-        g_free (dirname);
-        g_free (name);
         is_changed = TRUE;
     }