You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by rh...@apache.org on 2011/05/11 04:16:23 UTC

svn commit: r1101728 - /subversion/trunk/subversion/libsvn_wc/adm_ops.c

Author: rhuijben
Date: Wed May 11 02:16:23 2011
New Revision: 1101728

URL: http://svn.apache.org/viewvc?rev=1101728&view=rev
Log:
* subversion/libsvn_wc/adm_ops.c
  (revert_restore): Ok, thinking this over at 4 AM. I don't think we are
    willing to accept the performance regression of r1101473 in svn revert -R.
    So I accept that we don't have to revert that are not strictly as checked
    out, but are still unmodified according to status.

    In most cases this reverts to the behavior of before r1101473, as before
    that we accepted recorded information as 'the file is not modified'. But
    I'm introducing the change now that when the file might be modified, we
    do the less strict comparison.

    The only way to have both the performance and the strict comparison would
    be to store another boolean with the recorded information to tell to what
    level we performed the recorded comparison.
    (And should we then cache the strict or the not strict?)

Modified:
    subversion/trunk/subversion/libsvn_wc/adm_ops.c

Modified: subversion/trunk/subversion/libsvn_wc/adm_ops.c
URL: http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_wc/adm_ops.c?rev=1101728&r1=1101727&r2=1101728&view=diff
==============================================================================
--- subversion/trunk/subversion/libsvn_wc/adm_ops.c (original)
+++ subversion/trunk/subversion/libsvn_wc/adm_ops.c Wed May 11 02:16:23 2011
@@ -1401,13 +1401,10 @@ revert_restore(svn_wc__db_t *db,
             }
           else
             {
-              /* This compares the file against a pristine version of the
-                 translated file. So it will return modified in all cases
-                 where delete+restore would install a different file */
               SVN_ERR(svn_wc__internal_file_modified_p(&modified, &executable,
                                                        &read_only,
                                                        db, local_abspath,
-                                                       TRUE, scratch_pool));
+                                                       FALSE, scratch_pool));
               if (modified)
                 {
                   SVN_ERR(svn_io_remove_file2(local_abspath, FALSE,