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