You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@subversion.apache.org by hw...@apache.org on 2010/03/16 02:38:07 UTC

svn commit: r923538 - in /subversion/branches/1.6.x: ./ CHANGES STATUS subversion/libsvn_ra_serf/commit.c

Author: hwright
Date: Tue Mar 16 01:38:07 2010
New Revision: 923538

URL: http://svn.apache.org/viewvc?rev=923538&view=rev
Log:
Reintegrate the 1.6.x-r905326 branch:

 * r905326
   Issue #3561: Teach ra_serf the same out-of-date fix we taught ra_neon.
   Justification:
     Feature parity with ra_neon is goodness and fixes real-world issue.
   Branch:
     ^/subversion/branches/1.6.x-r905326
   Votes:
     +1: jerenkrantz, kameshj, cmpilato

Modified:
    subversion/branches/1.6.x/   (props changed)
    subversion/branches/1.6.x/CHANGES   (props changed)
    subversion/branches/1.6.x/STATUS
    subversion/branches/1.6.x/subversion/libsvn_ra_serf/commit.c

Propchange: subversion/branches/1.6.x/
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Mar 16 01:38:07 2010
@@ -26,6 +26,7 @@
 /subversion/branches/1.6.x-r889840:889888-890974
 /subversion/branches/1.6.x-r896522:896528-897866
 /subversion/branches/1.6.x-r898963:899874-915098
+/subversion/branches/1.6.x-r905326:905545-923537
 /subversion/branches/bdb-reverse-deltas:868395-868874
 /subversion/branches/diff-callbacks3:866404-867106
 /subversion/branches/dont-save-plaintext-passwords-by-default:867073-867463
@@ -55,4 +56,4 @@
 /subversion/branches/tc_url_rev:870696-870828
 /subversion/branches/tree-conflicts:864636-869499
 /subversion/branches/tree-conflicts-notify:870271-870353
-/subversion/trunk:875976,875980-875981,876054-876056,876092,876175,876299,876306,876427,876440,876450,876507,876571,879093,879688,880274-880275,880370,880450,880474,880525-880526,880552,881905,884842,886164,886197,888715,888979,889081,889840,895514,895653,896522,898963,899826,899828,900797,904594
+/subversion/trunk:875976,875980-875981,876054-876056,876092,876175,876299,876306,876427,876440,876450,876507,876571,879093,879688,880274-880275,880370,880450,880474,880525-880526,880552,881905,884842,886164,886197,888715,888979,889081,889840,895514,895653,896522,898963,899826,899828,900797,904594,905326

Propchange: subversion/branches/1.6.x/CHANGES
------------------------------------------------------------------------------
--- svn:mergeinfo (original)
+++ svn:mergeinfo Tue Mar 16 01:38:07 2010
@@ -26,6 +26,7 @@
 /subversion/branches/1.6.x-r889840/CHANGES:889888-890974
 /subversion/branches/1.6.x-r896522/CHANGES:896528-897866
 /subversion/branches/1.6.x-r898963/CHANGES:899874-915098
+/subversion/branches/1.6.x-r905326/CHANGES:905545-923537
 /subversion/branches/bdb-reverse-deltas/CHANGES:868395-868874
 /subversion/branches/diff-callbacks3/CHANGES:866404-867106
 /subversion/branches/dont-save-plaintext-passwords-by-default/CHANGES:867073-867463
@@ -54,4 +55,4 @@
 /subversion/branches/tc_url_rev/CHANGES:870696-870828
 /subversion/branches/tree-conflicts/CHANGES:864636-869499
 /subversion/branches/tree-conflicts-notify/CHANGES:870271-870353
-/subversion/trunk/CHANGES:875962-901365,904594
+/subversion/trunk/CHANGES:875962-901365,904594,905326

Modified: subversion/branches/1.6.x/STATUS
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x/STATUS?rev=923538&r1=923537&r2=923538&view=diff
==============================================================================
--- subversion/branches/1.6.x/STATUS (original)
+++ subversion/branches/1.6.x/STATUS Tue Mar 16 01:38:07 2010
@@ -305,15 +305,6 @@ Approved changes:
    Votes:
      +1: pburba, rhuijben, cmpilato
 
