diff --git a/src/Decoder/HeaderDecoder.php b/src/Decoder/HeaderDecoder.php index 9a8a71b2..565e0b5f 100644 --- a/src/Decoder/HeaderDecoder.php +++ b/src/Decoder/HeaderDecoder.php @@ -65,13 +65,13 @@ public function decode(array|string|null $value, ?string $encoding = null): mixe * @return string */ public function getEncoding(object|string $structure): string { - if (property_exists($structure, 'parameters')) { + if (is_object($structure) && property_exists($structure, 'parameters')) { foreach ($structure->parameters as $parameter) { if (strtolower($parameter->attribute) == "charset") { return EncodingAliases::get($parameter->value == "default" ? EncodingAliases::detectEncoding($parameter->value) : $parameter->value, $this->fallback_encoding); } } - } elseif (property_exists($structure, 'charset')) { + } elseif (is_object($structure) && property_exists($structure, 'charset')) { return EncodingAliases::get($structure->charset == "default" ? EncodingAliases::detectEncoding($structure->charset) : $structure->charset, $this->fallback_encoding); } elseif (is_string($structure) === true) { $result = mb_detect_encoding($structure); @@ -95,4 +95,4 @@ private function decodeHeaderArray(array $values): array { return $values; } -} \ No newline at end of file +}