int first -- a stopgap for compilers that reasonably complain about a
ternary that returns either a size_t or an int.
Really we should not write an int, but rather a larger type. Somebody
more familiar with the batch code should look at it.
+
+/**
+ * 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;
void write_batch_csum_info(int *flist_entry, int flist_count,
struct sum_struct *s)
{
size_t i;
extern int csum_length;
fdb_open = 1;
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(flist_entry, sizeof(int));
- write_batch_csums_file(s ? &s->count : &int_zero, sizeof(int));
+ int_count = s->count;
+ write_batch_csums_file(&int_count, int_count);
if (s) {
for (i = 0; i < s->count; i++) {
if (s) {
for (i = 0; i < s->count; i++) {