>Форум Mozilla Россия http://forum.mozilla-russia.org/index.php >Firefox http://forum.mozilla-russia.org/viewforum.php?id=4 >Лиса не устанавливает "рабочию папку" - критический баг! http://forum.mozilla-russia.org/viewtopic.php?id=49031 |
Keepun > 30-03-2011 04:59:04 |
Все качаем через Лису и запускаем из нее скаченные прожки. Суть бага: Для непосвященных поясняю. При запуске программы ей присваивается переменные среды. (Что увидеть их, нужно в консоль ввести "set".) Так вот переменная PWD отвечает за Рабочию папку. То есть для Лисы она у многих = "c:\Program Files\Mozilla Firefox\", если вы сами ее не меняли. Сама программа может ее менять, но это редко нужно. Это и есть относительный путь. При указании создать файл "new.txt" без указания абсолютного пути система поставит строку из PWD и для Лисы это будет "c:\Program Files\Mozilla Firefox\new.txt". Проблема в том, что при запуске прожки из Лисы ей автоматически присваивается Лисья PWD. В этоге программа может случайно испортить вам содержимое c:\Program Files\Mozilla Firefox\ (Особенно, если вы по глупости работаете с правами Админа) Разработчики браузеров должны позаботится о задании правильной переменной PWD при открытии файлов. Запостите на багзиллу плиз... |
Buzzzzer > 30-03-2011 10:39:28 |
Это не переменные среды, а "current directory" - текущая рабочая директория, откуда запущена программа, а не путь, где лежит exшник проги, так что с точки зрения , имхо, всё верно. |
Keepun > 30-03-2011 19:07:13 |
Buzzzzer, http://msdn.microsoft.com/en-us/library/ms682425.aspx изучи параметр LPCTSTR lpCurrentDirectory Если программа запускает стороннию прожку, то во избежании проблем с папками CurrentDirectory должен быть задан новый. Под Линь эта проблема менее актуальна. 30-03-2011 19:11:08 Buzzzzer пишет
Тут банальная работа консоли, когда файл должен быть создан по месту вызова, а не в папке самой проги (например ProgramFiles или /usr/bin/) |
Keepun > 30-03-2011 19:47:02 |
https://bugzilla.mozilla.org/show_bug.cgi?id=646486 |
Buzzzzer > 31-03-2011 10:00:23 |
Всё же, я не согласен. Keepun пишет
Это ж пример. Ну, например, я периодически пользуюсь мелкими утилитами, которым через командную строку передаю что либо, и которые у меня расшарены в Path. |