Bug 1035

Summary: Возвращается управление в cmd.exe
Product: WINE@Etersoft Reporter: Константин Кондратюк <kondratyuk>
Component: Консоль ; Вызов программAssignee: Anton Rudnev <mibori>
Status: CLOSED FIXED QA Contact:
Severity: normal    
Priority: P5 CC: lav
Version: 1.0.8   
Target Milestone: ---   
Hardware: PC   
OS: Linux   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 552    

Description Константин Кондратюк 2007-12-28 18:50:26 MSK
При запуске
$ wine cmd.exe /c notepad
блокнот запускается, а управление возвращается вызывающему процессу. 
Из-за этого возникает ситуация, когда в 1С КомандаСистемы() сразу возвращает управление, хотя 1С должна дождаться завершения работы вызываемого процесса (#552).
Comment 1 Константин Кондратюк 2007-12-28 18:53:09 MSK
При запуске в wineconsole всё нормально, управление возвращается только после закрытия блокнота.
$ wineconsole cmd.exe /c notepad.exe

Можно запускать cmd только в консольном режиме. Похоже, в windows так и происходит.
Comment 2 Vitaly Lipatov 2007-12-28 19:08:29 MSK
Можно и cmd в консольном, но лучше посмотреть,
в чём отличие, почему в одном случае есть ожидание выполнения, в другом нет - по исходному коду cmd.
Comment 3 Константин Кондратюк 2007-12-28 19:12:14 MSK
В windows, кстати, с этим тоже непонятки... У нас в этом почти совпадение :)
1. 
Выполнить
cmd
notepad.exe
(запускается блокнот, управление возвращается)

2. 
Выполнить
cmd /c notepad
(запускается блокнот, cmd ждёт его закрытия, и только потом завершается сама).
Comment 4 Константин Кондратюк 2007-12-29 14:38:25 MSK
В трейсах запуска через wine и wineconsole заметно, что wineconsole вызывает 
trace:process:CreateProcessW app (null) cmdline L"cmd /c notepad"
а wine - нет.

Пока не вижу в этом каких-то закономерностей или нарушений. По-моему, нормальная ситуация, в wineconsole просто на один процесс больше запускаем.

Из прочих наблюдений: процесс explorer.exe запускается в wine после блокнота, а через wineconsole - до.
Comment 5 Anton Rudnev 2009-02-02 16:46:40 MSK
решение а баге 552