Index: src/wx-console/wxbrestorepanel.cpp
===================================================================
RCS file: /cvsroot/bacula/bacula/src/wx-console/wxbrestorepanel.cpp,v
retrieving revision 1.40.8.1
diff -u -r1.40.8.1 wxbrestorepanel.cpp
--- src/wx-console/wxbrestorepanel.cpp	24 Mar 2005 14:52:55 -0000	1.40.8.1
+++ src/wx-console/wxbrestorepanel.cpp	5 May 2005 18:45:05 -0000
@@ -1469,23 +1469,29 @@
 wxString* wxbRestorePanel::ParseList(wxString line) {
    /* See ls_output in dird/ua_tree.c */
   
-   //drwxrwxrwx   1 root     root           0  2004-04-03 14:35:21  f:/tocd/NVSU 1.00.00/
-   //+ 10     +  ++ +   8  + +   8  ++   8  +  +      19         + *+ ->
-   //0           12 15       24      32        42                  62
-
+   //drwxrwxrwx  111 root     root           0  2004-04-03 14:35:21  f:/tocd/NVSU 1.00.00/
+   //+ 10     +  +i+ +   8  + +   8  ++   8  +  +      19         + *+ ->
+   //0           12  i+15     i+24    i+32      i+42                i+62
+ 
+   int i;
+   
    if (line.Length() < 63)
       return NULL;
 
    wxString* ret = new wxString[9];
 
    ret[0] = line.Mid(0, 10).Trim();
-   ret[1] = line.Mid(12, 2).Trim();
-   ret[2] = line.Mid(15, 8).Trim();
-   ret[3] = line.Mid(24, 8).Trim();
-   ret[4] = line.Mid(32, 8).Trim();
-   ret[5] = line.Mid(42, 19).Trim();
-   ret[6] = line.Mid(62, 1);
-   ret[7] = line.Mid(63).Trim();
+   
+   /* Column 1 has a variable width  */
+   i = line.find(' ', 14) - 14;
+   ret[1] = line.Mid(12, 2+i).Trim();
+      
+   ret[2] = line.Mid(15+i, 8).Trim();
+   ret[3] = line.Mid(24+i, 8).Trim();
+   ret[4] = line.Mid(32+i, 8).Trim();
+   ret[5] = line.Mid(42+i, 19).Trim();
+   ret[6] = line.Mid(62+i, 1);
+   ret[7] = line.Mid(63+i).Trim();
 
    if (ret[6] == " ") ret[6] = "";
 


syntax highlighted by Code2HTML, v. 0.9.1