Bug 3902

Summary: Архивное Дело: Не указать путь установки
Product: WINE@Etersoft Reporter: Денис Баранов <baraka>
Component: Установка программ / MSIAssignee: Илья Шпигорь <shpigor>
Status: CLOSED LATER QA Contact: Денис Баранов <baraka>
Severity: major    
Priority: P3 CC: baraka, kondratyuk, lav, night, vitperov
Version: 1.0.10   
Target Milestone: ---   
Hardware: PC   
OS: All   
Whiteboard:
Заявки RT: Связано с:
Дата напоминания:
Bug Depends on:    
Bug Blocks: 42, 3872, 5101    

Description Денис Баранов 2009-05-04 15:06:03 MSD
При установке программа не дает выбрать путь для установки, а пытается установиться непонятно куда.
Comment 1 Денис Баранов 2009-05-04 15:10:05 MSD
Лежит тут: Windows/DB/Archivnoe Delo
Comment 2 Виталий Перов 2009-05-04 16:11:44 MSD
А на винде проверял?
Не совсем понятно в чём заключается отличие? Не показывается диалог выбора или сам выбор не активен, или активен, но не работает?
Comment 3 Денис Баранов 2009-05-04 16:28:12 MSD
(In reply to comment #2)
> А на винде проверял?
> Не совсем понятно в чём заключается
> отличие? Не показывается диалог выбора или
> сам выбор не активен, или активен, но не
> работает?
> 
Диалог показывается, но не позволяет не перейти ни на диск C ни куда, только какая то странная папка. На винде покащывается список дисков и переходится без проблем.
Comment 4 Виталий Перов 2009-05-04 16:49:46 MSD
Да, вижу проблему.
И вообще диалог выбора файла/папки выглядит очень стронно. Пробовал и wine и wine98 - различий нет.

В консоле при попытке щёлкнуть на контролы внутри диалога:
err:msi:msi_dialog_onkillfocus Invalid path L"EOS\\"
Comment 5 Илья Шпигорь 2009-08-27 11:20:21 MSD
Проблема заключается в том, что путь извлекаемый из msi пакета относительный - "EOS\\". Wine принимает это значение в качестве каталога назначения. При открытии диалога выбора файла, навигация по каталогам осуществляется на основе текущего пути. При переходе к родительскому каталогу, wine убирает из текущего пути все, что находится правее последнего разделителя '\\'. Поэтому выбрать каталог установки не удается.

Решение заключается в том, чтобы при извлечении из msi пакета пути назначения, проверять является ли он относительным. Если да, то добавлять к нему имя диска.

Также патчи решают проблему обновления static контрола, в котором отображается выбранный в диалоге путь установки.
Comment 6 Andrey Vusik 2009-09-24 16:54:20 MSD
WINE@Etersoft 1.0 SQL 1.0.11-eter8.3/4

Уже лучше чем было. Но есть следующие недочёты:

1) Выбирать путь можно только в пределах диска C:
2) Сколько раз нажимаешь стрелку назад, столько раз появляется путь диска С: в верхнем выпадающем списке.
3) Невозможно создать новую папку.

Откладываем.
Comment 7 Виталий Перов 2011-04-13 13:16:06 MSK
Откатил патч:

commit 26f70cd2948b2bbddd16f6630ef46352fa9d3c4a
Author: Vitaly Perov <vitperov@etersoft.ru>
Date:   Thu Feb 11 20:04:30 2010 +0300

    msi: Add the drive letter to the relative target paths (eterbug #3902)
Comment 8 Vitaly Lipatov 2014-09-11 18:34:31 MSK
Для тех, кто не пользуется багзиллой или не умеет пользоваться групповым редактированием при поиске, закрываем задачи, которые они должны были принять.