As we are revving svn_client_revert() for 1.9 anyway, now is the time to give it a 'metadata_only' flag, like we have on copy and move.
This helps gui clients that should record changes after they occured, who don't want to revert local changes just to re-apply them using the Subversion function. (And thereby avoiding file lock challenges on Windows)
Note that some of the refactoring in this patch is preparation for a followup performance patch for reverting huge trees (like entire WC).
* subversion/bindings/javahl/native/org_apache_subversion_javahl_SVNClient.cpp (Java_org_apache_subversion_javahl_SVNClient_revert): Add another boolean.
* subversion/libsvn_wc/revert.c (revert_wc_data): Add prototype. (revert_restore): Add argument. Extract the non metadata work code to revert_wc_data. (revert_wc_data): New function. Placed below revert_restore to minimize changes to this file in this patch.