MDL-70901 backup: check handle before calling fclose()

@fclose no longer catches error in PHP 8.0 when handle is null
This commit is contained in:
Marina Glancy 2021-02-15 17:04:00 +01:00
parent a93828a188
commit 3e076d8cff

View file

@ -50,11 +50,18 @@ class file_logger extends base_logger {
} }
public function __destruct() { public function __destruct() {
@fclose($this->fhandle); // Blindy close the file handler (no exceptions in destruct) if (is_resource($this->fhandle)) {
// Blindy close the file handler (no exceptions in destruct).
@fclose($this->fhandle);
}
} }
public function __sleep() { public function __sleep() {
@fclose($this->fhandle); // Blindy close the file handler before serialization if (is_resource($this->fhandle)) {
// Blindy close the file handler before serialization.
@fclose($this->fhandle);
$this->fhandle = null;
}
return array('level', 'showdate', 'showlevel', 'next', 'fullpath'); return array('level', 'showdate', 'showlevel', 'next', 'fullpath');
} }