emacs-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: MS-Windows build using Posix configury


From: Dmitry Gutov
Subject: Re: MS-Windows build using Posix configury
Date: Sat, 18 May 2013 22:42:42 +0400
User-agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:17.0) Gecko/20130509 Thunderbird/17.0.6

On 18.05.2013 22:21, Eli Zaretskii wrote:
Date: Sat, 18 May 2013 18:28:15 +0400
From: Dmitry Gutov <address@hidden>
CC: address@hidden

Anyway, can you verify that the function unload_dlls is being called
at exit, and that it does unload libgnutls-28.dll?  Setting a
breakpoint at the line that calls FreeLibrary should allow you to
display the value of loaded_from variable, which is a list showing the
library and the handle used to load it.

It does, but 'abort' breakpoint hits earlier.

The sequence is, as gdb sees it, unload libpng14-14.dll, abort from
deregister_frame_info_bases, unload libpng14-14.dll again (!), then
unload libgnutls-28.dll.

Does libpng14-14.dll depend on libintl as well, or depend on
libgcc_s_dw2-1.dll in some other way, per chance?

Nope, its only dependencies are zlib1, kernel32 and msvcrt.

OK.  Can you try a session that only loads libgnutls, but doesn't load
image libraries?  I think "emacs -nw" should achieve that, if you then
use whatever features that load GnuTLS.  The question is, if libgnutls
is the only DLL loaded, does Emacs still crash at exit, with and
without my unloading patch?

I've only tried it with your patch, for now, launching and then quitting Gnus in console Emacs, but it still crashes.

It looks to me that libpng gets loaded by Gnus anyway, because a) the breakpoint on w32.c:7473 still gets hit, the same amount of times, and the car of 'loaded_from' on the first hit is still "libpng14-14.dll", b) 'M-x list-dynamic-libraries' crashes with (wrong-type-argument characterp "J:\\Apps\\System\\MinGW\\bin\\libpng14-14.dll") after Gnus has been launched, just like it does in graphical environment.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]