[Bug 48891] Cannot run any utility from msys2/git-bash

WineHQ Bugzilla wine-bugs at winehq.org
Sat Apr 11 09:19:02 CDT 2020


https://bugs.winehq.org/show_bug.cgi?id=48891

--- Comment #7 from Damjan Jovanovic <damjan.jov at gmail.com> ---
fork() was breaking in several places. The first problem was that a thread
that's involved in freezing all other threads and copying their memory to the
child never gets started, and it doesn't get started because Cygwin expects an
APC to fire during process startup, and on Wine it doesn't. That's fixed now.

I only vaguely remember the current fork() problem, where the child is created,
the parent's memory is copied to it, but then some sanity checks are performed,
and in file winsup/cygwin/cygheap.h, it expects to find the symbol
_cygheap_start at the same address in both parent and child:

extern char _cygheap_start[] __attribute__((section(".idata")));

but on Wine they're at different addresses, which is detected by
get_cygwin_startup_info() in dcrt0.cc, and causes fork() to fail. Maybe Wine
doesn't lay out .idata sections in binaries at their correct addresses.

-- 
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.



More information about the wine-bugs mailing list