Page 11 of 13
Re: Ошибки файловой системы
Posted: Tue Mar 06, 2018 6:58 pm
by Leency
theonlymirage писал в
http://board.kolibrios.org/viewtopic.ph ... 032#p70031
Либо ошибся я, либо ls в корневой директории у меня не работает из-за ошибки в 70-ой и как следствие в 80-ой функции (можно списать на документацию). Правда в том, что я могу сделать конвертацию UTF16LE <-> ASCII и обойти проблему. Саму ошибку искать только буду - можете меня опередить (магия где-то в этом файле:
http://websvn.kolibrios.org/filedetails ... fs_lfn.inc ).
Суть в том, что например 2, '/', 0, 'c', 0, 'd', 0, '2', 0, '/', 0, 0, 0 корректный путь, а db 2, '/', 0, 0, 0 не корректно. Во втором случае ядро считает абсолютный путь относительным, что не соответствует документации.
Выдержка из документации: "Можно указать кодировку строки, поместив в её начале байт." Более того: "В абсолютном пути можно поместить этот байт после '/' или добавить дополнительный '/' перед ним." Все случаи не тестировал, но для некоторых это тоже не работает. Возможно документация устарела.
Re: Ошибки файловой системы
Posted: Tue Mar 06, 2018 8:55 pm
by 0CodErr
Про путь приложения, кодировки и префиксы у нас есть целая тема
http://board.kolibrios.org/viewtopic.php?f=2&t=3429
Re: Ошибки файловой системы
Posted: Wed Mar 07, 2018 11:23 pm
by Siemargl
В процессе СтарТрека выяснилось, что побайтовое чтение с дискеты fd1 в сотни/тысячи раз дольше, чем с tmp1/
Либу я поправлю - на кэширование, но возможно есть баг в самой фс (ну или в вмваре)
Re: Ошибки файловой системы
Posted: Sun May 13, 2018 9:09 pm
by Leency
Pathoswithin
Файл с именем содержащим тире не может быть прочитан на NTFS
Spoiler:
-
bug — dash.jpg (3.05 KiB)
Viewed 11567 times
Re: Ошибки файловой системы
Posted: Mon May 14, 2018 12:17 am
by Pathoswithin
Не может быть прочитан через юникод? А то в ср866 тире нету.
Re: Ошибки файловой системы
Posted: Mon May 14, 2018 9:03 am
by Leency
СР866. Что делать с такими файлами?
Символ распространенный. Появляется при копировании элемента в ту же папку: "Коики -- копия.jpg". Может его в дефис конвертировать или как по-другому?
80 функция обратно совместима с 70, но при этом позволяет работать с такими вот именами?
Кстати та же проблема с украинским буквами: Димна сум_ш.
Re: Ошибки файловой системы
Posted: Tue May 15, 2018 10:45 am
by 0CodErr
Leency wrote:Файл с именем содержащим тире не может быть прочитан на NTFS
Такое стало происходить после некоторых правок в ядре. А раньше вроде как это работало.
И это уже обсуждалось ранее
http://board.kolibrios.org/viewtopic.ph ... 235#p66231
Я предлагал сделать "
Примерно как с короткими именами в FAT"
Наверняка из-под
Windows доступ к таким файлам имеется даже через
CreateFileA|
FindFirstFileA . Если так — решение есть, нужно лишь реализовать его.
Re: Ошибки файловой системы
Posted: Thu Oct 04, 2018 8:55 pm
by Leency
Pathoswithin
В результате ревизии #6867,
RtfRead при открытии без параметра читает содержимое неизвестно чего, но судя по всему пытается открыть весь диск как RTF.
Можешь глянуть?
Re: Ошибки файловой системы
Posted: Fri Oct 05, 2018 9:16 am
by Pathoswithin
Я то глянул... http://websvn.kolibrios.org/comp.php?repname=Kolibri+OS&compare[]=%2F@6866&compare[]=%2F@6867
Только нужно больше информации.
Может я исправил какой-то баг, который считался фичей?
Re: Ошибки файловой системы
Posted: Fri Oct 05, 2018 11:23 am
by Leency
Я думаю баг в rtfread, лучше его глянь.
Re: Ошибки файловой системы
Posted: Sun Jan 31, 2021 7:54 am
by Kenshin
А это нормально, что файловая подсистема позволяет пользователю создавать папки "." и ".."?
Re: Ошибки файловой системы
Posted: Sun Jan 31, 2021 6:12 pm
by Pathoswithin
Ну, в FAT они не создадутся, так как уже существуют, а для остальных файловых систем это просто обычные папки.
Re: Ошибки файловой системы
Posted: Sun Jan 31, 2021 7:22 pm
by Kenshin
А в корневых директориях /rd/1/ /fd/1/ /tmp0/1/ и т.д. должны ли они создаваться? После такого в другой системе, примонтировавшей такой диск можно увидеть две папки "..".
Re: Ошибки файловой системы
Posted: Wed Feb 03, 2021 11:05 pm
by Pathoswithin
По логике наверно не должны, но и проблемы из-за этого вряд ли возникнут.
Re: Ошибки файловой системы
Posted: Sat Jun 19, 2021 6:35 pm
by Leency
Нашёл ошибку в ФС. Если приложение создаёт файл и размер файла больше размера памяти приложения, то имеем полное зависание.
Воспроизводится на последней ревизии, так и на древней svn7576-img.
Code: Select all
#define MEMSIZE 1024*10
#include "../lib/kolibri.h"
#include "../lib/fs.h"
void main()
{
CreateFile(12791, 0, "/tmp0/1/0.raw");
notify("'Success' -O"); //если 12791>1024*10 то успеха не будет :)
ExitProcess();
}