Mot-clef « Zip »

Altération des archives gzip lors d'un téléchargement

Il y a quelque temps, j'ai mis en ligne un pack de smileys pour le logiciel de messagerie instantanée Pidgin. Ce pack contient les smileys utilisés sur mes forums, comme je l'avais déjà fait pour Adium (car oui, Adium est excellent mais ne tourne que sur Mac, donc quand on est sous Windows, il faut se rabattre sur autre chose et Pidgin reste le moins mauvais que j'ai pu trouver...).

Pour générer ce pack, j'ai utilisé le convertisseur que j'avais déjà codé pour le pack Adium et qu'il serait temps que je finalise pour le publier...

Mais là n'est pas le propos de cette note. En effet, j'ai constaté plus tard, quand certaines personnes ont voulu exploiter ce pack, que le pack ne s'installait pas systématiquement. En fait le problème vient du fait que Firefox (de même qu'Opera et Safari dans leurs dernières versions) altère légèrement le fichier du pack qui est une archive gzip.

En effet quand j'ouvre le fichier téléchargé, au lieu de trouver directement dedans le fichier .tar que je devrais y trouver, je tombe sur une sorte de dossier intermédiaire du nom du fichier. Ce "dossier" apparait lors du téléchargement uniquement puisqu'il n'est pas présent sur le fichier avant l'envoi, pas plus que lors d'un téléchargement via IE6 (eh oui, j'ai encore de vieux trucs sur mon PC, même si je ne m'en sers que pour des tests :p).

Je n'ai testé ça que sous Windows et je ne sais pas ce qu'il en est des versions Linux et Mac de ces différents navigateurs mais sur Windows le problème est réel (du moins pour des archives publiées via un site tournant sous WordPress, mais je ne pense pas que ça vienne de là).

Je soupçonne que ça puisse venir de l'aptitude qu'ont les navigateurs à recevoir de pages compressés en gzip par le serveur et de les décompresser à la volée : l'archive étant dans ce format, peut-être le navigateur fait-il un truc pas net avec ? Peut-être aussi qu'il y aurait des en-têtes particuliers à envoyer pour résoudre le problème... ou peut-être pas.

Quoiqu'il en soit, la solution la plus simple que j'ai trouvée pour l'instant reste de fournir une archive .zip contenant l'autre archive. Là, pas de problème, il n'y a pas d'altération.