This commit is contained in:
florian HENRY 2018-06-05 20:39:53 +02:00
commit 75305e095d
2 changed files with 18 additions and 13 deletions

View File

@ -22,6 +22,8 @@
* \brief This script create a xml checksum file * \brief This script create a xml checksum file
*/ */
if (! defined('NOREQUIREDB')) define('NOREQUIREDB','1'); // Do not create database handler $db
$sapi_type = php_sapi_name(); $sapi_type = php_sapi_name();
$script_file = basename(__FILE__); $script_file = basename(__FILE__);
$path=dirname(__FILE__).'/'; $path=dirname(__FILE__).'/';

View File

@ -1136,7 +1136,7 @@ function dol_delete_file($file,$disableglob=0,$nophperrors=0,$nohook=0,$object=n
if (preg_match('/\.\./',$file) || preg_match('/[<>|]/',$file)) if (preg_match('/\.\./',$file) || preg_match('/[<>|]/',$file))
{ {
dol_syslog("Refused to delete file ".$file, LOG_WARNING); dol_syslog("Refused to delete file ".$file, LOG_WARNING);
return False; return false;
} }
if (empty($nohook)) if (empty($nohook))
@ -1185,17 +1185,20 @@ function dol_delete_file($file,$disableglob=0,$nophperrors=0,$nohook=0,$object=n
{ {
$rel_filetodelete = preg_replace('/^[\\/]/', '', $rel_filetodelete); $rel_filetodelete = preg_replace('/^[\\/]/', '', $rel_filetodelete);
dol_syslog("Try to remove also entries in database for full relative path = ".$rel_filetodelete, LOG_DEBUG); if (is_object($db)) // $db may not be defined when lib is in a context with define('NOREQUIREDB',1)
include_once DOL_DOCUMENT_ROOT.'/ecm/class/ecmfiles.class.php';
$ecmfile=new EcmFiles($db);
$result = $ecmfile->fetch(0, '', $rel_filetodelete);
if ($result >= 0 && $ecmfile->id > 0)
{ {
$result = $ecmfile->delete($user); dol_syslog("Try to remove also entries in database for full relative path = ".$rel_filetodelete, LOG_DEBUG);
} include_once DOL_DOCUMENT_ROOT.'/ecm/class/ecmfiles.class.php';
if ($result < 0) $ecmfile=new EcmFiles($db);
{ $result = $ecmfile->fetch(0, '', $rel_filetodelete);
setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings'); if ($result >= 0 && $ecmfile->id > 0)
{
$result = $ecmfile->delete($user);
}
if ($result < 0)
{
setEventMessages($ecmfile->error, $ecmfile->errors, 'warnings');
}
} }
} }
} }
@ -1235,7 +1238,7 @@ function dol_delete_dir($dir,$nophperrors=0)
if (preg_match('/\.\./',$dir) || preg_match('/[<>|]/',$dir)) if (preg_match('/\.\./',$dir) || preg_match('/[<>|]/',$dir))
{ {
dol_syslog("Refused to delete dir ".$dir, LOG_WARNING); dol_syslog("Refused to delete dir ".$dir, LOG_WARNING);
return False; return false;
} }
$dir_osencoded=dol_osencode($dir); $dir_osencoded=dol_osencode($dir);
@ -1854,7 +1857,7 @@ function dol_uncompress($inputfile,$outputdir)
dol_syslog("Class ZipArchive is set so we unzip using ZipArchive to unzip into ".$outputdir); dol_syslog("Class ZipArchive is set so we unzip using ZipArchive to unzip into ".$outputdir);
$zip = new ZipArchive; $zip = new ZipArchive;
$res = $zip->open($inputfile); $res = $zip->open($inputfile);
if ($res === TRUE) if ($res === true)
{ {
$zip->extractTo($outputdir.'/'); $zip->extractTo($outputdir.'/');
$zip->close(); $zip->close();