All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
To: git@vger.kernel.org, Junio C Hamano <gitster@pobox.com>,
	kusmabite@gmail.com, cmn@elego.de
Cc: "Nguyễn Thái Ngọc Duy" <pclouds@gmail.com>
Subject: [PATCH 2/2] setup_gently: use xgetcwd()
Date: Fri, 18 Mar 2011 18:39:29 +0700	[thread overview]
Message-ID: <1300448369-5896-2-git-send-email-pclouds@gmail.com> (raw)
In-Reply-To: <1300448369-5896-1-git-send-email-pclouds@gmail.com>


Signed-off-by: Nguyễn Thái Ngọc Duy <pclouds@gmail.com>
---
  On Fri, Mar 18, 2011 at 5:34 PM, Nguyen Thai Ngoc Duy <pclouds@gmail.com> wrote:
  > It was pointed out elsewhere [1] that PATH_MAX only specifies max
  > length of a path element, not full path. I think we'd need to stay
  > away from preallocated PATH_MAX-sized arrays.
  >
  > [1] http://mid.gmane.org/AANLkTikXvx7-Q8B_dqG5mMHGK_Rw-dFaeQdXi0zW98SD@mail.gmail.com
  
  Perhaps this as a start? I don't intend to kill all PATH_MAX by myself
  though until I finish all other topics I'm working on.

 setup.c |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/setup.c b/setup.c
index 03cd84f..f7b3556 100644
--- a/setup.c
+++ b/setup.c
@@ -506,7 +506,8 @@ static dev_t get_device_or_die(const char *path, const char *prefix)
 static const char *setup_git_directory_gently_1(int *nongit_ok)
 {
 	const char *env_ceiling_dirs = getenv(CEILING_DIRECTORIES_ENVIRONMENT);
-	static char cwd[PATH_MAX+1];
+	static struct strbuf sb_cwd = STRBUF_INIT;
+	char *cwd;
 	const char *gitdirenv, *ret;
 	char *gitfile;
 	int len, offset, ceil_offset;
@@ -521,9 +522,9 @@ static const char *setup_git_directory_gently_1(int *nongit_ok)
 	if (nongit_ok)
 		*nongit_ok = 0;
 
-	if (!getcwd(cwd, sizeof(cwd)-1))
-		die_errno("Unable to read current working directory");
-	offset = len = strlen(cwd);
+	xgetcwd(&sb_cwd);
+	offset = len = sb_cwd.len;
+	cwd = sb_cwd.buf;
 
 	/*
 	 * If GIT_DIR is set explicitly, we're not going
-- 
1.7.4.74.g639db

  reply	other threads:[~2011-03-18 11:42 UTC|newest]

Thread overview: 48+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-14 19:18 [PATCH 0/3] Fix some errors reported by valgrind Carlos Martín Nieto
2011-03-14 19:18 ` [PATCH 1/3] make_absolute_path: Don't try to copy a string to itself Carlos Martín Nieto
2011-03-14 20:02   ` Jeff King
2011-03-14 20:25   ` Junio C Hamano
2011-03-14 22:02     ` Carlos Martín Nieto
2011-03-14 22:58       ` Junio C Hamano
2011-03-15 11:59         ` Carlos Martín Nieto
2011-03-15 12:40           ` Carlos Martín Nieto
2011-03-15 17:02             ` Junio C Hamano
2011-03-15 17:27               ` Carlos Martín Nieto
2011-03-16 14:16                 ` Nguyen Thai Ngoc Duy
2011-03-16 14:49                   ` Carlos Martín Nieto
2011-03-16 14:58                     ` Nguyen Thai Ngoc Duy
2011-03-16 14:04               ` Nguyen Thai Ngoc Duy
2011-03-16 15:08                 ` Carlos Martín Nieto
2011-03-14 19:18 ` [PATCH 2/3] setup_path(): Free temporary buffer Carlos Martín Nieto
2011-03-14 20:09   ` Jeff King
2011-03-14 22:18     ` Carlos Martín Nieto
2011-03-16 11:26     ` [PATCH] system_path: use a static buffer Carlos Martín Nieto
2011-03-16 15:58       ` Erik Faye-Lund
2011-03-16 16:24         ` Carlos Martín Nieto
2011-03-16 16:33         ` Carlos Martín Nieto
2011-03-16 20:43           ` Junio C Hamano
2011-03-17 11:01             ` Carlos Martín Nieto
2011-03-17 14:24               ` Carlos Martín Nieto
2011-03-18  7:25                 ` Junio C Hamano
2011-03-21  9:56                   ` Carlos Martín Nieto
2011-03-21 11:14                     ` Jeff King
2011-03-21 15:26                       ` Carlos Martín Nieto
2011-03-21 15:51                         ` Jeff King
2011-03-21 15:57                           ` Carlos Martín Nieto
2011-03-18 10:34                 ` Nguyen Thai Ngoc Duy
2011-03-18 11:38                   ` PATH_MAX (Re: [PATCH] system_path: use a static buffer) Jonathan Nieder
2011-03-18 11:54                     ` Nguyen Thai Ngoc Duy
2011-03-21  9:47                     ` Carlos Martín Nieto
2011-03-21 12:37                       ` Lasse Makholm
2011-03-21 11:19                     ` Nguyen Thai Ngoc Duy
2011-03-18 11:39                   ` [PATCH 1/2] wrapper.c: add xgetcwd() Nguyễn Thái Ngọc Duy
2011-03-18 11:39                     ` Nguyễn Thái Ngọc Duy [this message]
2011-03-14 20:14   ` [PATCH 2/3] setup_path(): Free temporary buffer Junio C Hamano
2011-03-14 22:01     ` Carlos Martín Nieto
2011-03-15  1:12       ` Jeff King
2011-03-15  9:32         ` [PATCH] t/README: Add a note about running commands under valgrind Carlos Martín Nieto
2011-03-15 17:06           ` Junio C Hamano
2011-03-15 17:08             ` Carlos Martín Nieto
2011-03-14 19:18 ` [PATCH 3/3] clone: Free a few paths Carlos Martín Nieto
2011-03-14 19:45   ` Jonathan Nieder
2011-03-18  7:25     ` Junio C Hamano

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=1300448369-5896-2-git-send-email-pclouds@gmail.com \
    --to=pclouds@gmail.com \
    --cc=cmn@elego.de \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=kusmabite@gmail.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.