Andrew's git
/
gitweb.git
/ diff
summary
|
log
|
commit
| diff |
tree
commit
grep
author
committer
pickaxe
?
re
pack-*.c: remove the_repository references
author
Nguyễn Thái Ngọc Duy
<pclouds@gmail.com>
Sat, 10 Nov 2018 05:49:08 +0000
(06:49 +0100)
committer
Junio C Hamano
<gitster@pobox.com>
Mon, 12 Nov 2018 05:50:06 +0000
(14:50 +0900)
Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
builtin/pack-objects.c
patch
|
blob
|
history
pack-bitmap-write.c
patch
|
blob
|
history
pack-bitmap.c
patch
|
blob
|
history
pack-bitmap.h
patch
|
blob
|
history
pack-objects.c
patch
|
blob
|
history
pack-objects.h
patch
|
blob
|
history
raw
|
patch
|
inline
| side by side (parent:
94e1082
)
diff --git
a/builtin/pack-objects.c
b/builtin/pack-objects.c
index 7812c2b1f32ef688b365de3b33e564a8bf502b49..8abfb69e2db06afd3eb4a3862e92b4f716f71ae5 100644
(file)
--- a/
builtin/pack-objects.c
+++ b/
builtin/pack-objects.c
@@
-3481,7
+3481,7
@@
int cmd_pack_objects(int argc, const char **argv, const char *prefix)
}
}
}
}
- prepare_packing_data(&to_pack);
+ prepare_packing_data(
the_repository,
&to_pack);
if (progress)
progress_state = start_progress(_("Enumerating objects"), 0);
if (progress)
progress_state = start_progress(_("Enumerating objects"), 0);
diff --git
a/pack-bitmap-write.c
b/pack-bitmap-write.c
index 9d1b951697e9552b80a502fd587e43b615369635..5566e94abed9f0838d4c1d999ee8e90159000256 100644
(file)
--- a/
pack-bitmap-write.c
+++ b/
pack-bitmap-write.c
@@
-77,7
+77,7
@@
void bitmap_writer_build_type_index(struct packing_data *to_pack,
break;
default:
break;
default:
- real_type = oid_object_info(t
he_repository
,
+ real_type = oid_object_info(t
o_pack->repo
,
&entry->idx.oid, NULL);
break;
}
&entry->idx.oid, NULL);
break;
}
@@
-262,7
+262,7
@@
void bitmap_writer_build(struct packing_data *to_pack)
if (writer.show_progress)
writer.progress = start_progress("Building bitmaps", writer.selected_nr);
if (writer.show_progress)
writer.progress = start_progress("Building bitmaps", writer.selected_nr);
- repo_init_revisions(t
he_repository
, &revs, NULL);
+ repo_init_revisions(t
o_pack->repo
, &revs, NULL);
revs.tag_objects = 1;
revs.tree_objects = 1;
revs.blob_objects = 1;
revs.tag_objects = 1;
revs.tree_objects = 1;
revs.blob_objects = 1;
@@
-363,7
+363,7
@@
static int date_compare(const void *_a, const void *_b)
void bitmap_writer_reuse_bitmaps(struct packing_data *to_pack)
{
struct bitmap_index *bitmap_git;
void bitmap_writer_reuse_bitmaps(struct packing_data *to_pack)
{
struct bitmap_index *bitmap_git;
- if (!(bitmap_git = prepare_bitmap_git()))
+ if (!(bitmap_git = prepare_bitmap_git(
to_pack->repo
)))
return;
writer.reused = kh_init_sha1();
return;
writer.reused = kh_init_sha1();
diff --git
a/pack-bitmap.c
b/pack-bitmap.c
index 5848cc93aa254b8549f4c569882b5d781984ca47..4695aaf6b4eda41ec2479a326ddbe7a0bed065ab 100644
(file)
--- a/
pack-bitmap.c
+++ b/
pack-bitmap.c
@@
-328,14
+328,15
@@
static int load_pack_bitmap(struct bitmap_index *bitmap_git)
return -1;
}
return -1;
}
-static int open_pack_bitmap(struct bitmap_index *bitmap_git)
+static int open_pack_bitmap(struct repository *r,
+ struct bitmap_index *bitmap_git)
{
struct packed_git *p;
int ret = -1;
assert(!bitmap_git->map);
{
struct packed_git *p;
int ret = -1;
assert(!bitmap_git->map);
- for (p = get_all_packs(
the_repository
); p; p = p->next) {
+ for (p = get_all_packs(
r
); p; p = p->next) {
if (open_pack_bitmap_1(bitmap_git, p) == 0)
ret = 0;
}
if (open_pack_bitmap_1(bitmap_git, p) == 0)
ret = 0;
}
@@
-343,11
+344,11
@@
static int open_pack_bitmap(struct bitmap_index *bitmap_git)
return ret;
}
return ret;
}
-struct bitmap_index *prepare_bitmap_git(
void
)
+struct bitmap_index *prepare_bitmap_git(
struct repository *r
)
{
struct bitmap_index *bitmap_git = xcalloc(1, sizeof(*bitmap_git));
{
struct bitmap_index *bitmap_git = xcalloc(1, sizeof(*bitmap_git));
- if (!open_pack_bitmap(bitmap_git) && !load_pack_bitmap(bitmap_git))
+ if (!open_pack_bitmap(
r,
bitmap_git) && !load_pack_bitmap(bitmap_git))
return bitmap_git;
free_bitmap_index(bitmap_git);
return bitmap_git;
free_bitmap_index(bitmap_git);
@@
-690,7
+691,7
@@
struct bitmap_index *prepare_bitmap_walk(struct rev_info *revs)
struct bitmap_index *bitmap_git = xcalloc(1, sizeof(*bitmap_git));
/* try to open a bitmapped pack, but don't parse it yet
* because we may not need to use it */
struct bitmap_index *bitmap_git = xcalloc(1, sizeof(*bitmap_git));
/* try to open a bitmapped pack, but don't parse it yet
* because we may not need to use it */
- if (open_pack_bitmap(bitmap_git) < 0)
+ if (open_pack_bitmap(
revs->repo,
bitmap_git) < 0)
goto cleanup;
for (i = 0; i < revs->pending.nr; ++i) {
goto cleanup;
for (i = 0; i < revs->pending.nr; ++i) {
@@
-955,7
+956,7
@@
void test_bitmap_walk(struct rev_info *revs)
struct bitmap_test_data tdata;
struct bitmap_index *bitmap_git;
struct bitmap_test_data tdata;
struct bitmap_index *bitmap_git;
- if (!(bitmap_git = prepare_bitmap_git()))
+ if (!(bitmap_git = prepare_bitmap_git(
revs->repo
)))
die("failed to load bitmap indexes");
if (revs->pending.nr != 1)
die("failed to load bitmap indexes");
if (revs->pending.nr != 1)
diff --git
a/pack-bitmap.h
b/pack-bitmap.h
index 189dd68ad30b14281b42ea43bb21739006ea6061..8418ba8c7929ed49aec17d5a25d8d0a309f971b8 100644
(file)
--- a/
pack-bitmap.h
+++ b/
pack-bitmap.h
@@
-6,6
+6,7
@@
#include "pack-objects.h"
struct commit;
#include "pack-objects.h"
struct commit;
+struct repository;
struct rev_info;
struct bitmap_disk_header {
struct rev_info;
struct bitmap_disk_header {
@@
-39,7
+40,7
@@
typedef int (*show_reachable_fn)(
struct bitmap_index;
struct bitmap_index;
-struct bitmap_index *prepare_bitmap_git(
void
);
+struct bitmap_index *prepare_bitmap_git(
struct repository *r
);
void count_bitmap_commit_list(struct bitmap_index *, uint32_t *commits,
uint32_t *trees, uint32_t *blobs, uint32_t *tags);
void traverse_bitmap_commit_list(struct bitmap_index *,
void count_bitmap_commit_list(struct bitmap_index *, uint32_t *commits,
uint32_t *trees, uint32_t *blobs, uint32_t *tags);
void traverse_bitmap_commit_list(struct bitmap_index *,
diff --git
a/pack-objects.c
b/pack-objects.c
index b6cdbb0166fb5a3d6af3cfda2e7e259e3d54abe8..9c45842df389270baf73f4aa5b65df2004c9ba4d 100644
(file)
--- a/
pack-objects.c
+++ b/
pack-objects.c
@@
-99,7
+99,7
@@
static void prepare_in_pack_by_idx(struct packing_data *pdata)
* (i.e. in_pack_idx also zero) should return NULL.
*/
mapping[cnt++] = NULL;
* (i.e. in_pack_idx also zero) should return NULL.
*/
mapping[cnt++] = NULL;
- for (p = get_all_packs(
the_repository
); p; p = p->next, cnt++) {
+ for (p = get_all_packs(
pdata->repo
); p; p = p->next, cnt++) {
if (cnt == nr) {
free(mapping);
return;
if (cnt == nr) {
free(mapping);
return;
@@
-133,8
+133,10
@@
void oe_map_new_pack(struct packing_data *pack,
}
/* assume pdata is already zero'd by caller */
}
/* assume pdata is already zero'd by caller */
-void prepare_packing_data(struct packing_data *pdata)
+void prepare_packing_data(struct
repository *r, struct
packing_data *pdata)
{
{
+ pdata->repo = r;
+
if (git_env_bool("GIT_TEST_FULL_IN_PACK_ARRAY", 0)) {
/*
* do not initialize in_pack_by_idx[] to force the
if (git_env_bool("GIT_TEST_FULL_IN_PACK_ARRAY", 0)) {
/*
* do not initialize in_pack_by_idx[] to force the
diff --git
a/pack-objects.h
b/pack-objects.h
index 86ee93feb4f7d14518ed1ffe9cac8d8a7cd817fe..9e6af3f24f993e76f6b391c5c03ee9df88a8fd72 100644
(file)
--- a/
pack-objects.h
+++ b/
pack-objects.h
@@
-5,6
+5,8
@@
#include "thread-utils.h"
#include "pack.h"
#include "thread-utils.h"
#include "pack.h"
+struct repository;
+
#define DEFAULT_DELTA_CACHE_SIZE (256 * 1024 * 1024)
#define OE_DFS_STATE_BITS 2
#define DEFAULT_DELTA_CACHE_SIZE (256 * 1024 * 1024)
#define OE_DFS_STATE_BITS 2
@@
-127,6
+129,7
@@
struct object_entry {
};
struct packing_data {
};
struct packing_data {
+ struct repository *repo;
struct object_entry *objects;
uint32_t nr_objects, nr_alloc;
struct object_entry *objects;
uint32_t nr_objects, nr_alloc;
@@
-165,7
+168,7
@@
struct packing_data {
unsigned char *layer;
};
unsigned char *layer;
};
-void prepare_packing_data(struct packing_data *pdata);
+void prepare_packing_data(struct
repository *r, struct
packing_data *pdata);
static inline void packing_data_lock(struct packing_data *pdata)
{
static inline void packing_data_lock(struct packing_data *pdata)
{