You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Bert Huijben <be...@qqmail.nl> on 2012/05/04 17:35:49 UTC

RE: svn commit: r1334029 - /subversion/trunk/subversion/libsvn_client/ra.c


> -----Original Message-----
> From: cmpilato@apache.org [mailto:cmpilato@apache.org]
> Sent: vrijdag 4 mei 2012 17:22
> To: commits@subversion.apache.org
> Subject: svn commit: r1334029 - /subversion/trunk/subversion/libsvn_client/ra.c
> 
> Author: cmpilato
> Date: Fri May  4 15:21:48 2012
> New Revision: 1334029
> 
> URL: http://svn.apache.org/viewvc?rev=1334029&view=rev
> Log:
> Follow-up to r1333936, (hopefully) fixing the "commit disjoint working
> copies" case that some of the buildbots are puking on right now.
> 
> * subversion/libsvn_client/ra.c
>   (svn_client__open_ra_session_internal): base_dir_abspath might not
>     point to a working copy directory.  If that's the case, don't try
>     to calculate a working copy root path.
> 
> Modified:
>     subversion/trunk/subversion/libsvn_client/ra.c
> 
> Modified: subversion/trunk/subversion/libsvn_client/ra.c
> URL:
> http://svn.apache.org/viewvc/subversion/trunk/subversion/libsvn_client/ra.c?re
> v=1334029&r1=1334028&r2=1334029&view=diff
> =================================================================
> =============
> --- subversion/trunk/subversion/libsvn_client/ra.c (original)
> +++ subversion/trunk/subversion/libsvn_client/ra.c Fri May  4 15:21:48 2012
> @@ -337,9 +337,24 @@ svn_client__open_ra_session_internal(svn
>            SVN_ERR(err);
>          }
> 
> -      SVN_ERR(svn_wc__get_wc_root(&wcroot_abspath, ctx->wc_ctx,
> -                                  base_dir_abspath, pool, pool));
> -      cb->wcroot_abspath = wcroot_abspath;
> +      err = svn_wc__get_wc_root(&wcroot_abspath, ctx->wc_ctx,
> +                                base_dir_abspath, pool, pool);
> +      if (err)
> +        {
> +          if (err->apr_err == SVN_ERR_WC_NOT_WORKING_COPY)
> +            {
> +              svn_error_clear(err);
> +              err = SVN_NO_ERROR;
> +            }
> +          else
> +            {
> +              return err;
> +            }
> +        }
> +      else
> +        {
> +          cb->wcroot_abspath = wcroot_abspath;
> +        }

Note that it can still point to an unrelated parent working copy in this case where we are committing two separate working copies.

Maybe it should also use that helper macro that allows catching multiple working copy not found errors, you introduced at least a year ago.

	Bert

>      }
> 
>    /* If the caller allows for auto-following redirections, and the
> 



Re: svn commit: r1334029 - /subversion/trunk/subversion/libsvn_client/ra.c

Posted by "C. Michael Pilato" <cm...@collab.net>.
On 05/04/2012 11:35 AM, Bert Huijben wrote:
> 
> 
>> -----Original Message-----
>> From: cmpilato@apache.org [mailto:cmpilato@apache.org]
>> Sent: vrijdag 4 mei 2012 17:22
>> To: commits@subversion.apache.org
>> Subject: svn commit: r1334029 - /subversion/trunk/subversion/libsvn_client/ra.c
>>
>> Author: cmpilato
>> Date: Fri May  4 15:21:48 2012
>> New Revision: 1334029
>>
> Maybe it should also use that helper macro that allows catching multiple
> working copy not found errors, you introduced at least a year ago.

I wanted to use exactly that macro ... but I forgot what I called it.  :-(

-- 
C. Michael Pilato <cm...@collab.net>
CollabNet   <>   www.collab.net   <>   Enterprise Cloud Development