fix divide-by-zero issues with progress when size == 0