> -----Original Message----- > From: Junio C Hamano [mailto:gits...@pobox.com] > Sent: Wednesday, August 22, 2012 7:30 PM > To: Brandon Casey > Cc: Joachim Schmitz; Shawn Pearce; git@vger.kernel.org; > rsbec...@nexbridge.com > Subject: Re: Porting git to HP NonStop > > Brandon Casey <draf...@gmail.com> writes: > > > On Wed, Aug 22, 2012 at 9:30 AM, Joachim Schmitz > > <j...@schmitz-digital.de> wrote: > > > >> OK, so how about this: > >> /usr/local/bin/diff -EBbu ./compat/mkdir.c.orig ./compat/mkdir.c > >> --- ./compat/mkdir.c.orig 2012-08-21 05:02:11 -0500 > >> +++ ./compat/mkdir.c 2012-08-21 05:02:11 -0500 > >> @@ -0,0 +1,24 @@ > >> +#include "../git-compat-util.h" > >> +#undef mkdir > >> + > >> +/* for platforms that can't deal with a trailing '/' */ int > >> +compat_mkdir_wo_trailing_slash(const char *dir, mode_t mode) { > >> + int retval; > >> + char *tmp_dir = NULL; > >> + size_t len = strlen(dir); > >> + ... > > Why not rearrange this so that you assign to dir the value of tmp_dir > > and then just pass dir to mkdir. Then you can avoid the recast of dir > > to (char*) in the else branch. Later, just call free(tmp_dir). Also, > > we have xstrndup. So I think the body of your function can become > > something like: > > > > if (len && dir[len-1] == '/') > > dir = tmp_dir = xstrndup(dir, len-1); > > > > retval = mkdir(dir, mode); > > free(tmp_dir); > > Nice. And we have xmemdupz() would be even better as you followed-up.
How's that one used? Bye, Jojo -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html