This patch resolves bug #955 where the director segfault when
where= option isn't specified anywhere.
Apply to version 2.2.4 (and perhaps older 2.2.x versions) with
cd <bacula-source>
patch -p0 <2.2.4-restore.patch
./configure (your options)
make
...
make install
Index: src/dird/restore.c
===================================================================
--- src/dird/restore.c (revision 5601)
+++ src/dird/restore.c (working copy)
@@ -173,7 +173,7 @@
}
/* Send restore command */
- char replace, *where, *cmd=NULL;
+ char replace, *where, *cmd;
char empty = '\0';
if (jcr->replace != 0) {
@@ -183,8 +183,6 @@
} else {
replace = REPLACE_ALWAYS; /* always replace */
}
-
- where = ∅ /* default */
if (jcr->RegexWhere) {
where = jcr->RegexWhere; /* override */
@@ -199,7 +197,11 @@
} else if (jcr->job->RestoreWhere) {
where = jcr->job->RestoreWhere; /* no override take from job */
cmd = restorecmd;
- }
+
+ } else { /* nothing was specified */
+ where = ∅ /* use default */
+ cmd = restorecmd;
+ }
jcr->prefix_links = jcr->job->PrefixLinks;
syntax highlighted by Code2HTML, v. 0.9.1