When no shrink is needed, two new hooks are added in this patch with the default value containing vc-shrink-buffer to preserve the current behavior that can be easily removed in user configuration by e.g.: (remove-hook 'vc-diff-finish-functions 'vc-shrink-buffer) (remove-hook 'vc-log-finish-functions 'vc-shrink-buffer)