

crle=malloc(256*sizeof(int));
if (!crle) ER_throwVar(ER_MEMORY);
...
memset(crle,0,sizeof(crle));
->
crle=malloc(256*sizeof(int));
if (!crle) ER_throwVar(ER_MEMORY);
...
memset(crle,0,256*sizeof(int));
En fait juste avant la release j'avais transformé crle qui était un tableau statique en tableau alloué dynamiquement (donc en pointeur), sans changer le code de réinitialisation

Et pour la release, j'avais fait des tests sur VTI, avec une RAM resettée, donc le tableau était qd même à 0... J'ai aussi fait des tests dans des conditions plus réalistes, mais :
* ça ne bugge pas tjs, c'est en fait relativement probable que le fichier généré soit un fichier correct, mais prenant quelques octets en plus (< 10 octets) parce que la compression RLE n'est pas totalement optimale
* dans les cas où ça bugge, ça bugge de manière subtile : ça change juste quelques lettres doubles au milieu du fichier, mais ça ne change ni la taille ni, dans 99% des cas, le type

Donc pour mes tests de compression de répertoires, j'ai regardé le début de qques fichiers, j'ai vérifié que c'étaient bien des fichiers texte avec la bonne taille (en principe ce critère est suffisant pour déterminer 80% des bugs de compression), mais je n'ai pas vérifié qu'ils étaient bien tous égaux bit à bit...
Vraiment désolé, j'avais déjà eu un ou deux bug report, mais je n'avais pas réussi à les reproduire jusque là

(et pour cause) Et puis je m'étais déjà servi très intensivement de XPak sur ma calc, mais c'était avant que je fasse les qqs optimisations mineures pour la release...
Je vais releaser XPak 1.1, et si j'ai le courage de finir l'ajout du pretty print à uView, je vais releaser une nouvelle version de uView aussi... En attendant, je vous déconseille vivement d'utiliser la compression si vous tenez à vos fichiers
