]> git.sur5r.net Git - bacula/bacula/commitdiff
Fix problem with BaseJob and Accurate FileSet options on client side
authorEric Bollengier <eric@eb.homelinux.org>
Thu, 20 May 2010 10:05:43 +0000 (12:05 +0200)
committerEric Bollengier <eric@eb.homelinux.org>
Thu, 27 May 2010 07:24:55 +0000 (09:24 +0200)
bacula/src/findlib/find.c

index 3cdd8e0826656a8a9ca27efd22d05c1a25e781df..f95c8ed861173c70830276000bb331f6074c8829 100644 (file)
@@ -191,9 +191,14 @@ find_files(JCR *jcr, FF_PKT *ff, int file_save(JCR *jcr, FF_PKT *ff_pkt, bool to
             ff->fstypes = fo->fstype;
             ff->drivetypes = fo->drivetype;
             bstrncat(ff->VerifyOpts, fo->VerifyOpts, sizeof(ff->VerifyOpts));
-            bstrncat(ff->AccurateOpts, fo->AccurateOpts, sizeof(ff->AccurateOpts));
-            bstrncat(ff->BaseJobOpts, fo->BaseJobOpts, sizeof(ff->BaseJobOpts));
+            if (fo->AccurateOpts[0]) {
+               bstrncpy(ff->AccurateOpts, fo->AccurateOpts, sizeof(ff->AccurateOpts));
+            }
+            if (fo->BaseJobOpts[0]) {
+               bstrncpy(ff->BaseJobOpts, fo->BaseJobOpts, sizeof(ff->BaseJobOpts));
+            }
          }
+         Dmsg3(50, "Verify=<%s> Accurate=<%s> BaseJob=<%s>\n", ff->VerifyOpts, ff->AccurateOpts, ff->BaseJobOpts);
          dlistString *node;
          foreach_dlist(node, &incexe->name_list) {
             char *fname = node->c_str();