[Bug 22338] New: spawnl(P_WAIT, "...") and system() do not wait if a host program is invoked
wine-bugs at winehq.org
wine-bugs at winehq.org
Sun Apr 11 07:40:22 CDT 2010
http://bugs.winehq.org/show_bug.cgi?id=22338
Summary: spawnl(P_WAIT, "...") and system() do not wait if a
host program is invoked
Product: Wine
Version: unspecified
Platform: x86
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: msvcrt
AssignedTo: wine-bugs at winehq.org
ReportedBy: bonzini at gnu.org
Sample program:
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char **argv)
{
int i;
if (argc == 2)
system (argv[1]);
for (i = 0; i < 10000; i++)
puts (argc == 2 ? "a" : "b");
}
Compile it for both Windows and Linux:
gcc test.c
i686-pc-mingw32-gcc test.c
Now, running a Windows child process will correctly wait for the child process
to finish:
$ ./a.exe ./a.exe |uniq
b
a
Instead, Wine will not wait for a Linux child process to finish:
$ ./a.exe ./a.out |uniq
a
b
a
I _think_ i can work around the bug by wrapping the Unix program with a wrapper
that links to libwine, but I am not yet sure.
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
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