This is the mail archive of the cygwin-patches 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]

[PATCH] Add an additional relocation attempt pass to load_after_fork()


Attached is a patch which avoids a fork failure due to remap error in the
specific circumstances described in my email [1], by adding an additional pass
to load_after_fork() which forces the DLL to be relocated by VirtualAlloc()ing
a block of memory at the load address as well.

Hopefully it can be seen by inspection that this code doesn't change the
behaviour of the first two passes, and so will only be changing the behaviour
in what was an fatal error case before.

[1] http://cygwin.com/ml/cygwin/2011-03/msg00373.html

Attachment: dll_init.patch
Description: Text document


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