Index: src/stored/block.c
===================================================================
RCS file: /cvsroot/bacula/bacula/src/stored/block.c,v
retrieving revision 1.116.2.3
diff -u -u -b -r1.116.2.3 block.c
--- src/stored/block.c 24 Mar 2006 16:35:23 -0000 1.116.2.3
+++ src/stored/block.c 12 Jun 2006 16:19:27 -0000
@@ -9,7 +9,7 @@
*
*/
/*
- Copyright (C) 2001-2005 Kern Sibbald
+ Copyright (C) 2001-2006 Kern Sibbald
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
@@ -910,13 +910,12 @@
Dmsg3(100, "Tests : %d %d %d\n", (dev->VolCatInfo.VolCatParts > 0),
((dev->file_addr-dev->part_start) == dev->part_size),
(dev->part <= dev->VolCatInfo.VolCatParts));*/
- /* Check for part file end */
- if ((dev->num_parts > 0) &&
- ((dev->file_addr-dev->part_start) == dev->part_size) &&
- (dev->part < dev->num_parts)) {
+ /* Check for DVD part file end */
+ if (dev->at_eof() && dev->is_dvd() && dev->num_parts > 0 &&
+ dev->part < dev->num_parts) {
if (dvd_open_next_part(dcr) < 0) {
- Jmsg2(dcr->jcr, M_FATAL, 0, _("Unable to open device next part %s: ERR=%s\n"),
- dev->print_name(), strerror_dev(dev));
+ Jmsg3(dcr->jcr, M_FATAL, 0, _("Unable to open device part=%d %s: ERR=%s\n"),
+ dev->part, dev->print_name(), strerror_dev(dev));
dev->dev_errno = EIO;
return false;
}
syntax highlighted by Code2HTML, v. 0.9.1