fdb_open = 1;
fdb_close = 0;
- batch_flist = (struct file_list *) malloc(sizeof(batch_flist[0]));
+ batch_flist = new(struct file_list);
if (!batch_flist) {
out_of_memory("create_flist_from_batch");
}
batch_flist->count = 0;
batch_flist->malloced = 1000;
- batch_flist->files =
- (struct file_struct **) malloc(sizeof(batch_flist->files[0]) *
- batch_flist->malloced);
+ batch_flist->files = new_array(struct file_struct *,
+ batch_flist->malloced);
if (!batch_flist->files) {
out_of_memory("create_flist_from_batch");
}
batch_flist->malloced += 1000;
else
batch_flist->malloced *= 2;
- batch_flist->files =
- (struct file_struct **) realloc(batch_flist->
- files,
- sizeof
- (batch_flist->
- files[0]) *
- batch_flist->
- malloced);
+ batch_flist->files
+ = realloc_array(batch_flist->files,
+ struct file_struct *,
+ batch_flist->malloced);
if (!batch_flist->files)
out_of_memory("create_flist_from_batch");
}
return bytes_read;
}
-unsigned char read_batch_flags()
+unsigned char read_batch_flags(void)
{
int flags;
char buff[256];
struct file_struct *file;
- file = (struct file_struct *) malloc(sizeof(*file));
+ file = new(struct file_struct);
if (!file)
out_of_memory("read_batch_flist_info");
memset((char *) file, 0, sizeof(*file));
close(fdb);
}
+
+/**
+ * Write csum info to batch file
+ *
+ * @todo This will break if s->count is ever larger than maxint. The
+ * batch code should probably be changed to consistently use the
+ * variable-length integer routines, which is probably a compatible
+ * change.
+ **/
void write_batch_csum_info(int *flist_entry, int flist_count,
struct sum_struct *s)
{
size_t i;
- size_t int_zero = 0;
+ int int_count;
extern int csum_length;
fdb_open = 1;
- /* Write csum info to batch file */
-
- /* FIXME: This will break if s->count is ever not exactly an int. */
write_batch_csums_file(flist_entry, sizeof(int));
- write_batch_csums_file(s ? &s->count : &int_zero, sizeof(int));
+ int_count = s ? (int) s->count : 0;
+ write_batch_csums_file(&int_count, sizeof int_count);
if (s) {
for (i = 0; i < s->count; i++) {