/*
Bacula® - The Network Backup Solution
- Copyright (C) 2001-2008 Free Software Foundation Europe e.V.
+ Copyright (C) 2001-2009 Free Software Foundation Europe e.V.
The main author of Bacula is Kern Sibbald, with contributions from
many others, a complete list can be found in the file AUTHORS.
} else { /* must be file */
dir->fsend(_("3906 File device %s is always mounted.\n"),
dev->print_name());
+ pthread_cond_broadcast(&dev->wait_next_vol);
+ Dmsg1(100, "JobId=%u broadcast wait_device_release\n", (uint32_t)dcr->jcr->JobId);
+ pthread_cond_broadcast(&wait_device_release);
}
break;
DCR *dcr;
int action;
+ devname.check_size(dir->msglen+1);
+ volumename.check_size(dir->msglen+1);
+
if (sscanf(dir->msg, "action_on_purge %127s vol=%s action=%d",
devname.c_str(), volumename.c_str(), &action) != 3) {
dir->fsend(_("3916 Error scanning action_on_purge command\n"));
goto done;
}
unbash_spaces(volumename.c_str());
+ unbash_spaces(devname.c_str());
/* FIXME: autochanger, drive = 0? how can we avoid that? we only work on
* files