]> git.sur5r.net Git - bacula/bacula/blobdiff - bacula/src/dird/job.c
- Always look for slot for label command.
[bacula/bacula] / bacula / src / dird / job.c
index faef49445ae0c4371c159e54b0b61582fe8fd43e..ecb0d7bf345ecab6789e7047255868e14e13880b 100644 (file)
@@ -634,32 +634,34 @@ bool get_or_create_client_record(JCR *jcr)
    return true;
 }
 
-bool get_or_create_fileset_record(JCR *jcr, FILESET_DBR *fsr)
+bool get_or_create_fileset_record(JCR *jcr)
 {
+   FILESET_DBR fsr;
    /*
     * Get or Create FileSet record
     */
-   memset(fsr, 0, sizeof(FILESET_DBR));
-   bstrncpy(fsr->FileSet, jcr->fileset->hdr.name, sizeof(fsr->FileSet));
+   memset(&fsr, 0, sizeof(FILESET_DBR));
+   bstrncpy(fsr.FileSet, jcr->fileset->hdr.name, sizeof(fsr.FileSet));
    if (jcr->fileset->have_MD5) {
       struct MD5Context md5c;
       unsigned char signature[16];
       memcpy(&md5c, &jcr->fileset->md5c, sizeof(md5c));
       MD5Final(signature, &md5c);
-      bin_to_base64(fsr->MD5, (char *)signature, 16); /* encode 16 bytes */
-      bstrncpy(jcr->fileset->MD5, fsr->MD5, sizeof(jcr->fileset->MD5));
+      bin_to_base64(fsr.MD5, (char *)signature, 16); /* encode 16 bytes */
+      bstrncpy(jcr->fileset->MD5, fsr.MD5, sizeof(jcr->fileset->MD5));
    } else {
       Jmsg(jcr, M_WARNING, 0, _("FileSet MD5 signature not found.\n"));
    }
    if (!jcr->fileset->ignore_fs_changes ||
-       !db_get_fileset_record(jcr, jcr->db, fsr)) {
-      if (!db_create_fileset_record(jcr, jcr->db, fsr)) {
+       !db_get_fileset_record(jcr, jcr->db, &fsr)) {
+      if (!db_create_fileset_record(jcr, jcr->db, &fsr)) {
          Jmsg(jcr, M_ERROR, 0, _("Could not create FileSet \"%s\" record. ERR=%s\n"),
-            fsr->FileSet, db_strerror(jcr->db));
+            fsr.FileSet, db_strerror(jcr->db));
          return false;
       }
    }
-   jcr->jr.FileSetId = fsr->FileSetId;
+   jcr->jr.FileSetId = fsr.FileSetId;
+   bstrncpy(jcr->FSCreateTime, fsr.cCreateTime, sizeof(jcr->FSCreateTime));
    Dmsg2(119, "Created FileSet %s record %u\n", jcr->fileset->hdr.name,
       jcr->jr.FileSetId);
    return true;