- Dmsg1(100, "Walk attached jcrs. Volume=%s\n", dev->VolCatInfo.VolCatName);
- for (JCR *mjcr=NULL; (mjcr=next_attached_jcr(dev, mjcr)); ) {
- if (mjcr->JobId == 0) {
- continue; /* ignore console */
- }
- Dmsg1(100, "create JobMedia for Job %s\n", mjcr->Job);
- if (dev->state & ST_TAPE) {
- mjcr->EndBlock = dev->EndBlock;
- mjcr->EndFile = dev->EndFile;
- Dmsg2(200, "Fixup EndFile=%u EndBlock=%u\n", mjcr->EndFile, mjcr->EndBlock);
- } else {
- mjcr->EndBlock = (uint32_t)dev->file_addr;
- mjcr->EndFile = (uint32_t)(dev->file_addr >> 32);
- }
- if (!dir_create_jobmedia_record(mjcr)) {
- Jmsg(mjcr, M_ERROR, 0, _("Could not create JobMedia record for Volume=%s Job=%s\n"),
- dev->VolCatInfo.VolCatName, mjcr->Job);
- P(dev->mutex);
- unblock_device(dev);
- return 0;
- }
- mjcr->VolFirstIndex = 0; /* prevent writing jobmedia second time */
- }
-
- strcpy(dev->VolCatInfo.VolCatStatus, "Full");
- Dmsg2(200, "Call update_vol_info Stat=%s Vol=%s\n",
- dev->VolCatInfo.VolCatStatus, dev->VolCatInfo.VolCatName);
- if (!dir_update_volume_info(jcr, &dev->VolCatInfo, 0)) { /* send Volume info to Director */
- P(dev->mutex);