View Issue Details

IDProjectCategoryView StatusLast Update
0006065OXID eShop (all versions)4.07. Source code, Testpublic2015-12-01 12:28
Reporters.krenz 
PrioritylowSeverityminorReproducibilityhave not tried
Status acknowledgedResolutionopen 
Product Version4.8.1 / 5.1.1 
Target VersionFixed in Version 
Summary0006065: Method excepts a String as first argument, but gets an array.
DescriptionI used Xdebug with and activated the "scream" configuration. If the Smarty modifier "oxaddparams" is used warnings will be generated. This prevents the frames from being loaded correctly.

I spent some time to find out what's going wrong.
The configuration variables "aLanguageURLs" and "aLanguageSSLURLs" are sent to the method oxUtilsUrl::_addHosts(). These variables are arrays NOT strings, as expected from "_addHosts". Further "_addHosts" does NOT check if it gets a string in the "sUrl" argument, it simply suppresses ANY warnings.
Additional InformationCode snippets where this bug occur:

core/oxutilsurl.php (inside method _getHosts)
293: // language url
294: $this->_addHost( $oConfig->getConfigParam( 'aLanguageURLs' ), $this->_aHosts );
295: $this->_addHost( $oConfig->getConfigParam( 'aLanguageSSLURLs' ), $this->_aHosts );

core/oxutilsurl.php (inside method _addHost)
271: if ( $sUrl && ( $sHost = @parse_url( $sUrl, PHP_URL_HOST ) ) ) { // <-- PHP warning will be generated if "xdebug.scream = 1" (or something similar) and "$sUrl" is an array!
TagsNo tags attached.
ThemeAll
BrowserAll
PHP Versionany
MySQL Versionany

Activities

There are no notes attached to this issue.