GD images

Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
This commit is contained in:
Roeland Jago Douma 2020-12-03 19:50:45 +01:00
parent bbf66f8637
commit 7f61535a1a
No known key found for this signature in database
GPG Key ID: F941078878347C0C
1 changed files with 15 additions and 2 deletions

View File

@ -98,7 +98,14 @@ class OC_Image implements \OCP\IImage {
* @return bool * @return bool
*/ */
public function valid() { // apparently you can't name a method 'empty'... public function valid() { // apparently you can't name a method 'empty'...
return is_resource($this->resource); if (is_resource($this->resource)) {
return true;
}
if (is_object($this->resource) && get_class($this->resource) === 'GdImage') {
return true;
}
return false;
} }
/** /**
@ -305,7 +312,13 @@ class OC_Image implements \OCP\IImage {
* @throws \InvalidArgumentException in case the supplied resource does not have the type "gd" * @throws \InvalidArgumentException in case the supplied resource does not have the type "gd"
*/ */
public function setResource($resource) { public function setResource($resource) {
if (get_resource_type($resource) === 'gd') { // For PHP<8
if (is_resource($resource) && get_resource_type($resource) === 'gd') {
$this->resource = $resource;
return;
}
// PHP 8 has real objects for GD stuff
if (is_object($resource) && get_class($resource) === 'GdImage') {
$this->resource = $resource; $this->resource = $resource;
return; return;
} }