From defe46a8bdfb2717d0fc1c60ae1205cac8b5c4d1 Mon Sep 17 00:00:00 2001 From: "Kirill Lipatov (Leency)" Date: Wed, 9 Jan 2013 00:17:47 +0000 Subject: [PATCH] eoeolite: try to fix it #2 (hmm... program compiled on my PC works fine) git-svn-id: svn://kolibrios.org@3152 a494cfbc-eb01-0410-851d-a64ba20cac60 --- programs/fs/Eolite/trunk/Eolite.c-- | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) 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]>