[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

Re: r1547045 - Merge FSFS format 7 into /trunk - a typo

From: Julian Foad <julianfoad_at_btopenworld.com>
Date: Thu, 20 Feb 2014 13:17:48 +0000 (GMT)

Hi Stefan. Just a typo I noticed as I was looking through this code...

> Sent: Monday, 2 December 2013, 14:55
> Subject: svn commit: r1547045 [2/4] ...
[...]
> Modified: subversion/trunk/subversion/libsvn_fs_fs/pack.c
> ==============================================================================
[...]
> +typedef struct pack_context_t
> +{
> +† /* file system that we operate on */
> +† svn_fs_t *fs;
> +
> +† /* cancel function to invoke at regular intervals. May be NULL */
> +† svn_cancel_func_t cancel_func;
> +
> +† /* baton to pass to CANCEL_FUNC */
> +† void *cancel_baton;
> +
> +† /* first revision in the shard (and future pack file) */
> +† svn_revnum_t shard_rev;
> +
> +† /* first revision in the range to process (>= SHARD_REV) */
> +† svn_revnum_t start_rev;
> +
> +† /* first revision after the range to process (<= SHARD_END_REV) */
> +† svn_revnum_t end_rev;
> +
> +† /* first revision after the current shard */
> +† svn_revnum_t shard_end_rev;
> +
> +† /* log-to-phys proto index for the whole pack file */
> +† apr_file_t *proto_l2p_index;
> +
> +† /* phys-to-log proto index for the whole pack file */
> +† apr_file_t *proto_p2l_index;
> +
> +† /* full shard directory path (containing the unpacked revisions) */
> +† const char *shard_dir;
> +
> +† /* full packed shard directory path (containing the pack file + indexes) */
> +† const char *pack_file_dir;
> +
> +† /* full pack file path (including PACK_FILE_DIR) */
> +† const char *pack_file_path;
> +
> +† /* current write position (i.e. file length) in the pack file */
> +† apr_off_t pack_offset;
> +
> +† /* the pack file to ultimately write all data to */
> +† apr_file_t *pack_file;
> +
> +† /* array of svn_fs_fs__p2l_entry_t *, all referring to change lists.
> +†† * Will be filled in phase 2 and be cleared after each revision range. */
> +† apr_array_header_t *changes;
> +
> +† /* temp file receiving all change list items (referenced by CHANGES).
> +†† * Will be filled in phase 2 and be cleared after each revision range. */
> +† apr_file_t *changes_file;
> +
> +† /* array of svn_fs_fs__p2l_entry_t *, all referring to file properties.
> +†† * Will be filled in phase 2 and be cleared after each revision range. */
> +† apr_array_header_t *file_props;
> +
> +† /* temp file receiving all file prop items (referenced by FILE_PROPS).
> +†† * Will be filled in phase 2 and be cleared after each revision range.*/
> +† apr_file_t *file_props_file;
> +
> +† /* array of svn_fs_fs__p2l_entry_t *, all referring to directory properties.
> +†† * Will be filled in phase 2 and be cleared after each revision range. */
> +† apr_array_header_t *dir_props;
> +
> +† /* temp file receiving all directory prop items (referenced by DIR_PROPS).
> +†† * Will be filled in phase 2 and be cleared after each revision range.*/
> +† apr_file_t *dir_props_file;
> +
> +† /* container for all PATH members in PATH_ORDER. */
> +† svn_prefix_tree__t *paths;
> +
> +† /* array of path_order_t *.† Will be filled in phase 2 and be cleared
> +†† * after each revision range.† Sorted by PATH, NODE_ID. */
> +† apr_array_header_t *path_order;
> +
> +† /* array of reference_t *.† Will be filled in phase 2 and be cleared
> +†† * after each revision range.† It will be sorted by the TO members. */
> +† apr_array_header_t *references;
> +
> +† /* array of svn_fs_fs__p2l_entry_t*.† Will be filled in phase 2 and be
> +†† * cleared after each revision range.† During phase 3, we will set items
> +†† * to NULL that we already processed. */
> +† apr_array_header_t *reps;
> +
> +† /* array of int, marking for each revision, the which offset their items
> +†† * begin in REPS.† Will be filled in phase 2 and be cleared after
> +†† * each revision range. */
> +† apr_array_header_t *rev_offsets;
> +
> +† /* temp file receiving all items referenced by REPS_INFOS.

Here: REPS_INFOS is not mentioned anywhere else, except one further reference below...

> +†† * Will be filled in phase 2 and be cleared after each revision range.*/
> +† apr_file_t *reps_file;
> +
> +† /* pool used for temporary data structures that will be cleaned up when
> +†† * the next range of revisions is being processed */
> +† apr_pool_t *info_pool;
> +} pack_context_t;
>
[...]
> +/* Return the offset within CONTEXT->REPS_INFOS that corresponds to item

... here.

> + * ITEM_INDEX in† REVISION.
> + */
> +static int
> +get_item_array_index(pack_context_t *context,
> +† † † † † † † † † †† svn_revnum_t revision,
> +† † † † † † † † † †† apr_int64_t item_index)
> +{
> +† assert(revision >= context->start_rev);
> +† return (int)item_index + APR_ARRAY_IDX(context->rev_offsets,
> +† † † † † † † † † † † † † † † † † † † †† revision - context->start_rev,
> +† † † † † † † † † † † † † † † † † † † †† int);
> +}

- Julian
Received on 2014-02-20 14:21:19 CET

This is an archived mail posted to the Subversion Dev mailing list.

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.