diff --git a/578400-100.patch b/578400-100.patch
new file mode 100644
index 0000000..c07dec3
--- /dev/null
+++ b/578400-100.patch
@@ -0,0 +1,121 @@
+diff --git a/includes/theme.inc b/includes/theme.inc
+index ff54d6e..6fd6d1b 100644
+--- a/includes/theme.inc
++++ b/includes/theme.inc
+@@ -2596,9 +2596,10 @@ function template_preprocess_html(&$variables) {
+   }
+ 
+   // Construct page title.
+-  if (drupal_get_title()) {
++  $title = drupal_get_title();
++  if (!empty($title) || $title === 0) {
+     $head_title = array(
+-      'title' => strip_tags(drupal_get_title()),
++      'title' => strip_tags($title),
+       'name' => check_plain(variable_get('site_name', 'Drupal')),
+     );
+   }
+diff --git a/modules/node/node.test b/modules/node/node.test
+index 4ffc88e..81269e2 100644
+--- a/modules/node/node.test
++++ b/modules/node/node.test
+@@ -1943,6 +1943,20 @@ class NodeTitleTestCase extends DrupalWebTestCase {
+     // Test node title is clickable on teaser list (/node).
+     $this->drupalGet('node');
+     $this->clickLink($node->title);
++
++    // Test edge case where node title is set to 0.
++    $settings = array(
++      'title' => '0',
++    );
++    $node = $this->drupalCreateNode($settings);
++    $this->drupalGet('node/' . $node->nid);
++    $this->assertTitle('0' . ' | Drupal', 'Page title is equal to 0.', 'Node');
++    // Test that 0 appears in the template <h1>.
++    $xpath = '//h1[@id="page-title"]';
++    $this->assertEqual(trim(current($this->xpath($xpath))),
++      '0',
++      'Node title is displayed as 0.',
++      'Node');
+   }
+ }
+ 
+diff --git a/modules/system/page.tpl.php b/modules/system/page.tpl.php
+index bd61489..b97c129 100644
+--- a/modules/system/page.tpl.php
++++ b/modules/system/page.tpl.php
+@@ -86,7 +86,7 @@
+       <?php if ($site_name || $site_slogan): ?>
+         <div id="name-and-slogan">
+           <?php if ($site_name): ?>
+-            <?php if ($title): ?>
++            <?php if (!empty($title) || $title === 0): ?>
+               <div id="site-name"><strong>
+                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+               </strong></div>
+@@ -126,7 +126,7 @@
+         <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
+         <a id="main-content"></a>
+         <?php print render($title_prefix); ?>
+-        <?php if ($title): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
++        <?php if (!empty($title) || $title === 0): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
+         <?php print render($title_suffix); ?>
+         <?php if ($tabs): ?><div class="tabs"><?php print render($tabs); ?></div><?php endif; ?>
+         <?php print render($page['help']); ?>
+diff --git a/themes/bartik/templates/page.tpl.php b/themes/bartik/templates/page.tpl.php
+index 62f58d7..efe4711 100644
+--- a/themes/bartik/templates/page.tpl.php
++++ b/themes/bartik/templates/page.tpl.php
+@@ -99,7 +99,7 @@
+       <div id="name-and-slogan"<?php if ($hide_site_name && $hide_site_slogan) { print ' class="element-invisible"'; } ?>>
+ 
+         <?php if ($site_name): ?>
+-          <?php if ($title): ?>
++          <?php if (!empty($title) || $title === 0): ?>
+             <div id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
+               <strong>
+                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+@@ -187,7 +187,7 @@
+       <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
+       <a id="main-content"></a>
+       <?php print render($title_prefix); ?>
+-      <?php if ($title): ?>
++      <?php if (!empty($title) || $title === 0): ?>
+         <h1 class="title" id="page-title">
+           <?php print $title; ?>
+         </h1>
+diff --git a/themes/garland/page.tpl.php b/themes/garland/page.tpl.php
+index 326255c..9a173c4 100644
+--- a/themes/garland/page.tpl.php
++++ b/themes/garland/page.tpl.php
+@@ -8,7 +8,7 @@
+       <div id="header">
+         <div id="logo-floater">
+         <?php if ($logo || $site_title): ?>
+-          <?php if ($title): ?>
++          <?php if (!empty($title) || $title === 0): ?>
+             <div id="branding"><strong><a href="<?php print $front_page ?>">
+             <?php if ($logo): ?>
+               <img src="<?php print $logo ?>" alt="<?php print $site_name_and_slogan ?>" title="<?php print $site_name_and_slogan ?>" id="logo" />
+@@ -42,7 +42,7 @@
+           <a id="main-content"></a>
+           <?php if ($tabs): ?><div id="tabs-wrapper" class="clearfix"><?php endif; ?>
+           <?php print render($title_prefix); ?>
+-          <?php if ($title): ?>
++          <?php if (!empty($title) || $title === 0): ?>
+             <h1<?php print $tabs ? ' class="with-tabs"' : '' ?>><?php print $title ?></h1>
+           <?php endif; ?>
+           <?php print render($title_suffix); ?>
+diff --git a/themes/seven/page.tpl.php b/themes/seven/page.tpl.php
+index 6ab3ae8..274e20a 100644
+--- a/themes/seven/page.tpl.php
++++ b/themes/seven/page.tpl.php
+@@ -2,7 +2,7 @@
+   <div id="branding" class="clearfix">
+     <?php print $breadcrumb; ?>
+     <?php print render($title_prefix); ?>
+-    <?php if ($title): ?>
++    <?php if (!empty($title) || $title === 0): ?>
+       <h1 class="page-title"><?php print $title; ?></h1>
+     <?php endif; ?>
+     <?php print render($title_suffix); ?>
diff --git a/display-page-title-even-if-0-578400-82.patch b/display-page-title-even-if-0-578400-82.patch
new file mode 100644
index 0000000..6b555e9
--- /dev/null
+++ b/display-page-title-even-if-0-578400-82.patch
@@ -0,0 +1,121 @@
+diff --git a/includes/theme.inc b/includes/theme.inc
+index 8d5348d..9606f12 100644
+--- a/includes/theme.inc
++++ b/includes/theme.inc
+@@ -2576,9 +2576,10 @@ function template_preprocess_html(&$variables) {
+   }
+ 
+   // Construct page title.
+-  if (drupal_get_title()) {
++  $title = drupal_get_title();
++  if (isset($title)) {
+     $head_title = array(
+-      'title' => strip_tags(drupal_get_title()),
++      'title' => strip_tags($title),
+       'name' => check_plain(variable_get('site_name', 'Drupal')),
+     );
+   }
+diff --git a/modules/node/node.test b/modules/node/node.test
+index 5c9118e..acf3373 100644
+--- a/modules/node/node.test
++++ b/modules/node/node.test
+@@ -1873,6 +1873,20 @@ class NodeTitleTestCase extends DrupalWebTestCase {
+     // Test node title is clickable on teaser list (/node).
+     $this->drupalGet('node');
+     $this->clickLink($node->title);
++
++    // Test edge case where node title is set to 0.
++    $settings = array(
++      'title' => '0',
++    );
++    $node = $this->drupalCreateNode($settings);
++    $this->drupalGet('node/' . $node->nid);
++    $this->assertTitle('0' . ' | Drupal', 'Page title is equal to 0.', 'Node');
++    // Test that 0 appears in the template <h1>.
++    $xpath = '//h1[@id="page-title"]';
++    $this->assertEqual(trim(current($this->xpath($xpath))),
++      '0',
++      'Node title is displayed as 0.',
++      'Node');
+   }
+ }
+ 
+diff --git a/modules/system/page.tpl.php b/modules/system/page.tpl.php
+index bd61489..351cb23 100644
+--- a/modules/system/page.tpl.php
++++ b/modules/system/page.tpl.php
+@@ -86,7 +86,7 @@
+       <?php if ($site_name || $site_slogan): ?>
+         <div id="name-and-slogan">
+           <?php if ($site_name): ?>
+-            <?php if ($title): ?>
++            <?php if (is_string($title)): ?>
+               <div id="site-name"><strong>
+                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+               </strong></div>
+@@ -126,7 +126,7 @@
+         <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
+         <a id="main-content"></a>
+         <?php print render($title_prefix); ?>
+-        <?php if ($title): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
++        <?php if (is_string($title)): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
+         <?php print render($title_suffix); ?>
+         <?php if ($tabs): ?><div class="tabs"><?php print render($tabs); ?></div><?php endif; ?>
+         <?php print render($page['help']); ?>
+diff --git a/themes/bartik/templates/page.tpl.php b/themes/bartik/templates/page.tpl.php
+index 62f58d7..c3e5249 100644
+--- a/themes/bartik/templates/page.tpl.php
++++ b/themes/bartik/templates/page.tpl.php
+@@ -99,7 +99,7 @@
+       <div id="name-and-slogan"<?php if ($hide_site_name && $hide_site_slogan) { print ' class="element-invisible"'; } ?>>
+ 
+         <?php if ($site_name): ?>
+-          <?php if ($title): ?>
++          <?php if (is_string($title)): ?>
+             <div id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
+               <strong>
+                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+@@ -187,7 +187,7 @@
+       <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
+       <a id="main-content"></a>
+       <?php print render($title_prefix); ?>
+-      <?php if ($title): ?>
++      <?php if (is_string($title)): ?>
+         <h1 class="title" id="page-title">
+           <?php print $title; ?>
+         </h1>
+diff --git a/themes/garland/page.tpl.php b/themes/garland/page.tpl.php
+index 326255c..aa5d117 100644
+--- a/themes/garland/page.tpl.php
++++ b/themes/garland/page.tpl.php
+@@ -8,7 +8,7 @@
+       <div id="header">
+         <div id="logo-floater">
+         <?php if ($logo || $site_title): ?>
+-          <?php if ($title): ?>
++          <?php if (is_string($title)): ?>
+             <div id="branding"><strong><a href="<?php print $front_page ?>">
+             <?php if ($logo): ?>
+               <img src="<?php print $logo ?>" alt="<?php print $site_name_and_slogan ?>" title="<?php print $site_name_and_slogan ?>" id="logo" />
+@@ -42,7 +42,7 @@
+           <a id="main-content"></a>
+           <?php if ($tabs): ?><div id="tabs-wrapper" class="clearfix"><?php endif; ?>
+           <?php print render($title_prefix); ?>
+-          <?php if ($title): ?>
++          <?php if (is_string($title)): ?>
+             <h1<?php print $tabs ? ' class="with-tabs"' : '' ?>><?php print $title ?></h1>
+           <?php endif; ?>
+           <?php print render($title_suffix); ?>
+diff --git a/themes/seven/page.tpl.php b/themes/seven/page.tpl.php
+index 6ab3ae8..8e9634d 100644
+--- a/themes/seven/page.tpl.php
++++ b/themes/seven/page.tpl.php
+@@ -2,7 +2,7 @@
+   <div id="branding" class="clearfix">
+     <?php print $breadcrumb; ?>
+     <?php print render($title_prefix); ?>
+-    <?php if ($title): ?>
++    <?php if (is_string($title)): ?>
+       <h1 class="page-title"><?php print $title; ?></h1>
+     <?php endif; ?>
+     <?php print render($title_suffix); ?>
diff --git a/includes/theme.inc b/includes/theme.inc
index ff54d6e..d675a77 100644
--- a/includes/theme.inc
+++ b/includes/theme.inc
@@ -2596,9 +2596,10 @@ function template_preprocess_html(&$variables) {
   }
 
   // Construct page title.
