FreeBSD/contrib/subversion/subversion/libsvn_repos/dump.c
/* Verify revision REV in file system FS. */
Verify revision REV in file system FS.
Verify revision REV in file system FS .
static svn_error_t *
verify_one_revision(svn_fs_t *fs,
                    svn_revnum_t rev,
                    svn_repos_notify_func_t notify_func,
                    void *notify_baton,
                    svn_revnum_t start_rev,
                    svn_boolean_t check_normalization,
                    svn_cancel_func_t cancel_func,
                    void *cancel_baton,
                    apr_pool_t *scratch_pool)
{
  const svn_delta_editor_t *dump_editor;
  void *dump_edit_baton;
  svn_fs_root_t *to_root;
  apr_hash_t *props;
  const svn_delta_editor_t *cancel_editor;
  void *cancel_edit_baton;
  SVN_ERR(get_dump_editor(&dump_editor, &dump_edit_baton,
                          fs, rev, "",
                          svn_stream_empty(scratch_pool),
                          NULL, NULL,
                          verify_close_directory,
                          notify_func, notify_baton,
                          start_rev,
                          FALSE, TRUE, 
                          check_normalization,
                          scratch_pool));
  SVN_ERR(svn_delta_get_cancellation_editor(cancel_func, cancel_baton,
                                            dump_editor, dump_edit_baton,
                                            &cancel_editor,
                                            &cancel_edit_baton,
                                            scratch_pool));
  SVN_ERR(svn_fs_revision_root(&to_root, fs, rev, scratch_pool));
  SVN_ERR(svn_fs_verify_root(to_root, scratch_pool));
  SVN_ERR(svn_repos_replay2(to_root, "", SVN_INVALID_REVNUM, FALSE,
                            cancel_editor, cancel_edit_baton,
                            NULL, NULL, scratch_pool));
  SVN_ERR(cancel_editor->close_edit(cancel_edit_baton, scratch_pool));
  SVN_ERR(svn_fs_revision_proplist(&props, fs, rev, scratch_pool));
  return SVN_NO_ERROR;
}
static svn_error_t * verify_one_revision ( svn_fs_t * fs , svn_revnum_t rev , svn_repos_notify_func_t notify_func , void * notify_baton , svn_revnum_t start_rev , svn_boolean_t check_normalization , svn_cancel_func_t cancel_func , void * cancel_baton , apr_pool_t * scratch_pool ) { const svn_delta_editor_t * dump_editor ; void * dump_edit_baton ; svn_fs_root_t * to_root ; apr_hash_t * props ; const svn_delta_editor_t * cancel_editor ; void * cancel_edit_baton ; SVN_ERR ( get_dump_editor ( & dump_editor , & dump_edit_baton , fs , rev , " " , svn_stream_empty ( scratch_pool ) , NULL , NULL , verify_close_directory , notify_func , notify_baton , start_rev , FALSE , TRUE , check_normalization , scratch_pool ) ) ; SVN_ERR ( svn_delta_get_cancellation_editor ( cancel_func , cancel_baton , dump_editor , dump_edit_baton , & cancel_editor , & cancel_edit_baton , scratch_pool ) ) ; SVN_ERR ( svn_fs_revision_root ( & to_root , fs , rev , scratch_pool ) ) ; SVN_ERR ( svn_fs_verify_root ( to_root , scratch_pool ) ) ; SVN_ERR ( svn_repos_replay2 ( to_root , " " , SVN_INVALID_REVNUM , FALSE , cancel_editor , cancel_edit_baton , NULL , NULL , scratch_pool ) ) ; SVN_ERR ( cancel_editor -> close_edit ( cancel_edit_baton , scratch_pool ) ) ; SVN_ERR ( svn_fs_revision_proplist ( & props , fs , rev , scratch_pool ) ) ; return SVN_NO_ERROR ; }
Verify revision REV in file system FS.
Verify revision REV in file system FS .
/* Get cancellable dump editor, but with our close_directory handler.*/ /* use_deltas, verify */ /* While our editor close_edit implementation is a no-op, we still
     do this for completeness. */