diff --git a/core/includes/theme.inc b/core/includes/theme.inc
index 5296b08..eef39b8 100644
--- a/core/includes/theme.inc
+++ b/core/includes/theme.inc
@@ -461,8 +461,7 @@ function _theme_process_registry(&$cache, $name, $type, $theme, $path) {
   // Invoke the hook_theme() implementation, preprocess what is returned, and
   // merge it into $cache.
   $function = $name . '_theme';
-  if (function_exists($function)) {
-    $result = $function($cache, $type, $theme, $path);
+  if (function_exists($function) && $result = $function($cache, $type, $theme, $path)) {
     foreach ($result as $hook => $info) {
       // When a theme or engine overrides a module's theme function
       // $result[$hook] will only contain key/value pairs for information being
