Search found 3943 matches

by Serge
Fri Nov 25, 2016 9:06 pm
Forum: Drive subsystem
Topic: Ошибки файловой системы
Replies: 187
Views: 109091

Re: Ошибки файловой системы

Pathoswithin
Пользователям всё равно, что оно раньше неправильно работало, а теперь правильно не работает. Я понимаю, что ты хотел как лучше, но зачем делать как всегда ? Создай бранч и там тестируй.
by Serge
Fri Nov 25, 2016 9:03 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: Путь приложения

Вот для этого сначала создают бранч, тестируют, а потом коммитят в транк.
by Serge
Fri Nov 25, 2016 8:10 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

0CodErr
Я с тобой полностью согласен. Моё предложение касалось быстрого исправления проблемы с абсолютными путями. То, что всё хуже, чем нам кажется и вылезут проблемы о которых мы пока не знаем, я не сомневаюсь.

Перенёс сообщения. Вторая тесно связанная тема Ошибки файловой системы
by Serge
Fri Nov 25, 2016 7:05 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

0CodErr
Теперь первые два байта можно скипать. В любом случае абсолютный путь остаётся абсолютным.
by Serge
Thu Nov 24, 2016 3:44 am
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

В никсах передаётся в вершине стека. Подробно расписано в System V Application Binary Interface страница 54 Process Stack and Registers Кодировка строк не определена, могут быть и в utf-8. Строки нуль терминированные. В Windows при помощи GetCommandLineW(). Сама строка скорее всего так же хранится в...
by Serge
Thu Nov 24, 2016 12:25 am
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Меняем каталог cwd, запускаем из шелл, например kfm или kfar - Они опять в /rd/1
На что меняем ? Ты про это:
Kfar и KFM после запуска показывают на левой панели /rd/1/ и /hd0/1/ на правой. Это by design.
Оба кстати меняют текущий каталог при навигации.
by Serge
Thu Nov 24, 2016 12:17 am
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Siemargl
Всё правильно. Shell расположен в /rd/1. Скопируй shell в /tmp0/1 и запусти оттуда.
by Serge
Wed Nov 23, 2016 11:44 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Siemargl
Уже много раз обсуждалось. Наследуется от родительского процесса. Как и должно быть. Это не проблема ядра, там с текущим каталогом всё (почти) правильно.
by Serge
Wed Nov 23, 2016 11:42 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Pathoswithin
Если интересует, как обрабатывается Unicode в сишных программах, посмотри GLib. Там все строки хранятся в utf8. Для вызовов WinAPI строки конвертируются из utf8 в utf16. Linux понимает utf8. При этом специальные байты для обозначения кодировки не применяются.
by Serge
Wed Nov 23, 2016 11:26 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Pathoswithin wrote:Serge
А зачем префикс перед именем? Откуда такие имена возьмутся?
Т.е. я не могу прочитать "♥мой_файл" из текущего каталога ? Обязательно полный путь формировать надо ?
Siemargl wrote:Заодно предлагаю решить проблему рабочего каталога, который ни к чему не привязан.
Что значит не привязан ?
by Serge
Wed Nov 23, 2016 10:39 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Лучше всего сделать отдельные функции для utf кодировки. Ещё в копилку gboolean g_path_is_absolute (const gchar *file_name) { g_return_val_if_fail (file_name != NULL, FALSE); if (G_IS_DIR_SEPARATOR (file_name[0])) return TRUE; #ifdef G_OS_WIN32 /* Recognize drive letter on native Windows */ if (g_as...
by Serge
Wed Nov 23, 2016 10:31 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

В результате с именами "♥мой_файл" будут проблемы.
Префикс перед именем - скверная идея.
by Serge
Wed Nov 23, 2016 10:11 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Pathoswithin Тогда пусть будет 2 байта для абсолютного пути. Потенциально сломаны все программы слинкованные с newlib или menuetlibc. Не работает пока ваша юникода. см.чат. Потому, что нарушена совместимость с POSIX и абсолютный путь превратился локальный if (filename[0]=='/') { strcpy(buf,filename...
by Serge
Wed Nov 23, 2016 9:08 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Pathoswithin 1.MENUET02 заголовок для программ с поддержкой thread local storage. 2.Не надо заголовок. Считать, что путь в программу и текущий каталог передаётся в utf-8, без префиксных байтов. Если очень нужен префикс, пусть будет два байта /☺ /☻ /♥ для абсолютных путей и один байт для относительн...
by Serge
Wed Nov 23, 2016 8:37 pm
Forum: Coding
Topic: Путь приложения
Replies: 235
Views: 94142

Re: "Ночные" сборки KolibriOS

Pathoswithin wrote:Я понимаю, что тебе нравиться принцип "не ошибается тот, кто ничего не делает"
Я внёс дохренища изменений в ядро сохраняя совместимость. Ты на ровном месте сломал совместимость с POSIX, превратив абсолютные пути в локальные