Hi,

I had a chance to look into the code subversion/libsvn_ra_neon/commit.c.
There was a portion of code(commit.c:485) in  (checkout_resource)
function that I could not understand in which case it will get executed.
Please let me know when this part of code will get exercised. 

<snip>

  if (err == NULL && allow_404 && code == 404)
    {
      locn = NULL;

      /* re-fetch, forcing a query to the server */
      SVN_ERR(get_version_url(cc, NULL, rsrc, TRUE, pool));

      /* do it again, but don't allow a 404 this time */
      err = do_checkout(cc, rsrc->vsn_url, FALSE, token,
                        is_vcc, &code, &locn, pool);
    }

<snip>


Here the duplicate of the resource is getting passed during a call to
checkout_resource in few places.

For example, in (commit_open_file), file_rsrc that is the duplicate of
rsrc is passed to 'checkout_resource'. If the above mentioned portion of
code(allow_404 &&code=404) is exercised in this case, Will it cause any
problem since we are not duplicating the *name of resource* in
'dup_resource'.

<snip>
file->rsrc = dup_resource(rsrc, file_pool);
.
.
SVN_ERR(checkout_resource(parent->cc, file->rsrc, TRUE,
                            file->token, FALSE, workpool));
</snip>

Thanks in Advance!!

Thanks & Regards,
Vijayaguru

Reply via email to