Skip to content
Extraits de code Groupes Projets
Valider aca040eb rédigé par cedric@yterium.com's avatar cedric@yterium.com
Parcourir les fichiers

Fix http://core.spip.org/issues/2938 : quand on met un zip dans tmp/ le...

Fix http://core.spip.org/issues/2938 : quand on met un zip dans tmp/ le memoriser dans la session pour le nettoyer au hit suivant si ce n'est pas un $_POST (ie si on a abandonne l'upload/deballage). Au passage on met les zip dans un sous dossier tmp/zip/ plutot que directement dans tmp/
parent d7904fe8
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Aucune requête de fusion associée trouvée
...@@ -214,10 +214,14 @@ function joindre_verifier_zip($files){ ...@@ -214,10 +214,14 @@ function joindre_verifier_zip($files){
// Est-ce qu'on sait le lire ? // Est-ce qu'on sait le lire ?
include_spip('inc/pclzip'); include_spip('inc/pclzip');
if ($zip if ($zip
AND $archive = new PclZip($zip) AND $archive = new PclZip($zip)
AND $contenu = joindre_decrire_contenu_zip($archive) AND $contenu = joindre_decrire_contenu_zip($archive)
AND rename($zip, $tmp = _DIR_TMP.basename($zip)) AND $tmp = sous_repertoire(_DIR_TMP,"zip")
){ AND rename($zip, $tmp = $tmp.basename($zip))
){
$zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean'])?unserialize($GLOBALS['visiteur_session']['zip_to_clean']):array());
$zip_to_clean[] = $tmp;
session_set('zip_to_clean',serialize($zip_to_clean));
$contenu[] = $tmp; $contenu[] = $tmp;
return $contenu; return $contenu;
} }
......
...@@ -20,6 +20,19 @@ ...@@ -20,6 +20,19 @@
// sécurité // sécurité
if (!defined('_ECRIRE_INC_VERSION')) return; if (!defined('_ECRIRE_INC_VERSION')) return;
// nettoyer les zip abandonnes par l'utilisateur
if (isset($GLOBALS['visiteur_session']['zip_to_clean'])
AND test_espace_prive()
AND $_SERVER['REQUEST_METHOD']!=='POST'){
$zip_to_clean = unserialize($GLOBALS['visiteur_session']['zip_to_clean']);
if ($zip_to_clean){
foreach ($zip_to_clean as $zip){
if (@file_exists($zip))
@unlink($zip);
}
}
session_set('zip_to_clean');
}
/** /**
* Afficher la puce de statut pour les documents * Afficher la puce de statut pour les documents
......
<paquet <paquet
prefix="medias" prefix="medias"
categorie="multimedia" categorie="multimedia"
version="2.9.12" version="2.9.13"
etat="stable" etat="stable"
compatibilite="[3.0.0;3.1.*]" compatibilite="[3.0.0;3.1.*]"
logo="prive/themes/spip/images/portfolio-32.png" logo="prive/themes/spip/images/portfolio-32.png"
......
0% Chargement en cours ou .
You are about to add 0 people to the discussion. Proceed with caution.
Veuillez vous inscrire ou vous pour commenter