Re: [PATCH 05/13] Drive the debug editor
- From
Jonathan Nieder <jrnieder@gmail.com>
- Date
- Jul 7, 2010, 18:26 UTC
- Message-ID
- <20100707182631.GB2617@burratino>
- In-Reply-To
- <1278461693-3828-6-git-send-email-artagnon@gmail.com>
Ramkumar Ramachandra wrote:
Show 7 quoted lines
> +++ b/dump_editor.c > @@ -128,7 +128,7 @@ svn_error_t *get_dump_editor(const svn_delta_editor_t **editor, > de->close_directory = close_directory; > de->change_dir_prop = change_dir_prop; > de->change_file_prop = change_file_prop; > - de->apply_textdelta = apply_textdelta; > + /* de->apply_textdelta = apply_textdelta; */
Hmm...
[...]
Show 10 quoted lines
> +++ b/dumpr_util.h
> @@ -1,6 +1,11 @@
> #ifndef DUMPR_UTIL_H_
> #define DUMPR_UTIL_H_
>
> +struct replay_baton {
> + const svn_delta_editor_t *editor;
> + void *baton;
> +};
> +Context during svnsync-like replay ops:
- a diff replayer - its context object
Maybe "void *edit_baton" would be clearer.
> struct edit_baton {Which might involve renaming this to dump_edit_baton to avoid confusion.
> +++ b/svndumpr.c > @@ -8,10 +8,40 @@
[...]
Show 6 quoted lines
> +static svn_error_t *replay_revstart(svn_revnum_t revision, > + void *replay_baton, > + const svn_delta_editor_t **editor, > + void **edit_baton, > + apr_hash_t *rev_props, > + apr_pool_t *pool)
This function is called to acquire an editor to replay one revision.
> +{
> + /* Extract editor and editor_baton from the replay_baton and
> + set them so that the editor callbacks can use them */This comment just paraphrases the code. What in particular requires explanation here?
Show 6 quoted lines
> + struct replay_baton *rb = replay_baton; > + *editor = rb->editor; > + *edit_baton = rb->baton; > + > + return SVN_NO_ERROR; > +}
[...]
> @@ -47,6 +77,25 @@ svn_error_t *open_connection(const char *url)
>
> svn_error_t *replay_range(svn_revnum_t start_revision, svn_revnum_t end_revision)
> {[...]
> + SVN_ERR(svn_cmdline_printf(pool, SVN_REPOS_DUMPFILE_MAGIC_HEADER ": %d\n", > + SVN_REPOS_DUMPFILE_FORMAT_VERSION));
Did this sneak in from a later patch?
> + SVN_ERR(svn_ra_replay_range(session, start_revision, end_revision, > + 0, TRUE, replay_revstart, replay_revend, > + replay_baton, pool));
Makes sense.