if (dev_can_write(dev)) {
               weof_dev(dev, 1);
            }
+           dev->VolCatInfo.VolCatFiles = dev->file;   /* set number of files */
            dev->VolCatInfo.VolCatJobs++;              /* increment number of jobs */
            /* Note! do volume update before close, which zaps VolCatInfo */
             Dmsg0(100, "dir_update_vol_info. Release0\n");
               jcr->VolCatInfo.VolCatName, jcr->Job);
         }
          Dmsg0(100, "dir_update_vol_info. Release1\n");
+        dev->VolCatInfo.VolCatFiles = dev->file;   /* set number of files */
         dev->VolCatInfo.VolCatJobs++;              /* increment number of jobs */
         dir_update_volume_info(jcr, dev, 0); /* send Volume info to Director */
       }
 
       }
       /* Don't do update after second EOF or file count will be wrong */
       Dmsg0(100, "dir_update_volume_info\n");
+      dev->VolCatInfo.VolCatFiles = dev->file;
       dir_update_volume_info(jcr, dev, 0);
       if (dev_cap(dev, CAP_TWOEOF) && weof_dev(dev, 1) != 0) { /* write eof */
          Jmsg(jcr, M_ERROR, 0, "%s", dev->errmsg);
            block->write_failed = true;
            dev->state |= (ST_EOF | ST_EOT | ST_WEOT);
             Dmsg0(100, "dir_update_volume_info\n");
+           dev->VolCatInfo.VolCatFiles = dev->file;
            dir_update_volume_info(jcr, dev, 0);
            return 0;   
         }
 
         /* Do bookkeeping to handle EOF just written */
          Dmsg0(100, "dir_update_volume_info\n");
+        dev->VolCatInfo.VolCatFiles = dev->file;
         dir_update_volume_info(jcr, dev, 0);
         if (!dir_create_jobmedia_record(jcr)) {
              Jmsg(jcr, M_ERROR, 0, _("Could not create JobMedia record for Volume=\"%s\" Job=%s\n"),
          Jmsg(jcr, M_ERROR, 0, "%s", dev->errmsg);
       }
       Dmsg0(100, "dir_update_volume_info\n");
+      dev->VolCatInfo.VolCatFiles = dev->file;
       dir_update_volume_info(jcr, dev, 0);
       if (dev_cap(dev, CAP_TWOEOF) && weof_dev(dev, 1) != 0) { /* end the tape */
          Jmsg(jcr, M_ERROR, 0, "%s", dev->errmsg);
 
    bstrncpy(dev->VolCatInfo.VolCatStatus, "Full", sizeof(dev->VolCatInfo.VolCatStatus));
    Dmsg2(100, "Call update_vol_info Stat=%s Vol=%s\n", 
       dev->VolCatInfo.VolCatStatus, dev->VolCatInfo.VolCatName);
+   dev->VolCatInfo.VolCatFiles = dev->file;   /* set number of files */
    dev->VolCatInfo.VolCatJobs++;             /* increment number of jobs */
    if (!dir_update_volume_info(jcr, dev, 0)) {   /* send Volume info to Director */
       P(dev->mutex);