diff --git a/contrib/handle_flash/main.php b/contrib/handle_flash/main.php index 9bee0cfb..f63f988d 100644 --- a/contrib/handle_flash/main.php +++ b/contrib/handle_flash/main.php @@ -8,7 +8,6 @@ class FlashFileHandler extends DataHandlerExtension { protected function create_thumb($hash) { // FIXME: scale image, as not all boards use 192x192 - mkdir(dirname(warehouse_path("thumbs", $hash)), 0755, true); copy("ext/handle_flash/thumb.jpg", warehouse_path("thumbs", $hash)); } diff --git a/contrib/handle_ico/main.php b/contrib/handle_ico/main.php index 8cb306c1..771dd506 100644 --- a/contrib/handle_ico/main.php +++ b/contrib/handle_ico/main.php @@ -99,7 +99,6 @@ class IcoFileHandler extends SimpleExtension { $q = $config->get_int("thumb_quality"); $mem = $config->get_int("thumb_max_memory") / 1024 / 1024; // IM takes memory in MB - mkdir(dirname($outname), 0755, true); if($config->get_bool("ico_convert")) { // "-limit memory $mem" broken? exec("convert {$inname}[0] -geometry {$w}x{$h} -quality {$q} jpg:$outname"); diff --git a/contrib/handle_mp3/main.php b/contrib/handle_mp3/main.php index b6bd7b8d..ba02b3c5 100644 --- a/contrib/handle_mp3/main.php +++ b/contrib/handle_mp3/main.php @@ -8,7 +8,6 @@ class MP3FileHandler extends DataHandlerExtension { protected function create_thumb($hash) { // FIXME: scale image, as not all boards use 192x192 - mkdir(dirname(warehouse_path("thumbs", $hash)), 0755, true); copy("ext/handle_mp3/thumb.jpg", warehouse_path("thumbs", $hash)); } diff --git a/contrib/handle_svg/main.php b/contrib/handle_svg/main.php index 2be2c7b5..e9e94c25 100644 --- a/contrib/handle_svg/main.php +++ b/contrib/handle_svg/main.php @@ -41,7 +41,6 @@ class SVGFileHandler implements Extension { // } // else { // FIXME: scale image, as not all boards use 192x192 - mkdir(dirname(warehouse_path("thumbs", $hash)), 0755, true); copy("ext/handle_svg/thumb.jpg", warehouse_path("thumbs", $hash)); // } } diff --git a/core/util.inc.php b/core/util.inc.php index fa004c25..482def07 100644 --- a/core/util.inc.php +++ b/core/util.inc.php @@ -485,9 +485,11 @@ function format_text($string) { return $tfe->formatted; } -function warehouse_path($base, $hash) { +function warehouse_path($base, $hash, $create=true) { $ab = substr($hash, 0, 2); - return "$base/$ab/$hash"; + $pa = "$base/$ab/$hash"; + if($create && !file_exists(dirname($pa))) mkdir(dirname($pa), 0755, true); + return $pa; } /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *\ diff --git a/ext/handle_pixel/main.php b/ext/handle_pixel/main.php index af02c220..53a18988 100644 --- a/ext/handle_pixel/main.php +++ b/ext/handle_pixel/main.php @@ -48,7 +48,6 @@ class PixelFileHandler extends DataHandlerExtension { $ok = false; - mkdir(dirname($outname), 0755, true); switch($config->get_string("thumb_engine")) { default: case 'gd':