This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: 1.7.10s 20110729 - problem listing services in /proc
On Sat, Jul 30, 2011 at 10:21:30AM +0200, Corinna Vinschen wrote:
>On Jul 30 14:44, jojelino wrote:
>> Breakpoint 2, fhandler_registry::close (this=0x612cba5c)
>> at /tmp/winsup/winsup/cygwin/fhandler_registry.cc:856
>> 856 cfree (value_name);
>> 10: this->value_name = 0x612cb374 L"services"
>> (gdb)
>> Continuing.
>>
>> 0x612cba5c->value_name = 0
>> 0x612cb124_2->value_name = 0x612cba5c->value_name = 0x612cb374
>> L"services" (quadruple-freed but known as not freed)
>>
>> Program received signal SIGSEGV, Segmentation fault.
>> 0x7c80bef7 in RaiseException () from
>> /cygdrive/c/WINDOWS/system32/kernel32.dll
>>
>> In brief, same address quadruple-freed. because of dangling pointer.
>> Regards.
>
>It turned out that I could reproduce the problem, I just didn't notice
>it. I expected an error message but find died silently, so I took that
>as "it works". Serves me right for looking into Cygwin bug reports too
>late at night.
Funny. I did exactly the same thing maybe for the same reason. If I
had run the command under strace, I would have seen that it failed.
The snapshot bisection + jojelino's debugging did point at the reason
for the problem, though. I changed the way dup() worked slightly back
in May and that tickled a nascent problem in fhandler_registry::dup.
Thanks to everyone who contributed debugging details.
cgf
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple