diff --git a/question/format.php b/question/format.php index a24d9e9d9d7..bf3e25ad77a 100644 --- a/question/format.php +++ b/question/format.php @@ -481,6 +481,7 @@ class qformat_default { $question->questiontext = file_save_draft_area_files($question->questiontextitemid, $this->importcontext->id, 'question', 'questiontext', $question->id, $fileoptions, $question->questiontext); + file_clear_draft_area($question->questiontextitemid); } else if (isset($question->questiontextfiles)) { foreach ($question->questiontextfiles as $file) { question_bank::get_qtype($question->qtype)->import_file( @@ -491,6 +492,7 @@ class qformat_default { $question->generalfeedback = file_save_draft_area_files($question->generalfeedbackitemid, $this->importcontext->id, 'question', 'generalfeedback', $question->id, $fileoptions, $question->generalfeedback); + file_clear_draft_area($question->generalfeedbackitemid); } else if (isset($question->generalfeedbackfiles)) { foreach ($question->generalfeedbackfiles as $file) { question_bank::get_qtype($question->qtype)->import_file( diff --git a/question/type/questiontypebase.php b/question/type/questiontypebase.php index 78f585d7f4d..599dd419cd4 100644 --- a/question/type/questiontypebase.php +++ b/question/type/questiontypebase.php @@ -1446,8 +1446,10 @@ class question_type { protected function import_or_save_files($field, $context, $component, $filearea, $itemid) { if (!empty($field['itemid'])) { // This is the normal case. We are safing the questions editing form. - return file_save_draft_area_files($field['itemid'], $context->id, $component, + $result = file_save_draft_area_files($field['itemid'], $context->id, $component, $filearea, $itemid, $this->fileoptions, trim($field['text'])); + file_clear_draft_area($field['itemid']); + return $result; } else if (!empty($field['files'])) { // This is the case when we are doing an import.