6.0.0-alpha14
6/30/25

[#14527] horde config crash if Horde_Service_Weather_Metar is not installed
Summary horde config crash if Horde_Service_Weather_Metar is not installed
Queue Horde Base
Queue Version Git master
Type Bug
State Resolved
Priority 1. Low
Owners mrubinsk (at) horde (dot) org
Requester thomas.jarosch (at) intra2net (dot) com
Created 12/01/2016 (3133 days ago)
Due
Updated 12/05/2016 (3129 days ago)
Assigned 12/01/2016 (3133 days ago)
Resolved 12/02/2016 (3132 days ago)
Github Issue Link
Github Pull Request
Milestone
Patch No

History
12/05/2016 08:45:26 AM Thomas Jarosch Comment #8 Reply to this comment
Thanks! Working fine with uninstalled Horde_Service_Weather package.

12/02/2016 08:15:49 PM Michael Rubinsky State ⇒ Resolved
 
12/02/2016 08:15:33 PM Git Commit Comment #7 Reply to this comment
Changes have been made in Git (master):

commit 4e3d657bf4ce82abb16d7b4104c9aca6eb703ba0
Author: Michael J Rubinsky <mrubinsk@horde.org>
Date:   Fri Dec 2 15:14:36 2016 -0500

     Bug: 14527 Disable Metar block if Horde_Service_Weather not present.

  horde/lib/Block/Metar.php | 4 ++++
  1 file changed, 4 insertions(+)

http://github.com/horde/horde/commit/4e3d657bf4ce82abb16d7b4104c9aca6eb703ba0
12/01/2016 03:34:43 PM Michael Rubinsky Comment #6
State ⇒ Assigned
Reply to this comment
Ahhhh. The static blocks configuration pulls the list of available 
blocks. Thanks for the trace.

Easy fix, just need to add a check for the existence of the class in 
the block - which should have been there to begin with anyway.

Will take care of it, thanks for the report.
12/01/2016 03:14:47 PM Thomas Jarosch Comment #5 Reply to this comment
Backtrace:

1. Horde_Config_Form->__construct() 
/datastore/dev/share/pear/www/horde/admin/config/config.php:35
  2. Horde_Config->readXMLConfig() 
/datastore/dev/share/pear/Horde/Config/Form.php:58
  3. Horde_Config->_parseLevel() /datastore/dev/share/pear/Horde/Config.php:204
  4. Horde_Config->_parseLevel() /datastore/dev/share/pear/Horde/Config.php:725
  5. Horde_Config->_parseLevel() /datastore/dev/share/pear/Horde/Config.php:712
  6. Horde_Config->_getEnumValues() 
/datastore/dev/share/pear/Horde/Config.php:602
  7. Horde_Config->_handleSpecials() 
/datastore/dev/share/pear/Horde/Config.php:1790
  8. Horde_Registry->callAppMethod() 
/datastore/dev/share/pear/Horde/Config.php:1861
  9. call_user_func_array() /datastore/dev/share/pear/Horde/Registry.php:1196
10. Horde_Application->configSpecialValues()
11. Horde_Core_Block_Collection->getBlocksList() 
/datastore/dev/share/pear/www/horde/lib/Application.php:122
12. Horde_Core_Block_Collection->_loadBlocks() 
/datastore/dev/share/pear/Horde/Core/Block/Collection.php:159
13. Horde_Block_Metar->__construct() 
/datastore/dev/share/pear/Horde/Core/Block/Collection.php:500
  [pid 25045 on line 28 of 
"/datastore/dev/share/pear/www/horde/lib/Block/Metar.php"]
2016-12-01T16:13:27+01:00 EMERG: HORDE [horde] Class 
'Horde_Service_Weather_Metar' not found [pid 25045 on line 38 of 
"/datastore/dev/share/pear/www/horde/lib/Block/Metar.php"]


I'll just install the package for now ;)

12/01/2016 03:12:15 PM Michael Rubinsky Comment #4 Reply to this comment
Also, the Horde package.xml already has a dependency on 2.4.0 of
Horde_Service_Weather, which is the version that introduced the Metar
class.
it's in the "optional" section and therefore not installed on my box.
Yeah, it shouldn't be required. There are other blocks that also use 
other classes from this same package, so whatever it is, it's specific 
to the Metar code.
I'll do a stack trace next.
I'll be able to look at this more closely tomorrow if needed.


12/01/2016 03:05:30 PM Thomas Jarosch Comment #3 Reply to this comment
Also, the Horde package.xml already has a dependency on 2.4.0 of 
Horde_Service_Weather, which is the version that introduced the 
Metar class.
it's in the "optional" section and therefore not installed on my box.

I'll do a stack trace next.

12/01/2016 03:01:41 PM Michael Rubinsky Comment #2
Assigned to Michael Rubinsky
State ⇒ Feedback
Reply to this comment
I guess the question is what is horde block code doing running from 
the config screen. I can't think of anywhere that would done. Can you 
get a stack trace of where this is being called?

Also, the Horde package.xml already has a dependency on 2.4.0 of 
Horde_Service_Weather, which is the version that introduced the Metar 
class.

12/01/2016 02:38:07 PM Thomas Jarosch Comment #1
State ⇒ Unconfirmed
Patch ⇒ No
Milestone ⇒
Queue ⇒ Horde Base
Summary ⇒ horde config crash if Horde_Service_Weather_Metar is not installed
Type ⇒ Bug
Priority ⇒ 1. Low
Reply to this comment
When trying to access the config module to upgrade the 'horde' base config,
horde crashes for me. We should either fix the code or specify
a dependency on Horde_Service_Weather_Metar in package.xml of the 'horde' app.

Class 'Horde_Service_Weather_Metar' not found

1. Horde_ErrorHandler::catchFatalError()

ErrorException Object
(
     [message:protected] => Class 'Horde_Service_Weather_Metar' not found
     [string:Exception:private] =>
     [code:protected] => 0
     [file:protected] => 
/datastore/dev/share/pear/www/horde/lib/Block/Metar.php
     [line:protected] => 36
     [trace:Exception:private] => Array
         (
             [0] => Array
                 (
                     [function] => catchFatalError
                     [class] => Horde_ErrorHandler
                     [type] => ::
                     [args] => Array
                         (
                         )

                 )

         )

     [previous:Exception:private] =>
     [severity:protected] => 1
     [logged] => 1
)

Saved Queries