This is the mail archive of the cygwin-apps mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] setup.exe SEGV on WinXP/Pro


On Aug  8 20:34, Achim Gratz wrote:
> 
> I've been having sporadic SEGV on WinXP/Pro just after the MD5 of a
> package was checked that used to clear up after a reboot.  Today, with a
> freshly built setup.exe this failure was now entirely reproduceable.
> I've fixed it by reimplementing the string formatting for the MD5 digest
> using C++ stream functions.
> 

> >From 677e2e89d1e4046c967dd1759ac53116f6643bd9 Mon Sep 17 00:00:00 2001
> From: Achim Gratz <Stromeko@Stromeko.DE>
> Date: Thu, 8 Aug 2013 20:23:31 +0200
> Subject: [PATCH] fix SEGV on WinXP/Pro
> 
>     * csu_util/MD5Sum.cc (MD5Sum::operator std::string() const):
>     Reimplement using stringstream to avoid a SEGV on WinXP/Pro.

Patch applied.

> -  return std::string(hexdigest);
     ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

I'm wondering if that was the problem.  This expression constructs a
std:string and then immediately destructs it since the scope is limited
to the end of the function (which the return statement is all about).
Reading the value of this object in the parent function is basically
luck, isn't it?


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]