projects
/
debian
/
amanda
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Imported Upstream version 3.3.1
[debian/amanda]
/
recover-src
/
display_commands.c
diff --git
a/recover-src/display_commands.c
b/recover-src/display_commands.c
index 92a9e7d20dcf023998a49abb24efdebb23baf5a4..d18b868e5b35f83267a9647a59ec7e8c38ec4083 100644
(file)
--- a/
recover-src/display_commands.c
+++ b/
recover-src/display_commands.c
@@
-33,6
+33,8
@@
#include "amrecover.h"
#include "util.h"
#include "amrecover.h"
#include "util.h"
+gboolean translate_mode = TRUE;
+
DIR_ITEM *get_dir_list(void);
DIR_ITEM *get_next_dir_item(DIR_ITEM *this);
DIR_ITEM *get_dir_list(void);
DIR_ITEM *get_next_dir_item(DIR_ITEM *this);
@@
-83,6
+85,7
@@
free_dir_item(
amfree(item->date);
amfree(item->tape);
amfree(item->path);
amfree(item->date);
amfree(item->tape);
amfree(item->path);
+ amfree(item->tpath);
amfree(item);
item = next;
}
amfree(item);
item = next;
}
@@
-110,6
+113,7
@@
add_dir_list_item(
next->tape = stralloc(tape);
next->fileno = fileno;
next->path = stralloc(path);
next->tape = stralloc(tape);
next->fileno = fileno;
next->path = stralloc(path);
+ next->tpath = translate_octal(g_strdup(path));
next->next = dir_list;
dir_list = next;
next->next = dir_list;
dir_list = next;
@@
-230,10
+234,11
@@
suck_dir_list_from_server(void)
continue;
}
tape = s - 1;
continue;
}
tape = s - 1;
- skip_
non_whitespace
(s, ch);
+ skip_
quoted_string
(s, ch);
tape_undo = s - 1;
tape_undo_ch = *tape_undo;
*tape_undo = '\0';
tape_undo = s - 1;
tape_undo_ch = *tape_undo;
*tape_undo = '\0';
+ tape = unquote_string(tape);
if(am_has_feature(indexsrv_features, fe_amindexd_fileno_in_OLSD)) {
long long fileno_ = (long long)0;
if(am_has_feature(indexsrv_features, fe_amindexd_fileno_in_OLSD)) {
long long fileno_ = (long long)0;
@@
-263,6
+268,7
@@
suck_dir_list_from_server(void)
dir = stralloc(disk_path_slash_dot);
}
add_dir_list_item(date, level, tape, fileno, dir);
dir = stralloc(disk_path_slash_dot);
}
add_dir_list_item(date, level, tape, fileno, dir);
+ amfree(tape);
amfree(dir);
}
amfree(disk_path_slash_dot);
amfree(dir);
}
amfree(disk_path_slash_dot);
@@
-311,11
+317,11
@@
list_directory(void)
fp = stdout;
}
amfree(pager_command);
fp = stdout;
}
amfree(pager_command);
- i = strlen(disk_path);
+ i = strlen(disk_
t
path);
if (i != 1)
if (i != 1)
- i++; /* so disk_path != "/" */
+ i++; /* so disk_
t
path != "/" */
for (item = get_dir_list(); item != NULL; item=get_next_dir_item(item)) {
for (item = get_dir_list(); item != NULL; item=get_next_dir_item(item)) {
- quoted = quote_string(item->path + i);
+ quoted = quote_string(item->
t
path + i);
g_fprintf(fp, "%s %s\n", item->date, quoted);
amfree(quoted);
}
g_fprintf(fp, "%s %s\n", item->date, quoted);
amfree(quoted);
}