Changeset 85602 in spip-zone


Ignore:
Timestamp:
Oct 25, 2014, 1:25:28 PM (6 years ago)
Author:
cedric@…
Message:

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/

Location:
_core_/plugins/medias
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _core_/plugins/medias/inc/joindre_document.php

    r79783 r85602  
    215215                include_spip('inc/pclzip');
    216216                if ($zip
    217                  AND $archive = new PclZip($zip)
    218                  AND $contenu = joindre_decrire_contenu_zip($archive)
    219                  AND rename($zip, $tmp = _DIR_TMP.basename($zip))
    220                  ){
     217                        AND $archive = new PclZip($zip)
     218                  AND $contenu = joindre_decrire_contenu_zip($archive)
     219                        AND $tmp = sous_repertoire(_DIR_TMP,"zip")
     220                  AND rename($zip, $tmp = $tmp.basename($zip))
     221                  ){
     222                        $zip_to_clean = (isset($GLOBALS['visiteur_session']['zip_to_clean'])?unserialize($GLOBALS['visiteur_session']['zip_to_clean']):array());
     223                        $zip_to_clean[] = $tmp;
     224                        session_set('zip_to_clean',serialize($zip_to_clean));
    221225                        $contenu[] = $tmp;
    222226                        return $contenu;
  • _core_/plugins/medias/medias_fonctions.php

    r85478 r85602  
    2121if (!defined('_ECRIRE_INC_VERSION')) return;
    2222
     23// nettoyer les zip abandonnes par l'utilisateur
     24if (isset($GLOBALS['visiteur_session']['zip_to_clean'])
     25  AND test_espace_prive()
     26  AND $_SERVER['REQUEST_METHOD']!=='POST'){
     27        $zip_to_clean = unserialize($GLOBALS['visiteur_session']['zip_to_clean']);
     28        if ($zip_to_clean){
     29                foreach ($zip_to_clean as $zip){
     30                        if (@file_exists($zip))
     31                                @unlink($zip);
     32                }
     33        }
     34        session_set('zip_to_clean');
     35}
    2336
    2437/**
  • _core_/plugins/medias/paquet.xml

    r85597 r85602  
    22        prefix="medias"
    33        categorie="multimedia"
    4         version="2.9.12"
     4        version="2.9.13"
    55        etat="stable"
    66        compatibilite="[3.0.0;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.