]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/dird/restore.c
kes Fix Verify InitCatalog. The attributes were not pointing to the
[bacula/bacula] / bacula / src / dird / restore.c
index e3c5b5029020143abeaeab908badddcee6ba728c..6919e0105be9dbbfc061805248192837424d5768 100644 (file)
@@ -173,7 +173,7 @@ bool do_restore(JCR *jcr)
    }
 
    /* Send restore command */
-   char replace, *where, *cmd;
+   char replace, *where, *cmd=NULL;
    char empty = '\0';
 
    if (jcr->replace != 0) {
@@ -183,22 +183,26 @@ bool do_restore(JCR *jcr)
    } else {
       replace = REPLACE_ALWAYS;       /* always replace */
    }
-   if (jcr->where) {
+   
+   where = ∅                    /* default */
+
+   if (jcr->RegexWhere) {
+      where = jcr->RegexWhere;             /* override */
+      cmd = restorecmdR;
+   } else if (jcr->job->RegexWhere) {
+      where = jcr->job->RegexWhere; /* no override take from job */
+      cmd = restorecmdR;
+
+   } else if (jcr->where) {
       where = jcr->where;             /* override */
+      cmd = restorecmd;
    } else if (jcr->job->RestoreWhere) {
       where = jcr->job->RestoreWhere; /* no override take from job */
-   } else {
-      where = ∅                 /* None */
-   }
+      cmd = restorecmd;
+   } 
    
    jcr->prefix_links = jcr->job->PrefixLinks;
 
-   if (jcr->where_use_regexp) {
-      cmd = restorecmdR;
-   } else {
-      cmd = restorecmd;
-   }
-
    bash_spaces(where);
    bnet_fsend(fd, cmd, replace, jcr->prefix_links, where);
    unbash_spaces(where);
@@ -293,7 +297,7 @@ void restore_cleanup(JCR *jcr, int TermCode)
 "  Build OS:               %s %s %s\n"
 "  JobId:                  %d\n"
 "  Job:                    %s\n"
-"  Client:                 %s\n"
+"  Restore Client:         %s\n"
 "  Start time:             %s\n"
 "  End time:               %s\n"
 "  Files Expected:         %s\n"
@@ -308,7 +312,7 @@ void restore_cleanup(JCR *jcr, int TermCode)
         HOST_OS, DISTNAME, DISTVER,
         jcr->jr.JobId,
         jcr->jr.Job,
-        jcr->client->hdr.name,
+        jcr->client->name(),
         sdt,
         edt,
         edit_uint64_with_commas((uint64_t)jcr->ExpectedFiles, ec1),