summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAngie Byron <webchick@24967.no-reply.drupal.org>2009-10-16 08:27:41 +0000
committerAngie Byron <webchick@24967.no-reply.drupal.org>2009-10-16 08:27:41 +0000
commit9dda515bbc8007685d523f7d202ea01588dd085e (patch)
tree285ac0d4f90acc6a68a7aeba77babe6b147ba72c
parent1c7bca0b6f824dc99101802286a348dcfc71cd01 (diff)
downloadbrdo-9dda515bbc8007685d523f7d202ea01588dd085e.tar.gz
brdo-9dda515bbc8007685d523f7d202ea01588dd085e.tar.bz2
#412730 folllow-up by Crell: Move missing theme key notification to watchdog so that Drupal doesn't totally bomb out when theme function isn't found. (also fixes CLI installs)
-rw-r--r--includes/theme.inc8
-rw-r--r--modules/simpletest/tests/theme.test17
2 files changed, 1 insertions, 24 deletions
diff --git a/includes/theme.inc b/includes/theme.inc
index d2c5d6e64..2cb9853e1 100644
--- a/includes/theme.inc
+++ b/includes/theme.inc
@@ -37,12 +37,6 @@ define('MARK_UPDATED', 2);
* @} End of "Content markers".
*/
-
-/**
- * An exception to throw when a theme function is requested that does not exist.
- */
-class ThemeHookNotFoundException extends Exception {}
-
/**
* Determines if a theme is available to use.
*
@@ -768,7 +762,7 @@ function theme($hook, $variables = array()) {
}
if (!isset($hooks[$hook])) {
- throw new ThemeHookNotFoundException(t('Theme hook "@hook" not found.', array('@hook' => $hook)));
+ watchdog('theme', 'Theme key "@key" not found.', array('@key' => $hook), WATCHDOG_WARNING);
}
$info = $hooks[$hook];
diff --git a/modules/simpletest/tests/theme.test b/modules/simpletest/tests/theme.test
index 823a50c67..9b5c5c2d2 100644
--- a/modules/simpletest/tests/theme.test
+++ b/modules/simpletest/tests/theme.test
@@ -50,23 +50,6 @@ class TemplateUnitTest extends DrupalWebTestCase {
$suggestions = array("page\0");
$this->assertEqual(drupal_discover_template(array('themes/garland'), $suggestions), 'themes/garland/page.tpl.php', t('Unsafe template suggestion fixed'));
}
-
- /**
- * Test that not-found theme hook throw a proper exception.
- */
- function testThemeHookNotFound() {
- try {
- theme('this_does_not_exist');
-
- $this->fail(t('Exception not thrown for invalid theme hook.'));
- }
- catch (ThemeHookNotFoundException $e) {
- $this->assertEqual($e->getMessage(), t('Theme hook "this_does_not_exist" not found.'), t('Correct exception thrown with correct error message.'));
- }
- catch (Exception $e) {
- $this->fail(t('Exception of type "@type" thrown instead of ThemeHookNotFoundException.', array('@type' => gettype($e))));
- }
- }
}
/**