Укажите отработанное время

Отработанное время:
Продуктивное время:
Bug 7350 - Битый msiexec.exe после создания wineprefix   Make a simular bug
Summary: Битый msiexec.exe после создания wineprefix
Status: CLOSED FIXED
Alias: None
Product: WINE@Etersoft
Classification: Продукты (Products)
Component: Общее (show other bugs)
Version: 1.0.12
Hardware: PC Linux
: P1 major
Target Milestone: ---
Assignee: Александр Морозов
QA Contact: Andrey Vusik
URL:
Whiteboard:
Keywords:
Depends on:
Blocks: 7052
  Show dependency treegraph
 
In work:
Reported: 2011-06-07 13:54 MSK by Александр Морозов
Modified: 2011-09-26 14:16 MSK (History)
3 users (show)

See Also:
Заявки RT:
Связано с:
Дата напоминания:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Александр Морозов 2011-06-07 13:54:34 MSK
При создании wineprefix корректно не создаётся файл c:/windows/system32/msiexec.exe:
$ file msiexec.exe 
msiexec.exe: data

Должно быть:
$ file msiexec.exe 
msiexec.exe: PE32 executable for MS Windows (GUI) Intel 80386 32-bit

wine-etersoft-1.0.12-alt11.10
wine-etersoft-twain-1.0.12-alt11.10
wine-etersoft-sql-1.0.12-alt19
Comment 1 Александр Морозов 2011-06-07 16:57:59 MSK
Почему портится msiexec.exe, не очень понятно. Проблема возникла после патча "Close file handle before running UNIX binary (eterbug #4125)." Если точнее, то она возникает из-за того, что в данном патче в вызове ignore_locks (бывший close_lock_fd) не закрывается rw-дескриптор, необходимый для обхода бага с F_GETLK на NFS. Если этот дескриптор закрывать, то проблемы нет. Вызов ignore_locks - это хак для бага #5643, которого могло бы и не быть. Т.е. корень проблемы не в последнем патче для #4125, а в хаке для NFS. Функция server_get_unix_fd проверяет соответствие запрашиваемых прав на файл тем, с которыми он был открыт, так что если программа открыла файл только на чтение, то она не сможет вызвать для него WriteFile, даже если реально используется rw-дескриптор. Поэтому не очень ясно, каким образом хак с использованием rw-дескриптора приводит к такой проблеме. Решил вернуть закрытие rw-дескриптора.
Comment 2 Svetlana Zhukova 2011-08-11 13:38:57 MSK
ubuntu 10.10
WINE@Etersoft 1.0 Network 1.0.12-eter11.16/22
файл создается корректно:
guest@Ubuntu10:~/wine_c/windows/system32$ file msiexec.exe 
msiexec.exe: PE32 executable for MS Windows (GUI) Intel 80386 32-bit
Comment 3 Andrey Vusik 2011-08-23 13:53:25 MSK
(В ответ на comment #2)
> ubuntu 10.10
> WINE@Etersoft 1.0 Network 1.0.12-eter11.16/22
> файл создается корректно:
> guest@Ubuntu10:~/wine_c/windows/system32$ file msiexec.exe 
> msiexec.exe: PE32 executable for MS Windows (GUI) Intel 80386 32-bit

Принято