По поводу появления пустого имени файла:
у меня в директории есть файл "file:" (с двоеточием в конце). Я заметил, что если в имени файла двоеточие, то откусыается все до него, включая его самоё .
Видимо, это баг FindFirst/FindNext. Попытаюсь исследовать глубже.
При удалении файлов (UBUNTU 7.10) ПОЧТИ всегда зависает (причем так жестко, что система перестает реагировать, только мышь двигается. Ctrl-Alt-F1 удалось переключиться на текстовую консоль, но при переключении обратно все замерзло ввобще).
Похоже, виснет на Resume потока, который удаляет файлы. Но ...
Ok, но зачем тогда этот костылик присутствует [почти] везде, где FindFirst встречается в исходных кодах Lazarus?
См. например, lazarus\ide\buildmanager.pas метод
function TBuildManager.DeleteAmbiguousFiles(const Filename: string ): TModalResult; .... if ...
Об ошибках сюда можно?
В модуле ufileop.pas, процедура LoadFilesbyDir строку 98
if sr.Name='' then COntinue;
лучше раскомментировать -- у меня на Ubuntu 7.10 (Lazarus 0.9.25) при получении списка некоторых директорий (напр. мой home) FindFirst возвращает файл с пустым именем (откуда? может ...