From a2f73718d9588a2b6185e73aa683cecd9f990363 Mon Sep 17 00:00:00 2001 From: rvelices Date: Thu, 30 Aug 2012 19:20:50 +0000 Subject: bug 2725: Piwigo isn't compatible with suPHP + better handling of watermark upload errors merge from trunk to branch 2.4 git-svn-id: http://piwigo.org/svn/branches/2.4@17676 68402e56-0260-453c-a942-63ccdbb3a9ee --- include/template.class.php | 26 +++----------------------- include/ws_functions.inc.php | 20 ++------------------ 2 files changed, 5 insertions(+), 41 deletions(-) (limited to 'include') diff --git a/include/template.class.php b/include/template.class.php index 3bc386c80..6d81b7169 100644 --- a/include/template.class.php +++ b/include/template.class.php @@ -78,28 +78,6 @@ class Template { } } - if (!isset($conf['combined_dir_checked'])) - { - $dir = PHPWG_ROOT_PATH.PWG_COMBINED_DIR; - mkgetdir($dir, MKGETDIR_DEFAULT&~MKGETDIR_DIE_ON_ERROR); - if (!is_writable($dir)) - { - load_language('admin.lang'); - fatal_error( - sprintf( - l10n('Give write access (chmod 777) to "%s" directory at the root of your Piwigo installation'), - PWG_COMBINED_DIR - ), - l10n('an error happened'), - false // show trace - ); - } - if (function_exists('pwg_query')) { - conf_update_param('combined_dir_checked', 1); - } - } - - $compile_dir = PHPWG_ROOT_PATH.$conf['data_location'].'templates_c'; mkgetdir( $compile_dir ); @@ -1343,7 +1321,9 @@ final class FileCombiner $output .= "\n"; } - file_put_contents( PHPWG_ROOT_PATH . $file, $output ); + mkgetdir( dirname(PHPWG_ROOT_PATH.$file) ); + file_put_contents( PHPWG_ROOT_PATH.$file, $output ); + @chmod(PHPWG_ROOT_PATH.$file, 0644); $out_file = $file; $out_version = false; $this->clear(); diff --git a/include/ws_functions.inc.php b/include/ws_functions.inc.php index 4e439af88..c25ed02ee 100644 --- a/include/ws_functions.inc.php +++ b/include/ws_functions.inc.php @@ -1507,27 +1507,11 @@ function ws_images_add_chunk($params, &$service) $upload_dir = $conf['upload_dir'].'/buffer'; // create the upload directory tree if not exists - if (!is_dir($upload_dir)) { - umask(0000); - if (!@mkdir($upload_dir, 0777, true)) - { - return new PwgError(500, 'error during buffer directory creation'); - } - } - - if (!is_writable($upload_dir)) + if (!mkgetdir($upload_dir, MKGETDIR_DEFAULT&~MKGETDIR_DIE_ON_ERROR)) { - // last chance to make the directory writable - @chmod($upload_dir, 0777); - - if (!is_writable($upload_dir)) - { - return new PwgError(500, 'buffer directory has no write access'); - } + return new PwgError(500, 'error during buffer directory creation'); } - secure_directory($upload_dir); - $filename = sprintf( '%s-%s-%05u.block', $params['original_sum'], -- cgit v1.2.3