}
+void show_flist_stats(void)
+{
+ /* Nothing yet */
+}
+
+
static struct string_area *string_area_new(int size)
{
struct string_area *a;
static void flist_expand(struct file_list *flist)
{
if (flist->count >= flist->malloced) {
+ size_t new_bytes;
+ void *new_ptr;
+
if (flist->malloced < 1000)
flist->malloced += 1000;
else
flist->malloced *= 2;
- flist->files = (struct file_struct **)
- realloc(flist->files,
- sizeof(flist->files[0]) * flist->malloced);
+
+ new_bytes = sizeof(flist->files[0]) * flist->malloced;
+
+ new_ptr = realloc(flist->files, new_bytes);
+
+ if (verbose >= 2) {
+ rprintf(FINFO, RSYNC_NAME ": expand file_list to %.0f bytes, did%s move\n",
+ (double) new_bytes,
+ (new_ptr == flist->files) ? " not" : "");
+ }
+
+ flist->files = (struct file_struct **) new_ptr;
+
if (!flist->files)
out_of_memory("flist_expand");
}
for (flags = read_byte(f); flags; flags = read_byte(f)) {
+ int i = flist->count;
+
flist_expand(flist);
receive_file_entry(&flist->files[i], flags, f);