- * r905326
-   Issue #3561: Teach ra_serf the same out-of-date fix we taught ra_neon.
-   Justification:
-     Feature parity with ra_neon is goodness and fixes real-world issue.
-   Branch:
-     ^/subversion/branches/1.6.x-r905326
-   Votes:
-     +1: jerenkrantz, kameshj, cmpilato
-
  * r922516
    Tell svn+ssh:// users how to get error messages from ssh when there
    is a connection problem.

Modified: subversion/branches/1.6.x/subversion/libsvn_ra_serf/commit.c
URL: http://svn.apache.org/viewvc/subversion/branches/1.6.x/subversion/libsvn_ra_serf/commit.c?rev=923538&r1=923537&r2=923538&view=diff
==============================================================================
--- subversion/branches/1.6.x/subversion/libsvn_ra_serf/commit.c (original)
+++ subversion/branches/1.6.x/subversion/libsvn_ra_serf/commit.c Tue Mar 16 01:38:07 2010
@@ -82,8 +82,8 @@ typedef struct {
   /* The checked-in root to base CHECKOUTs from */
   const char *checked_in_url;
 
-  /* The root baseline collection */
-  const char *baseline_url;
+  /* vcc url */
+  const char *vcc_url;  
 
   /* Deleted files - so we can detect delete+add (replace) ops. */
   apr_hash_t *deleted_entries;
@@ -248,6 +248,7 @@ create_checkout_body(void *baton,
 
   svn_ra_serf__add_close_tag_buckets(body_bkt, alloc, "D:href");
   svn_ra_serf__add_close_tag_buckets(body_bkt, alloc, "D:activity-set");
+  svn_ra_serf__add_tag_buckets(body_bkt, "D:apply-to-version", NULL, alloc);
   svn_ra_serf__add_close_tag_buckets(body_bkt, alloc, "D:checkout");
 
   return body_bkt;
@@ -376,7 +377,7 @@ checkout_dir(dir_context_t *dir)
    */
   if (!dir->parent_dir && !dir->commit->baseline)
     {
-      checkout_ctx->checkout_url = dir->commit->baseline_url;
+      checkout_ctx->checkout_url = dir->commit->vcc_url;
       dir->commit->baseline = checkout_ctx;
     }
   else
@@ -986,14 +987,11 @@ open_root(void *edit_baton,
 {
   commit_context_t *ctx = edit_baton;
   svn_ra_serf__options_context_t *opt_ctx;
-  svn_ra_serf__propfind_context_t *propfind_ctx;
   svn_ra_serf__handler_t *handler;
   svn_ra_serf__simple_request_context_t *mkact_ctx;
   proppatch_context_t *proppatch_ctx;
   dir_context_t *dir;
   const char *activity_str;
-  const char *vcc_url;
-  apr_hash_t *props;
   apr_hash_index_t *hi;
   svn_error_t *err;
 
@@ -1056,31 +1054,11 @@ open_root(void *edit_baton,
                                ctx->session->repos_url.hostinfo);
     }
 
-  SVN_ERR(svn_ra_serf__discover_root(&vcc_url, NULL,
+  SVN_ERR(svn_ra_serf__discover_root(&(ctx->vcc_url), NULL,
                                      ctx->session, ctx->conn,
                                      ctx->session->repos_url.path,
                                      ctx->pool));
 
-  /* Now go fetch our VCC and baseline so we can do a CHECKOUT. */
-  props = apr_hash_make(ctx->pool);
-  propfind_ctx = NULL;
-  svn_ra_serf__deliver_props(&propfind_ctx, props, ctx->session,
-                             ctx->conn, vcc_url, SVN_INVALID_REVNUM, "0",
-                             checked_in_props, FALSE, NULL, ctx->pool);
-
-  SVN_ERR(svn_ra_serf__wait_for_props(propfind_ctx, ctx->session, ctx->pool));
-
-  ctx->baseline_url = svn_ra_serf__get_ver_prop(props, vcc_url,
-                                                SVN_INVALID_REVNUM,
-                                                "DAV:", "checked-in");
-
-  if (!ctx->baseline_url)
-    {
-      return svn_error_create(SVN_ERR_RA_DAV_OPTIONS_REQ_FAILED, NULL,
-                              _("The OPTIONS response did not include the "
-                                "requested checked-in value"));
-    }
-
   dir = apr_pcalloc(dir_pool, sizeof(*dir));
 
   dir->pool = dir_pool;