Bug 4117

Summary: Не открывается диалог сохранения в файл при печати из блокнота
Product: WINE@Etersoft Reporter: Денис Баранов <baraka>
Component: Печать ; Диалог печатиAssignee: Денис Баранов <baraka>
Status: CLOSED FIXED QA Contact: Денис Баранов <baraka>
Severity: normal    
Priority: P4 CC: lav, vitperov
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: All   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on: 4721    
Bug Blocks: 443, 4284    

Description Денис Баранов 2009-07-16 12:49:17 MSD
При печати в файл из блокнота не появляется диалог сохранения файла.
Comment 1 Виталий Перов 2009-07-16 22:11:01 MSD
Денис, проверь, пожалуйста, ещё раз.

Завёл новую бутылку bugs/2984. Как через wine, так и через ww всё прекрасно работает.
Посылается ли задание на принтер проверить не смог (какие-то проблемы с Firefox), но диалог точно показывается
Comment 2 Денис Баранов 2009-07-16 22:21:52 MSD
(In reply to comment #1)
> Денис, проверь, пожалуйста, ещё раз.
Проверил.

> Завёл новую бутылку bugs/2984. Как через wine, так
> и через ww всё прекрасно работает.
> Посылается ли задание на принтер проверить
> не смог (какие-то проблемы с Firefox), но диалог
> точно показывается
Ставлю галку "Сохранить в файл", нажимаю печать, ничего не происходит.
При трейсе настараживает:
warn:file:wine_nt_to_unix_file_name L"WINEPS.DRV" not found in /net/wine/bottles/bugs/.wine-2984/dosdevices/c:
trace:file:RtlDosPathNameToNtPathName_U (L"C:\\windows\\system32\\WINEPS.DRV",0x32e248,(nil),(nil))
trace:file:RtlGetFullPathName_U (L"C:\\windows\\system32\\WINEPS.DRV" 520 0x32dfc8 (nil))
warn:file:wine_nt_to_unix_file_name L"WINEPS.DRV" not found in /net/wine/bottles/bugs/.wine-2984/dosdevices/c:/windows/system32
trace:file:RtlDosPathNameToNtPathName_U (L"C:\\windows\\system\\WINEPS.DRV",0x32e248,(nil),(nil))
trace:file:RtlGetFullPathName_U (L"C:\\windows\\system\\WINEPS.DRV" 520 0x32dfc8 (nil))
warn:file:wine_nt_to_unix_file_name L"WINEPS.DRV" not found in /net/wine/bottles/bugs/.wine-2984/dosdevices/c:/windows/system
trace:file:RtlDosPathNameToNtPathName_U (L"C:\\windows\\WINEPS.DRV",0x32e248,(nil),(nil))
trace:file:RtlGetFullPathName_U (L"C:\\windows\\WINEPS.DRV" 520 0x32dfc8 (nil))
Comment 3 Виталий Перов 2009-07-16 22:56:20 MSD
Да, прошу прощения.
Не то делал. Теперь вижу, что воспроизводится
Comment 4 Виталий Перов 2009-07-16 23:39:55 MSD
Да, достаточно интересное поведение. Ещё не встречал ни одной программы, которая бы так себя вела.

Если происходит печать в файл, то, к моменту вызова StartDoc выбранное имя файла уже должно содержаться в doc->lpszOutput.
Т.е к моменту вызова StartDoc диалог выбора файла должен быть вызван!

Проверил через wwo - бага присутствует.
Вероятно сломали что-то в диалоге печати.
Comment 5 Vitaly Lipatov 2010-01-05 18:59:17 MSK
Воспроизводится на 1.0.12 и на eterhack
Comment 6 Виталий Перов 2010-02-05 18:50:10 MSK
doc->lpszOutput = NULL
physDev->job.output = "FILE"

При этом диалог с выбором файла так и не появляется

Думаю проблема не в wineps.drv - к моменту вызова StartDocA имя файла должно быть уже известно. Проблема где-то в диалоге печати
Comment 7 Виталий Перов 2010-02-10 16:37:14 MSK
Проверил в версии pure 1.1.38. Диалог с выбором файла также не появляется
Comment 8 Виталий Перов 2010-02-10 17:20:28 MSK
Похожая бага есть на winehq.org:
http://bugs.winehq.org/show_bug.cgi?id=3975
Comment 9 Виталий Перов 2010-02-25 19:28:34 MSK
Разобрался. Программа должна сама проверять установлен ли пользователем флаг печати в файл. И если установлен, то запрашивать у него имя файла
Comment 10 Виталий Перов 2010-02-25 20:03:06 MSK
Добавил в notepad диалог запроса имени файла.
Сделал патч. Отправил в winehq
Comment 11 Виталий Перов 2010-03-01 16:14:02 MSK
Патч принят.
Начиная с версии 1.1.40 появится в eterhack.
Необходимо проверить
Comment 12 Vitaly Lipatov 2010-03-01 22:59:21 MSK
Сейчас в 1.0.12 приложите, пожалуйста (патч в нашу рассылку wine-patches)
Comment 13 Виталий Перов 2010-03-07 14:41:30 MSK
Отправил патч в рассылку
Comment 14 Денис Баранов 2010-03-07 16:01:33 MSK
WINE@Etersoft 1.0.12 eter3.1/eter2.
Проверил.
Принято.