revert removal of permission properties

This commit is contained in:
uwetews
2015-08-23 18:46:32 +02:00
parent 470cd186c4
commit d67acf7e9a
2 changed files with 18 additions and 6 deletions

View File

@@ -647,6 +647,20 @@ class Smarty extends Smarty_Internal_TemplateBase
*/
public $start_time = 0;
/**
* default file permissions
*
* @var int
*/
public $_file_perms = 0644;
/**
* default dir permissions
*
* @var int
*/
public $_dir_perms = 0771;
/**
* required by the compiler for BC
*

View File

@@ -29,16 +29,14 @@ class Smarty_Internal_Write_File
{
$_error_reporting = error_reporting();
error_reporting($_error_reporting & ~E_NOTICE & ~E_WARNING);
$_file_perms = property_exists($smarty, '_file_perms') ? $smarty->_file_perms : 0644;
$_dir_perms = property_exists($smarty, '_dir_perms') ? (isset($smarty->_dir_perms) ? $smarty->_dir_perms : 0777) : 0644;
if ($_file_perms !== null) {
if ($smarty->_file_perms !== null) {
$old_umask = umask(0);
}
$_dirpath = dirname($_filepath);
// if subdirs, create dir structure
if ($_dirpath !== '.' && !file_exists($_dirpath)) {
mkdir($_dirpath, $_dir_perms, true);
mkdir($_dirpath, $smarty->_dir_perms === null ? 0777 : $smarty->_dir_perms, true);
}
// write to tmp file, then move to overt file lock race condition
@@ -78,9 +76,9 @@ class Smarty_Internal_Write_File
error_reporting($_error_reporting);
throw new SmartyException("unable to write file {$_filepath}");
}
if ($_file_perms !== null) {
if ($smarty->_file_perms !== null) {
// set file permissions
chmod($_filepath, $_file_perms);
chmod($_filepath, $smarty->_file_perms);
umask($old_umask);
}
error_reporting($_error_reporting);