[CRT] Do Not lock ioinfo when spawning functions (#4099) CORE-15176

This fixes CORE-15176 'Gimp 2.6.11 hangs when opening a file'.
It regressed by 0.4.9-dev-446-g bffd8201d0

I do intend to port this fix back.
This commit is contained in:
Doug Lyons 2021-11-11 11:30:43 -06:00 committed by GitHub
parent 0ae3805375
commit 252a7530d0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -434,7 +434,7 @@ unsigned create_io_inherit_block(WORD *size, BYTE **block)
for (fd = 0; fd < last_fd; fd++)
{
/* to be inherited, we need it to be open, and that DONTINHERIT isn't set */
fdinfo = get_ioinfo(fd);
fdinfo = get_ioinfo_nolock(fd);
if ((fdinfo->wxflag & (WX_OPEN | WX_DONTINHERIT)) == WX_OPEN)
{
*wxflag_ptr = fdinfo->wxflag;
@ -445,7 +445,6 @@ unsigned create_io_inherit_block(WORD *size, BYTE **block)
*wxflag_ptr = 0;
*handle_ptr = INVALID_HANDLE_VALUE;
}
release_ioinfo(fdinfo);
wxflag_ptr++; handle_ptr++;
}
return TRUE;