https://bugs.winehq.org/show_bug.cgi?id=53103
Eric Pouech eric.pouech@orange.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |ASSIGNED
--- Comment #3 from Eric Pouech eric.pouech@orange.fr --- looking a bit into it: - it seems that at installation, ie8 sets up a service (spupdsvc.exe). At first invocation of ie8 (but also at first invocation of any program), this service spawns a few more processes (reg.exe and regsvr32.exe) for further init - each of these process creations generate (now, with patch mentioned in #1) a couple of console creation, which make the runtime of spupdsvc.exe much longer - I didn't find simple sync mechanism between ie and this service (may be there are but they don't trigger) - at the end, ie8 terminates
Disabling (dirty hack) console creation when spawning a new CUI process from a running service makes ie8 run fine again. This likely confirms this bug is a side effect of f034084d49b354811096524d472ae5172ac1cebf (and further commits)
but this opens two areas of investigation:
1) CreateProcess() behaviour from a service ------------------------------------------- - it's likely that no console is created under windows in this case, especially with user app now running outside of session #0 (but that wine doesn't properly handle yet) - but it has also to be looked into if it's inherited from attributes of session 0 (no display...), or hard-wired in CreateProcess, or something else
2) the lack of effective synchronization ---------------------------------------- the lack of sync between ie8 and spupdsvc looks suspicious too. Is wine missing some bits (I didn't find simple stuff, but there may be). Or there are none (on windows, as services is started even before user logs in, it's likely there more time for doing the init - even it's likely there are more services)
All the processes to be run are listed in: - c:\windows\system32\spupdsvc.inf under the [ProcessesToRunAfterReboot] entry - the .inf file is erased when after first run of spupsvc.exe
until 1) & 2) are further analysed, I don't see simple fix at hand :-(
workaround: ========== We need to ensure that spupdsvc.exe finishes before starting ie8 (ie start any other program and wait for the whole session termination). For example:
./wine ping && ./server/wineserver -w
when back to prompt, running ie8 should work
(and this make debugging & testing painful as a new clean prefix + ie8 installation is needed each time, or clone the prefix after winetricks finishes but before launching any other program in the prefix)