]> git.ipfire.org Git - thirdparty/bacula.git/commitdiff
Fix #7286 DIR segfault when doing a "dir" command in a restore
authorAlain Spineux <alain@baculasystems.com>
Wed, 3 Mar 2021 10:54:16 +0000 (11:54 +0100)
committerEric Bollengier <eric@baculasystems.com>
Fri, 26 Mar 2021 13:57:58 +0000 (14:57 +0100)
- this initialize "ua->jcr->db" as it is done few lines below at the first
  initialization
- the ticket shows that ua->db was used successfully by other functions
  few line before the crash while ua->jcr->db == NULL.
- it could be a fix (I cannot shows that)
- it could be a new bug (I don't see how)
- it is probably an improvement as the first and the next calls will
  return a consistent "ua"

bacula/src/dird/ua_cmds.c

index 2d2d69d65041f34ce6176d8e0a93fab368f3a2a5..805cdc74dbcf5beebe435de92c40d3f64727b23f 100644 (file)
@@ -2722,10 +2722,10 @@ bool open_db(UAContext *ua)
     * private or the shared link
     */
    if (ua->force_mult_db_connections) {
-      ua->db = ua->private_db;
+      ua->jcr->db = ua->db = ua->private_db;
 
    } else {
-      ua->db = ua->shared_db;
+      ua->jcr->db = ua->db = ua->shared_db;
    }
 
    if (ua->db) {