#include <string.h> /* memset() */
+#include "amanda.h"
#include "vfs-device.h"
#include "fsusage.h"
-#include "amanda.h"
#include "util.h"
#include <regex.h>
return size;
case RESULT_NO_DATA:
pself->is_eof = TRUE;
- /* FALLTHROUGH */
+ pself->in_file = FALSE;
+ return -1;
default:
return -1;
}
}
}
+ /* record that we're at this filenum now */
+ DEVICE(self)->file = fileno;
+
base = g_strdup_printf("%05d.%s.%s.%d", fileno, ji->name, ji->disk,
ji->dumplevel);
sanitary_base = sanitise_filename(base);
}
self->volume_bytes += VFS_DEVICE_LABEL_SIZE;
+ /* make_new_file_name set pself->file for us, but the parent class will increment it, so decrement it now */
+ pself->file--;
if (parent_class->start_file) {
parent_class->start_file(pself, ji);
self->volume_limit = g_value_get_uint64(val);
return TRUE;
} else {
- if (parent_class->property_get) {
- return parent_class->property_get(pself, ID, val);
+ if (parent_class->property_set) {
+ return parent_class->property_set(pself, ID, val);
} else {
return FALSE;
}