delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2002/03/23/06:51:24

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
Date: Sat, 23 Mar 2002 12:48:09 +0100
From: Pavel Tsekov <ptsekov AT gmx DOT net>
X-Mailer: The Bat! (v1.53d) UNREG / CD5BF9353B3B7091
Reply-To: Pavel Tsekov <ptsekov AT gmx DOT net>
X-Priority: 3 (Normal)
Message-ID: <353888367.20020323124809@gmx.net>
To: "Robert Collins" <robert DOT collins AT itdomain DOT com DOT au>
CC: cygwin-apps AT cygwin DOT com, "Seitz, Matt" <mseitz AT snapserver DOT com>,
cygwin AT cygwin DOT com
Subject: Re[2]: [Possible BUG and a fix] Re[2]: Setup.Exe causes Application Error at 0x78001750
In-Reply-To: <FC169E059D1A0442A04C40F86D9BA76008AB7E@itdomain003.itdomain.net.au>
References: <FC169E059D1A0442A04C40F86D9BA76008AB7E AT itdomain003 DOT itdomain DOT net DOT au>
MIME-Version: 1.0

Hello Robert,

Saturday, March 23, 2002, 5:34:28 AM, you wrote:

RC> Thanks for taking the time to look at this - I really appreciate that.

RC> BTW: If it's reproducible, tell me the steps and I'll look too. Also, if
RC> it's reproducible, try building with -DDEBUG.

Yep! I found a way to reproduce it... Though on my system setup.exe
still doesnt break - I just see something like "RtlFreeHeap: Invalid
block " or somthing like that... I'd say that it depends on your
system whether or not you'll experience the crash - I'm on WinXP home.
I'm sure one could reproduce this very easy on Wine - its very
sensitive about heap corruption unlike windowses...

1. Get msvcrt.dll 6.1.8293
2. Put it in the same directory where your setup.exe is.
3. Run setup.exe in gdb ... wait to see the RtlFreeHeap message :)

I asked on the list for a dump of setup.exe at the time of the crash so
I could determine in which dll this 78001750 is located. I turned out
MSVCRT.DLL. I asked one of the people to supply me with his MSVCRT.DLL
and I found that this 78001750 is part of a helper function used by
realloc () and free (). Started to browse the code an found no
suspicios call to free() or realloc()...
Then Matt would come with a drwatsn.log and I found the return address
that the call which crashed setup.exe would use to return.
Then I remembered that i have setup-20020317.exe which had the debug
info :)). Found with my disassemler the function which contained the
return address from above unfortunately the disassembler doesnt
understand the debug info of setup.exe. So I put a breakpoint in gdb on
the address I found with the disassembler and it turned its __builtin_vector_delete.
Then I send a mail to the list about that... After that I decided to
run setup.exe from gdb as described in the steps above and gdb broke
in the right place :)

Bah, this was too long :) I'll supply you with the msvcrt.dll offlist
so you could try by yourself.

P.S. Forgot to mention that I;ve built setup.exe with my suggested
patch and it was fine :) Send a copy of it to Matt Seitz to test it
but I guess this was to early in the morning :)


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019