From 71c8a0b99f947802259e2fdf40a2c20ddf9f65db Mon Sep 17 00:00:00 2001 From: khongchi Date: Fri, 15 Nov 2013 12:56:29 +0900 Subject: [PATCH 1/2] =?UTF-8?q?fixed=20#50,=20file=5Fput=5Fcontents?= =?UTF-8?q?=ED=95=A8=EC=88=98=EC=97=90=20LOCK=5FEX=20flag=20=EC=A0=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- classes/db/DB.class.php | 4 ++-- classes/display/DisplayHandler.class.php | 2 +- classes/file/FileHandler.class.php | 2 +- .../library/HTMLPurifier/DefinitionCache/Serializer.php | 2 +- .../htmlpurifier/library/HTMLPurifier/URIScheme/data.php | 2 +- classes/validator/Validator.class.php | 2 +- config/func.inc.php | 2 +- libs/phpmailer/phpmailer.php | 2 +- modules/module/module.admin.controller.php | 2 +- modules/point/point.admin.controller.php | 2 +- tools/minify/minify.php | 6 +++--- 11 files changed, 14 insertions(+), 14 deletions(-) diff --git a/classes/db/DB.class.php b/classes/db/DB.class.php index dac2504f9..1db0cf0c1 100644 --- a/classes/db/DB.class.php +++ b/classes/db/DB.class.php @@ -459,7 +459,7 @@ class DB $buff[] = ''; } $buff[] = print_r($log, TRUE); - @file_put_contents($log_file, implode("\n", $buff) . "\n\n", FILE_APPEND); + @file_put_contents($log_file, implode("\n", $buff) . "\n\n", FILE_APPEND|LOCK_EX); } } else @@ -480,7 +480,7 @@ class DB $buff .= sprintf("%s\t%s\n\t%0.6f sec\tquery_id:%s\n\n", date("Y-m-d H:i"), $this->query, $elapsed_time, $this->query_id); - @file_put_contents($log_file, $buff, FILE_APPEND); + @file_put_contents($log_file, $buff, FILE_APPEND|LOCK_EX); } } diff --git a/classes/display/DisplayHandler.class.php b/classes/display/DisplayHandler.class.php index 40589a843..973cbdf5b 100644 --- a/classes/display/DisplayHandler.class.php +++ b/classes/display/DisplayHandler.class.php @@ -297,7 +297,7 @@ class DisplayHandler extends Handler $buff = str_repeat('=', 40) . "\n" . $buff . str_repeat('-', 40); $buff = "\n\n"; - if (!@file_put_contents($debug_file, $buff, FILE_APPEND)) + if (!@file_put_contents($debug_file, $buff, FILE_APPEND|LOCK_EX)) { return; } diff --git a/classes/file/FileHandler.class.php b/classes/file/FileHandler.class.php index 02ccff9ec..1ca76df32 100644 --- a/classes/file/FileHandler.class.php +++ b/classes/file/FileHandler.class.php @@ -176,7 +176,7 @@ class FileHandler $flags = 0; } - @file_put_contents($file_name, $buff, $flags); + @file_put_contents($file_name, $buff, $flags|LOCK_EX); @chmod($file_name, 0644); } diff --git a/classes/security/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer.php b/classes/security/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer.php index 73d5e90a6..8afb3fe64 100644 --- a/classes/security/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer.php +++ b/classes/security/htmlpurifier/library/HTMLPurifier/DefinitionCache/Serializer.php @@ -101,7 +101,7 @@ class HTMLPurifier_DefinitionCache_Serializer extends * @return Number of bytes written if success, or false if failure. */ private function _write($file, $data, $config) { - $result = file_put_contents($file, $data); + $result = file_put_contents($file, $data, LOCK_EX); if ($result !== false) { // set permissions of the new file (no execute) $chmod = $config->get('Cache.SerializerPermissions'); diff --git a/classes/security/htmlpurifier/library/HTMLPurifier/URIScheme/data.php b/classes/security/htmlpurifier/library/HTMLPurifier/URIScheme/data.php index a5c43989e..a6a9bdcdd 100644 --- a/classes/security/htmlpurifier/library/HTMLPurifier/URIScheme/data.php +++ b/classes/security/htmlpurifier/library/HTMLPurifier/URIScheme/data.php @@ -61,7 +61,7 @@ class HTMLPurifier_URIScheme_data extends HTMLPurifier_URIScheme { // XXX probably want to refactor this into a general mechanism // for filtering arbitrary content types $file = tempnam("/tmp", ""); - file_put_contents($file, $raw_data); + file_put_contents($file, $raw_data, LOCK_EX); if (function_exists('exif_imagetype')) { $image_code = exif_imagetype($file); } elseif (function_exists('getimagesize')) { diff --git a/classes/validator/Validator.class.php b/classes/validator/Validator.class.php index d16eebb12..54aa68e08 100644 --- a/classes/validator/Validator.class.php +++ b/classes/validator/Validator.class.php @@ -682,7 +682,7 @@ class Validator return FALSE; } - @file_put_contents($filepath, $content); + @file_put_contents($filepath, $content, LOCK_EX); return $filepath; } diff --git a/config/func.inc.php b/config/func.inc.php index a3da73c79..b37a01df1 100644 --- a/config/func.inc.php +++ b/config/func.inc.php @@ -801,7 +801,7 @@ function debugPrint($debug_output = NULL, $display_option = TRUE, $file = '_debu } $debug_output = "\n\n"; - @file_put_contents($debug_file, $debug_output, FILE_APPEND); + @file_put_contents($debug_file, $debug_output, FILE_APPEND|LOCK_EX); } } diff --git a/libs/phpmailer/phpmailer.php b/libs/phpmailer/phpmailer.php index b809939dd..c36f7c9d8 100644 --- a/libs/phpmailer/phpmailer.php +++ b/libs/phpmailer/phpmailer.php @@ -1234,7 +1234,7 @@ class PHPMailer { } else if ($this->sign_key_file) { try { $file = tempnam('', 'mail'); - file_put_contents($file, $body); //TODO check this worked + file_put_contents($file, $body, LOCK_EX); //TODO check this worked $signed = tempnam("", "signed"); if (@openssl_pkcs7_sign($file, $signed, "file://".$this->sign_cert_file, array("file://".$this->sign_key_file, $this->sign_key_pass), NULL)) { @unlink($file); diff --git a/modules/module/module.admin.controller.php b/modules/module/module.admin.controller.php index 57c3222b0..55cf1b9c5 100644 --- a/modules/module/module.admin.controller.php +++ b/modules/module/module.admin.controller.php @@ -899,7 +899,7 @@ class moduleAdminController extends module { $str = sprintf('$lang[\'%s\'] = \'%s\';', $code, addcslashes($value, "'")); } - if (!@file_put_contents(sprintf('%s/%d.%s.php', $cache_path, $args->site_srl, $langCode), $str)) + if (!@file_put_contents(sprintf('%s/%d.%s.php', $cache_path, $args->site_srl, $langCode), $str, LOCK_EX)) { return; } diff --git a/modules/point/point.admin.controller.php b/modules/point/point.admin.controller.php index 8cef35414..c021335f3 100644 --- a/modules/point/point.admin.controller.php +++ b/modules/point/point.admin.controller.php @@ -287,7 +287,7 @@ class pointAdminController extends point $str .= $key.','.$val."\r\n"; } - @file_put_contents('./files/cache/pointRecal.txt', $str); + @file_put_contents('./files/cache/pointRecal.txt', $str, LOCK_EX); $this->add('total', count($member)); $this->add('position', 0); diff --git a/tools/minify/minify.php b/tools/minify/minify.php index 37204776f..6c493f5d5 100755 --- a/tools/minify/minify.php +++ b/tools/minify/minify.php @@ -86,7 +86,7 @@ function execute($dir) { $content = JSMinPlus::minify($content); } - file_put_contents($target, $copyright.$content); + file_put_contents($target, $copyright.$content, LOCK_EX); echo '.'; } @@ -107,7 +107,7 @@ function execute($dir) { $target = preg_replace('@\.css$@', '.min.css', $file); $content = file_get_contents($file); - file_put_contents($target, $copyright.$oCSSmin->run($content)); + file_put_contents($target, $copyright.$oCSSmin->run($content), LOCK_EX); echo '.'; } echo " Done\n"; @@ -167,7 +167,7 @@ function merge($files, $target, $base_dir) { if ($body) { $file_count = count($files); echo " Merging {$file_count} files to create {$target} file..."; - file_put_contents($base_dir.$target, $body); + file_put_contents($base_dir.$target, $body, LOCK_EX); echo " Done\n"; } } From 203f2e683ace36feb0b0b53ed827d9d0538ddbe3 Mon Sep 17 00:00:00 2001 From: khongchi Date: Fri, 15 Nov 2013 13:36:48 +0900 Subject: [PATCH 2/2] =?UTF-8?q?fixed=20#52,=20updateDocument=EC=8B=9C=20ex?= =?UTF-8?q?tra=5Fvar=20=EC=B2=98=EB=A6=AC=20=EC=98=A4=EB=A5=98=20=EA=B0=9C?= =?UTF-8?q?=EC=84=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- modules/document/document.controller.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/document/document.controller.php b/modules/document/document.controller.php index 151e5f24e..30afead88 100644 --- a/modules/document/document.controller.php +++ b/modules/document/document.controller.php @@ -392,7 +392,7 @@ class documentController extends document if($obj->homepage && !preg_match('/^[a-z]+:\/\//i',$obj->homepage)) $obj->homepage = 'http://'.$obj->homepage; if($obj->notify_message != 'Y') $obj->notify_message = 'N'; // Serialize the $extra_vars - $obj->extra_vars = serialize($obj->extra_vars); + if(!is_string($obj->extra_vars)) $obj->extra_vars = serialize($obj->extra_vars); // Remove the columns for automatic saving unset($obj->_saved_doc_srl); unset($obj->_saved_doc_title);