diff --git a/programs/fs/Eolite/trunk/Eolite.c-- b/programs/fs/Eolite/trunk/Eolite.c-- index 656df7fa31..bad44c9303 100644 --- a/programs/fs/Eolite/trunk/Eolite.c-- +++ b/programs/fs/Eolite/trunk/Eolite.c-- @@ -592,7 +592,7 @@ void Open_Dir(dword temp_, redraw){ if (somelen) path_[somelen]=NULL; if (buf) free(buf); - buf = malloc(512); + buf = malloc(32); errornum=ReadDir(0, buf, #path_); if (errornum<>0) //ошибка при чтении папки { @@ -602,10 +602,9 @@ void Open_Dir(dword temp_, redraw){ return; } count = ESDWORD[buf+8]; - buf = realloc(count * 304 + 512, buf); //почему 32? + buf = realloc(count * 304 + 32, buf); //почему 32? ReadDir(count, buf, #path_); count=EBX; - if (count>sizeof(file_mas)) count=sizeof(file_mas); } if (count<>-1) { @@ -633,7 +632,7 @@ inline Sorting() { dword k=0, l=1; - if (!strcmp(#path,"/")) //|| (count > 5000) //не сортировать папки и не менять регистр в "/" + if (!strcmp(#path,"/")) || (count > 5000) //не сортировать папки и не менять регистр в "/" { FOR(k=1;k0) //если папка ".." не первая, ставим её туда - { - FOR(k--; k>0; k--;) { IF (!strcmp(file_mas[k]*304+buf+72,"..")) file_mas[k]>0) && (strcmp(file_mas[0]*304+buf+72,"..")<>0) FOR(k--; k>0; k--;) IF (!strcmp(file_mas[k]*304+buf+72,"..")) file_mas[k]>