diff --git a/classes/local/backup/backup_lifecycle_workflow.php b/classes/local/backup/backup_lifecycle_workflow.php
index 4cdfa07a34f430aa67188174354f51855a0553e7..743a05618d51d84ecc38b53389118e3945e67281 100644
--- a/classes/local/backup/backup_lifecycle_workflow.php
+++ b/classes/local/backup/backup_lifecycle_workflow.php
@@ -71,7 +71,7 @@ class backup_lifecycle_workflow {
         make_temp_directory('lifecycle');
         $this->tempfilename = $CFG->tempdir .'/lifecycle/'. md5(sesskey().microtime());
         if (!$handle = fopen($this->tempfilename, 'w+b')) {
-            print_error('cannotcreatetempdir');
+            throw new \moodle_exception('cannotcreatetempdir');
         }
         $this->writer = new \XMLWriter();
         $this->writer->openMemory();