OSDN Git Service

Fix bugs of parsing MLSD response.
[ffftp/ffftp.git] / filelist.c
index 33edb2c..8c1d4f9 100644 (file)
@@ -4850,8 +4850,8 @@ static int ResolvFileInfo(char *Str, int ListType, char *Fname, LONGLONG *Size,
                                char Value[FMAX_PATH + 1];\r
                                while(FindField2(Str, Tmp, ';', i, NO) == FFFTP_SUCCESS)\r
                                {\r
-                                       if(strncmp(Tmp, " ", 1) == 0)\r
-                                               strcpy(Fname, Tmp + 1);\r
+                                       if(i >= 1 && strncmp(Tmp, " ", 1) == 0)\r
+                                               strcpy(Fname, strstr(Str, "; ") + 2);\r
                                        else if(FindField2(Tmp, Name, '=', 0, NO) == FFFTP_SUCCESS && FindField2(Tmp, Value, '=', 1, NO) == FFFTP_SUCCESS)\r
                                        {\r
                                                if(_stricmp(Name, "type") == 0)\r