- changed 13 files
Following up on r1101473 (and several other followups), resolve the regressionin our issue #1663 handling, by moving the special recorded informationhandling exception in the revert code itself.The revert code already stats the file, so we can just make it retrievethe information it needs directly. This also allows removing two optionaloutput arguments from svn_wc__internal_file_modified_p that were only usedby the revert code.* subversion/libsvn_wc/adm_ops.c (includes): Add private/svn_io_private.h (revert_restore): Extend our own stat to also retrieve size, mtime, read only and executable. Compare against the recorded information locally before calling svn_wc__internal_file_modified_p in the slow exact mode. Stop assuming that all symlinks should always be reverted on systems that don't support symlinks. (svn_wc__internal_remove_from_revision_control): Update caller.* subversion/libsvn_wc/cleanup.c (repair_timestamps): Update caller. Handle symlink as file.* subversion/libsvn_wc/copy.c (copy_versioned_file): Update caller.* subversion/libsvn_wc/diff_editor.c (file_diff): Update caller. (close_file): Update caller.* subversion/libsvn_wc/diff_local.c (file_diff): Update caller.* subversion/libsvn_wc/externals.c (close_file): Update caller.* subversion/libsvn_wc/questions.c (includes): Remove private/svn_io_private.h (svn_wc__internal_file_modified_p): Remove two arguments. Use svn_io_stat_dirent instead of svn_io_stat.* subversion/libsvn_wc/status.c (assemble_status): Update caller.* subversion/libsvn_wc/update_editor.c (merge_file): Update caller.* subversion/libsvn_wc/wc.h (svn_wc__internal_file_modified_p): Remove two arguments. Update documentation.* subversion/libsvn_wc/wc_db.c (has_local_mods): Update caller.* subversion/libsvn_wc/workqueue.c (process_commit_file_install): Update caller.* subversion/tests/cmdline/revert_tests.py (revert_reexpand_keyword): Remove XFail. Assert that the first part of the test succeeds, but that we don't revert the file after we fixed the recorded information.