-  if (drupal_get_title()) {
+  $title = drupal_get_title();
+  if (!empty($title) || $title === "0") {
     $head_title = array(
-      'title' => strip_tags(drupal_get_title()),
+      'title' => strip_tags($title),
       'name' => check_plain(variable_get('site_name', 'Drupal')),
     );
   }
diff --git a/interdiff-578400-82-578400-100.txt b/interdiff-578400-82-578400-100.txt
new file mode 100644
index 0000000..f546bbc
--- /dev/null
+++ b/interdiff-578400-82-578400-100.txt
@@ -0,0 +1,92 @@
+diff --git a/includes/theme.inc b/includes/theme.inc
+index bd92b68..6fd6d1b 100644
+--- a/includes/theme.inc
++++ b/includes/theme.inc
+@@ -2597,7 +2597,7 @@ function template_preprocess_html(&$variables) {
+ 
+   // Construct page title.
+   $title = drupal_get_title();
+-  if (isset($title)) {
++  if (!empty($title) || $title === 0) {
+     $head_title = array(
+       'title' => strip_tags($title),
+       'name' => check_plain(variable_get('site_name', 'Drupal')),
+diff --git a/modules/system/page.tpl.php b/modules/system/page.tpl.php
+index 351cb23..b97c129 100644
+--- a/modules/system/page.tpl.php
++++ b/modules/system/page.tpl.php
+@@ -86,7 +86,7 @@
+       <?php if ($site_name || $site_slogan): ?>
+         <div id="name-and-slogan">
+           <?php if ($site_name): ?>
+-            <?php if (is_string($title)): ?>
++            <?php if (!empty($title) || $title === 0): ?>
+               <div id="site-name"><strong>
+                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+               </strong></div>
+@@ -126,7 +126,7 @@
+         <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
+         <a id="main-content"></a>
+         <?php print render($title_prefix); ?>
+-        <?php if (is_string($title)): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
++        <?php if (!empty($title) || $title === 0): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
+         <?php print render($title_suffix); ?>
+         <?php if ($tabs): ?><div class="tabs"><?php print render($tabs); ?></div><?php endif; ?>
+         <?php print render($page['help']); ?>
+diff --git a/themes/bartik/templates/page.tpl.php b/themes/bartik/templates/page.tpl.php
+index c3e5249..efe4711 100644
+--- a/themes/bartik/templates/page.tpl.php
++++ b/themes/bartik/templates/page.tpl.php
+@@ -99,7 +99,7 @@
+       <div id="name-and-slogan"<?php if ($hide_site_name && $hide_site_slogan) { print ' class="element-invisible"'; } ?>>
+ 
+         <?php if ($site_name): ?>
+-          <?php if (is_string($title)): ?>
++          <?php if (!empty($title) || $title === 0): ?>
+             <div id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
+               <strong>
+                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
+@@ -187,7 +187,7 @@
+       <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
+       <a id="main-content"></a>
+       <?php print render($title_prefix); ?>
+-      <?php if (is_string($title)): ?>
++      <?php if (!empty($title) || $title === 0): ?>
+         <h1 class="title" id="page-title">
+           <?php print $title; ?>
+         </h1>
+diff --git a/themes/garland/page.tpl.php b/themes/garland/page.tpl.php
+index aa5d117..9a173c4 100644
+--- a/themes/garland/page.tpl.php
++++ b/themes/garland/page.tpl.php
+@@ -8,7 +8,7 @@
+       <div id="header">
+         <div id="logo-floater">
+         <?php if ($logo || $site_title): ?>
+-          <?php if (is_string($title)): ?>
++          <?php if (!empty($title) || $title === 0): ?>
+             <div id="branding"><strong><a href="<?php print $front_page ?>">
+             <?php if ($logo): ?>
+               <img src="<?php print $logo ?>" alt="<?php print $site_name_and_slogan ?>" title="<?php print $site_name_and_slogan ?>" id="logo" />
+@@ -42,7 +42,7 @@
+           <a id="main-content"></a>
+           <?php if ($tabs): ?><div id="tabs-wrapper" class="clearfix"><?php endif; ?>
+           <?php print render($title_prefix); ?>
+-          <?php if (is_string($title)): ?>
++          <?php if (!empty($title) || $title === 0): ?>
+             <h1<?php print $tabs ? ' class="with-tabs"' : '' ?>><?php print $title ?></h1>
+           <?php endif; ?>
+           <?php print render($title_suffix); ?>
+diff --git a/themes/seven/page.tpl.php b/themes/seven/page.tpl.php
+index 8e9634d..274e20a 100644
+--- a/themes/seven/page.tpl.php
++++ b/themes/seven/page.tpl.php
+@@ -2,7 +2,7 @@
+   <div id="branding" class="clearfix">
+     <?php print $breadcrumb; ?>
+     <?php print render($title_prefix); ?>
+-    <?php if (is_string($title)): ?>
++    <?php if (!empty($title) || $title === 0): ?>
+       <h1 class="page-title"><?php print $title; ?></h1>
+     <?php endif; ?>
+     <?php print render($title_suffix); ?>
diff --git a/modules/node/node.test b/modules/node/node.test
index 4ffc88e..81269e2 100644
--- a/modules/node/node.test
+++ b/modules/node/node.test
@@ -1943,6 +1943,20 @@ class NodeTitleTestCase extends DrupalWebTestCase {
     // Test node title is clickable on teaser list (/node).
     $this->drupalGet('node');
     $this->clickLink($node->title);
+
+    // Test edge case where node title is set to 0.
+    $settings = array(
+      'title' => '0',
+    );
+    $node = $this->drupalCreateNode($settings);
+    $this->drupalGet('node/' . $node->nid);
+    $this->assertTitle('0' . ' | Drupal', 'Page title is equal to 0.', 'Node');
+    // Test that 0 appears in the template <h1>.
+    $xpath = '//h1[@id="page-title"]';
+    $this->assertEqual(trim(current($this->xpath($xpath))),
+      '0',
+      'Node title is displayed as 0.',
+      'Node');
   }
 }
 
diff --git a/modules/system/page.tpl.php b/modules/system/page.tpl.php
index bd61489..c9baf33 100644
--- a/modules/system/page.tpl.php
+++ b/modules/system/page.tpl.php
@@ -86,7 +86,7 @@
       <?php if ($site_name || $site_slogan): ?>
         <div id="name-and-slogan">
           <?php if ($site_name): ?>
-            <?php if ($title): ?>
+            <?php if (!empty($title) || $title === "0"): ?>
               <div id="site-name"><strong>
                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
               </strong></div>
@@ -126,7 +126,7 @@
         <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
         <a id="main-content"></a>
         <?php print render($title_prefix); ?>
-        <?php if ($title): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
+        <?php if (!empty($title) || $title === "0"): ?><h1 class="title" id="page-title"><?php print $title; ?></h1><?php endif; ?>
         <?php print render($title_suffix); ?>
         <?php if ($tabs): ?><div class="tabs"><?php print render($tabs); ?></div><?php endif; ?>
         <?php print render($page['help']); ?>
diff --git a/themes/bartik/templates/page.tpl.php b/themes/bartik/templates/page.tpl.php
index 62f58d7..f97bafc 100644
--- a/themes/bartik/templates/page.tpl.php
+++ b/themes/bartik/templates/page.tpl.php
@@ -99,7 +99,7 @@
       <div id="name-and-slogan"<?php if ($hide_site_name && $hide_site_slogan) { print ' class="element-invisible"'; } ?>>
 
         <?php if ($site_name): ?>
-          <?php if ($title): ?>
+          <?php if (!empty($title) || $title === "0"): ?>
             <div id="site-name"<?php if ($hide_site_name) { print ' class="element-invisible"'; } ?>>
               <strong>
                 <a href="<?php print $front_page; ?>" title="<?php print t('Home'); ?>" rel="home"><span><?php print $site_name; ?></span></a>
@@ -187,7 +187,7 @@
       <?php if ($page['highlighted']): ?><div id="highlighted"><?php print render($page['highlighted']); ?></div><?php endif; ?>
       <a id="main-content"></a>
       <?php print render($title_prefix); ?>
-      <?php if ($title): ?>
+<!--       <?php if (!empty($title) || $title === "0"): ?> -->
         <h1 class="title" id="page-title">
           <?php print $title; ?>
         </h1>
diff --git a/themes/garland/page.tpl.php b/themes/garland/page.tpl.php
index 326255c..c5adedd 100644
--- a/themes/garland/page.tpl.php
+++ b/themes/garland/page.tpl.php
@@ -8,7 +8,7 @@
       <div id="header">
         <div id="logo-floater">
         <?php if ($logo || $site_title): ?>
-          <?php if ($title): ?>
+          <?php if (!empty($title) || $title === "0"): ?>
             <div id="branding"><strong><a href="<?php print $front_page ?>">
             <?php if ($logo): ?>
               <img src="<?php print $logo ?>" alt="<?php print $site_name_and_slogan ?>" title="<?php print $site_name_and_slogan ?>" id="logo" />
@@ -42,7 +42,7 @@
           <a id="main-content"></a>
           <?php if ($tabs): ?><div id="tabs-wrapper" class="clearfix"><?php endif; ?>
           <?php print render($title_prefix); ?>
-          <?php if ($title): ?>
+          <?php if (!empty($title) || $title === "0"): ?>
             <h1<?php print $tabs ? ' class="with-tabs"' : '' ?>><?php print $title ?></h1>
           <?php endif; ?>
           <?php print render($title_suffix); ?>
diff --git a/themes/seven/page.tpl.php b/themes/seven/page.tpl.php
index 6ab3ae8..55c278d 100644
--- a/themes/seven/page.tpl.php
+++ b/themes/seven/page.tpl.php
@@ -2,7 +2,7 @@
   <div id="branding" class="clearfix">
     <?php print $breadcrumb; ?>
     <?php print render($title_prefix); ?>
-    <?php if ($title): ?>
+    <?php if (!empty($title) || $title === "0"): ?>
       <h1 class="page-title"><?php print $title; ?></h1>
     <?php endif; ?>
     <?php print render($title_suffix); ?>
