public inbox for git@vger.kernel.org 
 help / color / mirror / Atom feed
From: Marius Storm-Olsen <marius@storm-olsen•com>
To: Janos Laube <janos.dev@gmail•com>
Cc: Erik Faye-Lund <kusmabite@googlemail•com>,
	Johannes.Schindelin@gmx•de, msysgit@googlegroups•com,
	git@vger•kernel.org, lznuaa@gmail•com
Subject: Re: [msysGit] Re: [PATCH 01/14] Fix non-constant array creation
Date: Fri, 21 Aug 2009 21:49:42 +0200	[thread overview]
Message-ID: <4A8EFA56.6050001@gmail.com> (raw)
In-Reply-To: <9d6091530908210926p61aa5ea6ya6a7b71f940fdf5a@mail.gmail.com>

Janos Laube said the following on 21.08.2009 18:26:
>> MSVC compiles regex.c, so it must handle it. I'm fine with that.
> 
> msvc supports alloca, but regex.c doesn't make use of it per default 
> (you must define HAVE_ALLOCA_H in order to use it). basically _alloca
>  is fine for that task, but be aware that error handling on windows
> is a bit compilicated. when _alloca fails it throws a structured 
> exception, you must reset the stack and use traditional memory 
> allocation as fallback. see 
> http://msdn.microsoft.com/en-us/library/wb1s57t5.aspx. :-)

I must admit that I didn't look much at the surrounding code to know how 
large preimage->nr can get. But assuming variable-length array is 
handled the same way by the compiler as alloca(), and this code seems to 
be performing fine, I guess it's safe to say that this code won't be 
triggering any SEH, and thus we won't need to handle it?

So, given my assumptions I think we can just replace that one line with 
alloca(), nuke the free(), and everything is ok.

--
.marius

  reply	other threads:[~2009-08-21 19:48 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-21 13:30 [RFC/PATCH 00/14] Build git with MSVC Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 01/14] Fix non-constant array creation Marius Storm-Olsen
2009-08-21 13:41   ` Erik Faye-Lund
2009-08-21 13:46     ` Marius Storm-Olsen
2009-08-21 16:26       ` [msysGit] " Janos Laube
2009-08-21 19:49         ` Marius Storm-Olsen [this message]
2009-08-21 20:06         ` Johan 't Hart
2009-08-22 10:35           ` Erik Faye-Lund
2009-08-21 21:04     ` Junio C Hamano
2009-08-21 20:39   ` Junio C Hamano
2009-08-21 13:30 ` [PATCH 02/14] Avoid declaration after statement Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 03/14] Define SNPRINTF_SIZE_CORR=1 for Microsoft Visual C++ Marius Storm-Olsen
2009-08-21 20:55   ` Junio C Hamano
2009-08-21 21:18     ` Johan 't Hart
2009-08-21 21:41     ` Johannes Sixt
2009-08-21 22:11       ` Junio C Hamano
2009-08-22 11:25         ` Marius Storm-Olsen
2009-08-22 11:32         ` Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 04/14] Add define guards to compat/win32.h Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 05/14] Change regerror() declaration from K&R style to ANSI C (C89) Marius Storm-Olsen
2009-08-21 14:37   ` Frank Li
2009-08-21 20:10   ` [PATCH v2 05/14] Change regerror() definition " Marius Storm-Olsen
2009-08-22  0:15     ` Frank Li
2009-08-24  9:42     ` Erik Faye-Lund
2009-08-21 13:30 ` [PATCH 06/14] mingw.c: Use the O_BINARY flag to open files Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 07/14] Fix __stdcall/WINAPI placement and function prototype Marius Storm-Olsen
2009-08-21 17:37   ` [msysGit] " Johannes Sixt
2009-08-21 19:42     ` Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 08/14] Test for WIN32 instead of __MINGW32_ Marius Storm-Olsen
2009-08-28  8:15   ` Paolo Bonzini
2009-08-21 13:30 ` [PATCH 09/14] Avoid including windows.h in winansi.c for MSVC build Marius Storm-Olsen
2009-08-21 21:02   ` Junio C Hamano
2009-08-21 21:16     ` Reece Dunn
2009-08-22 11:40       ` Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 10/14] Add empty header files for MSVC port Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 11/14] Add MinGW header files to build git with MSVC Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 12/14] Add platform files for MSVC porting Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 13/14] Add MSVC project files Marius Storm-Olsen
2009-08-21 13:30 ` [PATCH 14/14] Add README and gitignore file for MSVC build Marius Storm-Olsen
2009-08-23 16:26   ` Thiago Farina
2009-08-23 18:22     ` Reece Dunn
2009-08-23 18:59       ` Marius Storm-Olsen
2009-08-23 19:29         ` Thiago Farina
2009-08-24  7:03           ` [msysGit] " Marius Storm-Olsen
2009-08-25 14:32           ` Frank Li
2009-08-25 17:24             ` Thiago Farina
2009-08-27 13:16               ` Frank Li
2009-08-27 14:26                 ` Thiago Farina
2009-09-07 12:26             ` Erik Faye-Lund

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=4A8EFA56.6050001@gmail.com \
    --to=marius@storm-olsen$(echo .)com \
    --cc=Johannes.Schindelin@gmx$(echo .)de \
    --cc=git@vger$(echo .)kernel.org \
    --cc=janos.dev@gmail$(echo .)com \
    --cc=kusmabite@googlemail$(echo .)com \
    --cc=lznuaa@gmail$(echo .)com \
    --cc=msysgit@googlegroups$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox