From 8480d24f5a74014e693c17ddfc38e6f08820ed43 Mon Sep 17 00:00:00 2001 From: Mark Johnson <mark.johnson@catalyst-eu.net> Date: Wed, 22 Jun 2022 11:08:38 +0100 Subject: [PATCH] Fix paths for update files. Fixes #453 The previous code could result in a curl error if $CFG->tempdir didn't already exist, and a chmod error if it did exist as it was being passed $stream as a file resource rather than a string. Change-Id: Ia1b0c22c380d3ba4e57e7f1b85d414db45ba9106 --- classes/framework.php | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/classes/framework.php b/classes/framework.php index 7584827..fc7ab69 100644 --- a/classes/framework.php +++ b/classes/framework.php @@ -215,15 +215,15 @@ class framework implements \H5PFrameworkInterface { @set_time_limit(0); // Generate local tmp file path. - $localfolder = $CFG->tempdir . uniqid('/hvp-'); - $stream = $localfolder . '.h5p'; + $localfolder = make_temp_directory(uniqid('hvp-')); + $localpath = $localfolder . '.h5p'; // Add folder and file paths to H5P Core. $interface = self::instance('interface'); $interface->getUploadedH5pFolderPath($localfolder); - $interface->getUploadedH5pPath($stream); + $interface->getUploadedH5pPath($localpath); - $stream = fopen($stream, 'w'); + $stream = fopen($localpath, 'w'); $options['CURLOPT_FILE'] = $stream; } @@ -244,7 +244,7 @@ class framework implements \H5PFrameworkInterface { if ($stream !== null) { fclose($stream); - @chmod($stream, $CFG->filepermissions); + @chmod($localpath, $CFG->filepermissions); } $errorno = $curl->get_errno(); -- GitLab