[BUGFIX] avoid Call to a member function getValue() on a non-object 74/42774/2
authorRalf Zimmermann <ralf.zimmermann@tritum.de>
Thu, 20 Aug 2015 13:30:18 +0000 (15:30 +0200)
committerAndreas Fernandez <typo3@scripting-base.de>
Sat, 29 Aug 2015 09:50:36 +0000 (11:50 +0200)
Prevents calling a method of a non-existent object.

If an attribute is not set via Typoscript no object for the attribute
is instantiated. It must be checked if the attribute exists before
calling it.

Resolves: #45685
Releases: 6.2, master
Change-Id: Ia36052060b82d543b22fb9c0da61623f9d09bd07
Reviewed-on: http://review.typo3.org/42774
Tested-by: Bjoern Jacob <bjoern.jacob@tritum.de>
Reviewed-by: Michael Oehlhof <typo3@oehlhof.de>
Reviewed-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Tested-by: Anja Leichsenring <aleichsenring@ab-softlab.de>
Reviewed-by: Andreas Fernandez <typo3@scripting-base.de>
Tested-by: Andreas Fernandez <typo3@scripting-base.de>
typo3/sysext/form/Classes/Domain/Model/Attribute/AttributesAttribute.php

index 872cde1..a6e7523 100644 (file)
@@ -139,7 +139,11 @@ class AttributesAttribute {
         * @return string The content of the attribute
         */
        public function getValue($key) {
-               return $this->getAttributeObjectByKey($key)->getValue();
+               if ($this->hasAttribute($key)) {
+                       return $this->getAttributeObjectByKey($key)->getValue();
+               } else {
+                       return '';
+               }
        }
 
 }