1 This patch fixes a bug in version 1.37.24 when the wrong tape is initially loaded, the
2 Storage daemon thinks that the desired tape is already loaded.
4 Apply the patch to 1.37.24 with:
7 patch -p0 <1.37.24-wrong-tape.patch
12 ===================================================================
13 RCS file: /cvsroot/bacula/bacula/src/version.h,v
14 retrieving revision 1.498
15 diff -u -r1.498 version.h
16 --- src/version.h 18 Jun 2005 13:37:19 -0000 1.498
17 +++ src/version.h 20 Jun 2005 08:09:56 -0000
21 -#define VERSION "1.37.24"
22 -#define BDATE "18 June 2005"
23 -#define LSMDATE "18Jun05"
24 +#define VERSION "1.37.25"
25 +#define BDATE "20 June 2005"
26 +#define LSMDATE "20Jun05"
30 Index: src/stored/mount.c
31 ===================================================================
32 RCS file: /cvsroot/bacula/bacula/src/stored/mount.c,v
33 retrieving revision 1.88
34 diff -u -r1.88 mount.c
35 --- src/stored/mount.c 18 Jun 2005 13:22:36 -0000 1.88
36 +++ src/stored/mount.c 20 Jun 2005 08:09:56 -0000
41 - Dmsg2(100, "dirVol=%s dirStat=%s\n", dcr->VolumeName,
42 + Dmsg2(100, "Want dirVol=%s dirStat=%s\n", dcr->VolumeName,
43 dcr->VolCatInfo.VolCatStatus);
45 * At this point, dev->VolCatInfo has what is in the drive, if anything,
47 memcpy(&VolCatInfo, &dcr->VolCatInfo, sizeof(VolCatInfo));
48 memcpy(&devVolCatInfo, &dev->VolCatInfo, sizeof(devVolCatInfo));
49 /* Check if this is a valid Volume in the pool */
50 + bstrncpy(dcr->VolumeName, dev->VolHdr.VolumeName, sizeof(dcr->VolumeName));
51 if (!dir_get_volume_info(dcr, GET_VOL_INFO_FOR_WRITE)) {
52 /* Restore desired volume name, note device info out of sync */
53 /* This gets the info regardless of the Pool */