Feature #70874

ClassInfo::getIsInitializeable() is not reliable

Added by Klaus Bitto almost 6 years ago. Updated over 5 years ago.

Status:
Closed
Priority:
Should have
Assignee:
-
Category:
Extbase
Target version:
-
Start date:
2015-10-20
Due date:
% Done:

0%

Estimated time:
PHP Version:
Tags:
Complexity:
Sprint Focus:

Description

As seen in e.g. https://github.com/TYPO3/TYPO3.CMS/blob/TYPO3_6-2/typo3/sysext/extbase/Classes/Object/Container/Container.php#L167 (Container::getInstanceInternal(), if($classInfo->getIsInitializeable() && is_callable(array($instance, 'initializeObject')))), calling $classInfo->getIsInitializeable() appears to not be enough to determine if $instance->initializeObject() can be called. This seems wrong by design.

Maybe ClassInfo::getIsInitializable() should take an instance as argument? Or should there be a public Container::getObjectIsInitializable($instance)? If the is_callable() call is necessary to avoid bugs, then there definitely needs to be an API method for it.


Related issues

Related to TYPO3 Core - Bug #66482: Extbase persistence layer fails to create empty objects in PHP 5.6.Closed2015-04-19

Actions
#1

Updated by Helmut Hummel almost 6 years ago

  • Status changed from New to Needs Feedback

What exactly is the bug you encounter. What exact feature do you miss? Why do you bother at all? There is only one place where this is needed and used and there is no easy fix. I'd just keep it like that unless there are good and obvious reasons to change this API

#2

Updated by Mathias Schreiber almost 6 years ago

  • Target version deleted (next-patchlevel)
#3

Updated by Morton Jonuschat over 5 years ago

  • Status changed from Needs Feedback to Closed

No feedback within the last 90 days => closing this issue.

If you think that this is the wrong decision or experience this issue again, then please write to the mailing list typo3.teams.bugs with issue number and an explanation or open a new ticket and add a relation to this ticket number.

Also available in: Atom PDF