Details
-
Type:
Bug
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Fixed
-
Affects Version/s: 1.10.0
-
Fix Version/s: 1.10.0
-
Component/s: Zend_Application_Resource, Zend_Log
-
Labels:None
Description
The error is thrown because the constant doesn't exist in that class found in Zend_Log_Filter_Priority version 1.9.10 alpha. the potential fix is attached:
@@ -78,12 +78,12 @@
), $config);
// Add support for constants
- if (is_string($config['priority'])) {
- $config['priority'] = constant($config['priority']);
+ if (!is_numeric($config['priority'])) {
+ $config['priority'] = constant("Zend_Log::".$config['priority']);
}
return new self(
- $config['priority'],
+ (int) $config['priority'],
$config['operator']
);
}
The actual error
Warning: constant(): Couldn't find constant 4 in /var/www/wetawa/library/Zend/Log/Filter/Priority.php on line 82 Fatal error: Uncaught exception 'Zend_Log_Exception' with message 'Priority must be an integer' in /var/www/wetawa/library/Zend/Log/Filter/Priority.php:58 Stack trace: #0 /var/www/wetawa/library/Zend/Log/Filter/Priority.php(88): Zend_Log_Filter_Priority->__construct(NULL, NULL) #1 [internal function]: Zend_Log_Filter_Priority::factory(Array) #2 /var/www/wetawa/library/Zend/Log.php(201): call_user_func(Array, Array) #3 /var/www/wetawa/library/Zend/Log.php(154): Zend_Log->_constructFromConfig('filter', Array, 'Zend_Log_Filter') #4 /var/www/wetawa/library/Zend/Log.php(139): Zend_Log->_constructFilterFromConfig(Array) #5 /var/www/wetawa/library/Zend/Log.php(400): Zend_Log->_constructWriterFromConfig(Array) #6 /var/www/wetawa/library/Zend/Log.php(114): Zend_Log->addWriter(Array) #7 /var/www/wetawa/library/Zend/Application/Resource/Log.php(67): Zend_Log::factory(Array) #8 /var/www/wetawa/library/Zend/Application/Resource/Log.php(48): Zend_Application_Resource_Log->getLog() #9 /var/www/wetawa/library/Zend/Application/Bootstrap/B in /var/www/wetawa/library/Zend/Log/Filter/Priority.php on line 58
Thank you for reporting this issue. I am currently enjoying my holidays, but will fix it on January 1st. (unless I turn out to have (more) wifi available).