All of lore.kernel.org
 help / color / mirror / Atom feed
From: Karsten Blees <karsten.blees@gmail.com>
To: Stepan Kasal <kasal@ucw.cz>
Cc: Johannes Schindelin <Johannes.Schindelin@gmx.de>,
	 Erik Faye-Lund <kusmabite@gmail.com>,
	Duy Nguyen <pclouds@gmail.com>,
	GIT Mailing-list <git@vger.kernel.org>,
	 Thomas Braun <thomas.braun@virtuell-zuhause.de>,
	msysGit <msysgit@googlegroups.com>
Subject: Re: [PATCH v2] Add a Windows-specific fallback to getenv("HOME");
Date: Thu, 05 Jun 2014 11:40:50 +0200	[thread overview]
Message-ID: <53903B22.70507@gmail.com> (raw)
In-Reply-To: <20140605080317.GA28029@camelia.ucw.cz>

Am 05.06.2014 10:03, schrieb Stepan Kasal:
> From: Johannes Schindelin <johannes.schindelin@gmx.de>
> Date: Wed, 2 Jun 2010 00:41:33 +0200
> 
> If HOME is not set, use $HOMEDRIVE$HOMEPATH
> 
> Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
> Signed-off-by: Stepan Kasal <kasal@ucw.cz>
> ---
> 
> Hello Karsten,
> thanks for your explanation.  There are more things to be done, but
> I hope you can ack this patch as a step forward.
> 

No, not really. Its sure better than introducing a special get_home_directory(), but it still increases the diff between upstream and msysgit rather than reducing it. The main critique points still remain:

 * $HOME is usually set up correctly before calling git, so this is essentially dead code (just checked, portable git's git-bash.bat and git-cmd.bat also do this correctly)

 * even if $HOME was empty, git should setenv("HOME") so that child processes can benefit from it (similar to TMPDIR and TERM in current msysgit's mingw_startup()). Not setting $HOME because it may hypothetically break child processes is a very weak argument, as we always did set $HOME in etc/profile (since the initial version back in 2007).

 * no fallback to $USERPROFILE doesn't work with diconnected home share

If you really have time to spare, I suggest you focus on getting the Unicode patches upstream so that we can progress from there (e.g. move $HOME setup to mingw_startup() so that we can get rid of redundant logic in etc/profile, git-wrapper, git-bash.bat, git-cmd.bat etc.).

> Hello Dscho,
> I hope you can ack this as well: it is basically equivalent with your
> patch, tailored according to current upstream fashion,  ;-)
> 
> Stepan
> 
>  compat/mingw.c | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/compat/mingw.c b/compat/mingw.c
> index a0e13bc..e108388 100644
> --- a/compat/mingw.c
> +++ b/compat/mingw.c
> @@ -1181,6 +1181,11 @@ char *mingw_getenv(const char *name)
>  		if (!result)
>  			result = getenv_cs("TEMP");
>  	}

else?

> +	if (!result && !strcmp(name, "HOME")) {
> +		struct strbuf buf = STRBUF_INIT;
> +		strbuf_addf(&buf, "%s%s", getenv_cs("HOMEDRIVE"), getenv_cs("HOMEPATH"));

No surplus '/', good!

> +		result = strbuf_detach(&buf, NULL);

This leaks memory.

> +	}
>  	return result;
>  }
>  
> 

-- 
-- 
*** Please reply-to-all at all times ***
*** (do not pretend to know who is subscribed and who is not) ***
*** Please avoid top-posting. ***
The msysGit Wiki is here: https://github.com/msysgit/msysgit/wiki - Github accounts are free.

You received this message because you are subscribed to the Google
Groups "msysGit" group.
To post to this group, send email to msysgit@googlegroups.com
To unsubscribe from this group, send email to
msysgit+unsubscribe@googlegroups.com
For more options, and view previous threads, visit this group at
http://groups.google.com/group/msysgit?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups "msysGit" group.
To unsubscribe from this group and stop receiving emails from it, send an email to msysgit+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

  parent reply	other threads:[~2014-06-05  9:40 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-04 11:47 [PATCH] Add a Windows-specific fallback to getenv("HOME"); Stepan Kasal
2014-06-04 13:47 ` Duy Nguyen
2014-06-04 14:05   ` Erik Faye-Lund
2014-06-04 14:55     ` Karsten Blees
2014-06-04 15:14     ` Johannes Schindelin
2014-06-04 15:18       ` Erik Faye-Lund
2014-06-04 15:27         ` Johannes Schindelin
2014-06-04 15:45           ` Stepan Kasal
2014-06-04 15:56             ` [msysGit] " Johannes Schindelin
2014-06-04 16:16               ` Stepan Kasal
2014-06-04 17:49                 ` [msysGit] " Johannes Schindelin
2014-06-06  9:12                   ` Git for Windows SDK Philip Oakley
2014-06-04 23:10                 ` Re: [PATCH] Add a Windows-specific fallback to getenv("HOME"); Duy Nguyen
2014-06-06 19:26                 ` Sebastian Schuberth
2014-06-04 15:46           ` Johannes Schindelin
2014-06-05  1:42             ` Karsten Blees
2014-06-05  8:03               ` [PATCH v2] " Stepan Kasal
2014-06-05  8:32                 ` [msysGit] " Torsten Bögershausen
2014-06-05 10:23                   ` [PATCH v3] " Stepan Kasal
2014-06-05  9:40                 ` Karsten Blees [this message]
2014-06-05  9:58                   ` [PATCH v2] " Erik Faye-Lund
2014-06-05 21:44                     ` Karsten Blees
2014-06-06  8:03                       ` Stepan Kasal
2014-06-05 11:23                   ` Stepan Kasal
2014-06-05 13:39                   ` Johannes Schindelin
2014-06-05 20:03                     ` Karsten Blees
2014-06-05 12:03               ` Re: [PATCH] " Johannes Schindelin
2014-06-05 12:15                 ` [msysGit] " Stepan Kasal
2014-06-05 14:33                 ` Karsten Blees
2014-06-04 14:53   ` Stepan Kasal
2014-06-04 15:13   ` Johannes Schindelin

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=53903B22.70507@gmail.com \
    --to=karsten.blees@gmail.com \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=git@vger.kernel.org \
    --cc=kasal@ucw.cz \
    --cc=kusmabite@gmail.com \
    --cc=msysgit@googlegroups.com \
    --cc=pclouds@gmail.com \
    --cc=thomas.braun@virtuell-zuhause.de \
    /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.