diff options
-rw-r--r-- | ftpfs/dir.c | 20 |
1 files changed, 12 insertions, 8 deletions
diff --git a/ftpfs/dir.c b/ftpfs/dir.c index da5ddbe5..a9fea22f 100644 --- a/ftpfs/dir.c +++ b/ftpfs/dir.c @@ -384,14 +384,18 @@ refresh_dir (struct ftpfs_dir *dir, int update_stats, time_t timestamp, if (! err) err = update_ordered_name ("..", &dfs); - /* Refetch the directory from the server. */ - if (update_stats) - /* Fetch both names and stat info. */ - err = ftp_conn_get_stats (conn, dir->rmt_path, 1, - update_ordered_entry, &dfs); - else - /* Just fetch names. */ - err = ftp_conn_get_names (conn, dir->rmt_path, update_ordered_name, &dfs); + if (! err) + { + /* Refetch the directory from the server. */ + if (update_stats) + /* Fetch both names and stat info. */ + err = ftp_conn_get_stats (conn, dir->rmt_path, 1, + update_ordered_entry, &dfs); + else + /* Just fetch names. */ + err = ftp_conn_get_names (conn, dir->rmt_path, + update_ordered_name, &dfs); + } if (! err) /* GC any directory entries that weren't seen this time. */ |