All of lore.kernel.org
 help / color / mirror / Atom feed
From: Max Kirillov <max@max630.net>
To: Jeff King <peff@peff.net>
Cc: Max Kirillov <max@max630.net>, Jens Lehmann <Jens.Lehmann@web.de>,
	Duy Nguyen <pclouds@gmail.com>,
	Johannes Schindelin <johannes.schindelin@gmx.de>,
	Heiko Voigt <hvoigt@hvoigt.net>,
	Stefan Beller <sbeller@google.com>,
	Junio C Hamano <gitster@pobox.com>,
	git@vger.kernel.org
Subject: Re: [PATCH v8 1/2] submodule refactor: use git_pathdup_submodule() in add_submodule_odb()
Date: Mon, 14 Sep 2015 01:26:29 +0300	[thread overview]
Message-ID: <20150913222619.GA8042@wheezy.local> (raw)
In-Reply-To: <20150911075340.GA18917@sigill.intra.peff.net>

On Fri, Sep 11, 2015 at 03:53:40AM -0400, Jeff King wrote:
> 
> Now that we have strbuf_git_path_submodule(), is there any reason to
> switch this away from a strbuf?
> 
> That saves us a bunch of strlen calls, and it makes the diff way
> shorter. My ulterior motive is that the result also conflicts a lot less
> with some patches I'm about to post to harden the malloc and strcpy
> calls below.
> 
> That would make your patch look something like:
> 
> diff --git a/submodule.c b/submodule.c
> index 245ed4d..5e5a46f 100644
> --- a/submodule.c
> +++ b/submodule.c
> @@ -122,15 +122,8 @@ static int add_submodule_odb(const char *path)
>  	struct strbuf objects_directory = STRBUF_INIT;
>  	struct alternate_object_database *alt_odb;
>  	int ret = 0;
> -	const char *git_dir;
>  
> -	strbuf_addf(&objects_directory, "%s/.git", path);
> -	git_dir = read_gitfile(objects_directory.buf);
> -	if (git_dir) {
> -		strbuf_reset(&objects_directory);
> -		strbuf_addstr(&objects_directory, git_dir);
> -	}
> -	strbuf_addstr(&objects_directory, "/objects/");
> +	strbuf_git_path_submodule(&objects_directory, path, "objects/");
>  	if (!is_directory(objects_directory.buf)) {
>  		ret = -1;
>  		goto done;
> 
> -Peff

Thank you. This is how it looks now.

-- 
Max

  reply	other threads:[~2015-09-13 22:26 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-03-18 21:10 [PATCH v4 0/2] path: implement common_dir handling in git_path_submodule() Max Kirillov
2015-03-18 21:10 ` [PATCH v4 1/2] submodule refactor: use git_path_submodule() in add_submodule_odb() Max Kirillov
2015-03-18 21:10 ` [PATCH v4 2/2] path: implement common_dir handling in git_path_submodule() Max Kirillov
2015-08-03 21:03 ` [PATCH v5 0/2] " Max Kirillov
2015-08-03 21:03   ` [PATCH v5 1/2] submodule refactor: use git_path_submodule() in add_submodule_odb() Max Kirillov
2015-08-03 21:29     ` Junio C Hamano
2015-08-03 21:03   ` [PATCH v5 2/2] path: implement common_dir handling in git_path_submodule() Max Kirillov
2015-08-04 21:51   ` [PATCH v6 0/2] " Max Kirillov
2015-08-04 21:51     ` [PATCH v6 1/2] submodule refactor: use git_path_submodule() in add_submodule_odb() Max Kirillov
2015-08-04 21:51     ` [PATCH v6 2/2] path: implement common_dir handling in git_path_submodule() Max Kirillov
2015-08-04 22:05     ` [PATCH v7 0/2] " Max Kirillov
2015-08-04 22:05       ` [PATCH v7 1/2] submodule refactor: use git_path_submodule() in add_submodule_odb() Max Kirillov
2015-08-18  0:07         ` Stefan Beller
2015-08-04 22:05       ` [PATCH v7 2/2] path: implement common_dir handling in git_path_submodule() Max Kirillov
2015-08-17 23:56         ` Stefan Beller
2015-09-10 21:57       ` [PATCH v8 0/2] Submodule object path Max Kirillov
2015-09-10 21:57         ` [PATCH v8 1/2] submodule refactor: use git_pathdup_submodule() in add_submodule_odb() Max Kirillov
2015-09-11  7:53           ` Jeff King
2015-09-13 22:26             ` Max Kirillov [this message]
2015-09-10 21:57         ` [PATCH v8 2/2] path: implement common_dir handling in git_pathdup_submodule() Max Kirillov
2015-09-11  1:10         ` [PATCH v8 0/2] Submodule object path Junio C Hamano
2015-09-13 22:32           ` Max Kirillov
2015-09-14 18:14             ` Junio C Hamano
2015-09-13 22:17         ` [PATCH v9 " Max Kirillov
2015-09-13 22:17           ` [PATCH v9 1/2] submodule refactor: use strbuf_git_path_submodule() in add_submodule_odb() Max Kirillov
2015-09-14 18:00             ` Junio C Hamano
2015-09-13 22:17           ` [PATCH v9 2/2] path: implement common_dir handling in git_pathdup_submodule() Max Kirillov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20150913222619.GA8042@wheezy.local \
    --to=max@max630.net \
    --cc=Jens.Lehmann@web.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=hvoigt@hvoigt.net \
    --cc=johannes.schindelin@gmx.de \
    --cc=pclouds@gmail.com \
    --cc=peff@peff.net \
    --cc=sbeller@google.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.