* [Outreachy PATCH] merge-blobs: stop using the_repository
@ 2026-10-17 10:52 Okhuomon Ajayi
2026-10-20 16:53 ` Usman Akinyemi
0 siblings, 1 reply; 5+ messages in thread
From: Okhuomon Ajayi @ 2026-10-17 10:52 UTC (permalink / raw)
To: git
Cc: christian.couder, usmanakinyemi202, siddharthasthana31,
kaartic.sivaraam
merge_blobs() already has the repository through istate.
Pass it to fill_mmfile_blob() and use it when reading objects.
Remove the USE_THE_REPOSITORY_VARIABLE definition and
include the headers needed for the structure definitions.
Signed-off-by: Okhuomon Ajayi <okhuomonajayi54@gmail.com>
---
merge-blobs.c | 17 +++++++++--------
1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/merge-blobs.c b/merge-blobs.c
index 49dbec9529..1b0621c814 100644
--- a/merge-blobs.c
+++ b/merge-blobs.c
@@ -1,18 +1,19 @@
-#define USE_THE_REPOSITORY_VARIABLE
-
#include "git-compat-util.h"
#include "merge-ll.h"
#include "blob.h"
#include "merge-blobs.h"
#include "odb.h"
+#include "read-cache-ll.h"
+#include "repository.h"
-static int fill_mmfile_blob(mmfile_t *f, struct blob *obj)
+static int fill_mmfile_blob(struct repository *r, mmfile_t *f,
+ struct blob *obj)
{
void *buf;
size_t size;
enum object_type type;
- buf = odb_read_object(the_repository->objects, &obj->object.oid,
+ buf = odb_read_object(r->objects, &obj->object.oid,
&type, &size);
if (!buf)
return -1;
@@ -79,17 +80,17 @@ void *merge_blobs(struct index_state *istate, const char *path,
return NULL;
if (!our)
our = their;
- return odb_read_object(the_repository->objects, &our->object.oid,
+ return odb_read_object(istate->repo->objects, &our->object.oid,
&type, size);
}
- if (fill_mmfile_blob(&f1, our) < 0)
+ if (fill_mmfile_blob(istate->repo, &f1, our) < 0)
goto out_no_mmfile;
- if (fill_mmfile_blob(&f2, their) < 0)
+ if (fill_mmfile_blob(istate->repo, &f2, their) < 0)
goto out_free_f1;
if (base) {
- if (fill_mmfile_blob(&common, base) < 0)
+ if (fill_mmfile_blob(istate->repo, &common, base) < 0)
goto out_free_f2_f1;
} else {
common.ptr = xstrdup("");
--
2.54.0
^ permalink raw reply related [flat|nested] 5+ messages in thread* Re: [Outreachy PATCH] merge-blobs: stop using the_repository
2026-10-17 10:52 [Outreachy PATCH] merge-blobs: stop using the_repository Okhuomon Ajayi
@ 2026-10-20 16:53 ` Usman Akinyemi
2026-10-20 21:41 ` Okhuomon Ajayi
2026-10-20 21:54 ` Junio C Hamano
0 siblings, 2 replies; 5+ messages in thread
From: Usman Akinyemi @ 2026-10-20 16:53 UTC (permalink / raw)
To: Okhuomon Ajayi
Cc: git, christian.couder, siddharthasthana31, kaartic.sivaraam
>
> merge_blobs() already has the repository through istate.
> Pass it to fill_mmfile_blob() and use it when reading objects.
>
> Remove the USE_THE_REPOSITORY_VARIABLE definition and
> include the headers needed for the structure definitions.
>
> Signed-off-by: Okhuomon Ajayi <okhuomonajayi54@gmail.com>
> ---
Good.
> merge-blobs.c | 17 +++++++++--------
> 1 file changed, 9 insertions(+), 8 deletions(-)
>
> diff --git a/merge-blobs.c b/merge-blobs.c
> index 49dbec9529..1b0621c814 100644
> --- a/merge-blobs.c
> +++ b/merge-blobs.c
> @@ -1,18 +1,19 @@
> -#define USE_THE_REPOSITORY_VARIABLE
> -
> #include "git-compat-util.h"
> #include "merge-ll.h"
> #include "blob.h"
> #include "merge-blobs.h"
> #include "odb.h"
> +#include "read-cache-ll.h"
> +#include "repository.h"
>
> -static int fill_mmfile_blob(mmfile_t *f, struct blob *obj)
> +static int fill_mmfile_blob(struct repository *r, mmfile_t *f,
> + struct blob *obj)
Is there a reason why the repo variable is named "r" instead of repo ?
"repo" seems more "descriptive" than "r". if there is no reason, let's change
it to "repo" from "r"
> {
> void *buf;
> size_t size;
> enum object_type type;
>
> - buf = odb_read_object(the_repository->objects, &obj->object.oid,
> + buf = odb_read_object(r->objects, &obj->object.oid,
> &type, &size);
this r->objects will become repo->objects
> if (!buf)
> return -1;
> @@ -79,17 +80,17 @@ void *merge_blobs(struct index_state *istate, const char *path,
> return NULL;
> if (!our)
> our = their;
> - return odb_read_object(the_repository->objects, &our->object.oid,
> + return odb_read_object(istate->repo->objects, &our->object.oid,
> &type, size);
> }
>
> - if (fill_mmfile_blob(&f1, our) < 0)
> + if (fill_mmfile_blob(istate->repo, &f1, our) < 0)
> goto out_no_mmfile;
> - if (fill_mmfile_blob(&f2, their) < 0)
> + if (fill_mmfile_blob(istate->repo, &f2, their) < 0)
> goto out_free_f1;
>
> if (base) {
> - if (fill_mmfile_blob(&common, base) < 0)
> + if (fill_mmfile_blob(istate->repo, &common, base) < 0)
> goto out_free_f2_f1;
> } else {
> common.ptr = xstrdup("");
> --
apart from the nit about r vs repo this looks good.
> 2.54.0
>
Thanks.
^ permalink raw reply [flat|nested] 5+ messages in thread* Re: [Outreachy PATCH] merge-blobs: stop using the_repository
2026-10-20 16:53 ` Usman Akinyemi
@ 2026-10-20 21:41 ` Okhuomon Ajayi
2026-10-20 21:54 ` Junio C Hamano
1 sibling, 0 replies; 5+ messages in thread
From: Okhuomon Ajayi @ 2026-10-20 21:41 UTC (permalink / raw)
To: Usman Akinyemi
Cc: git, christian.couder, siddharthasthana31, kaartic.sivaraam
On Tue, Oct 20, 2026 at 5:53 PM Usman Akinyemi
<usmanakinyemi202@gmail.com> wrote:
> Is there a reason why the repo variable is named "r" instead of repo ?
>
> "repo" seems more "descriptive" than "r". if there is no reason, let's change
> it to "repo" from "r"
Thanks for the review.
There is no particular reason. I studied some files and saw it written
as "r", but I will change it to "repo" in v2 so it is more
descriptive, as you said.
Okhuomon
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Outreachy PATCH] merge-blobs: stop using the_repository
2026-10-20 16:53 ` Usman Akinyemi
2026-10-20 21:41 ` Okhuomon Ajayi
@ 2026-10-20 21:54 ` Junio C Hamano
2026-10-20 22:16 ` Usman Akinyemi
1 sibling, 1 reply; 5+ messages in thread
From: Junio C Hamano @ 2026-10-20 21:54 UTC (permalink / raw)
To: Usman Akinyemi
Cc: Okhuomon Ajayi, git, christian.couder, siddharthasthana31,
kaartic.sivaraam
Usman Akinyemi <usmanakinyemi202@gmail.com> writes:
>> +static int fill_mmfile_blob(struct repository *r, mmfile_t *f,
>> + struct blob *obj)
>
> Is there a reason why the repo variable is named "r" instead of repo ?
>
> "repo" seems more "descriptive" than "r". if there is no reason, let's change
> it to "repo" from "r"
Is that really needed?
I thought that we already use short-and-sweet "r" elsewhere, and it
is expected we will have many more functions that take "struct
repository *" as the first parameter as the libification stuff goes
further, so if we consistently say "r", that would be just familiar
and descriptive as "repository" to our developers, without risking
to make readers wonder what "repo" stands for, things other than
"repository", like "reposses" ;-).
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Outreachy PATCH] merge-blobs: stop using the_repository
2026-10-20 21:54 ` Junio C Hamano
@ 2026-10-20 22:16 ` Usman Akinyemi
0 siblings, 0 replies; 5+ messages in thread
From: Usman Akinyemi @ 2026-10-20 22:16 UTC (permalink / raw)
To: Junio C Hamano
Cc: Okhuomon Ajayi, git, christian.couder, siddharthasthana31,
kaartic.sivaraam
>
> Is that really needed?
>
> I thought that we already use short-and-sweet "r" elsewhere, and it
> is expected we will have many more functions that take "struct
> repository *" as the first parameter as the libification stuff goes
> further, so if we consistently say "r", that would be just familiar
> and descriptive as "repository" to our developers, without risking
> to make readers wonder what "repo" stands for, things other than
> "repository", like "reposses" ;-).
We also have "repo" used in some places, we might want to pick one, but
I do not think it is a big issue.
Since, there instances of "r" Okhuomon does not have to send a new patch
for changing the variable name then.
Thanks.
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2026-10-20 22:16 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-17 10:52 [Outreachy PATCH] merge-blobs: stop using the_repository Okhuomon Ajayi
2026-10-20 16:53 ` Usman Akinyemi
2026-10-20 21:41 ` Okhuomon Ajayi
2026-10-20 21:54 ` Junio C Hamano
2026-10-20 22:16 ` Usman Akinyemi
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox