diff --git a/metatag.module b/metatag.module
index 1b0e243..ff9e141 100644
--- a/metatag.module
+++ b/metatag.module
@@ -1040,6 +1040,9 @@ function metatag_get_value($metatag, array $data, array $options = array()) {
  * @see metatag_preprocess_maintenance_page()
  */
 function metatag_set_preprocess_variable($hook, $variable, $value) {
+  if ($hook == 'html') {
+    dsm(func_get_args());
+  }
   $variables = &drupal_static(__FUNCTION__, array());
   $variables[$hook][$variable] = $value;
 }
@@ -1229,3 +1232,21 @@ function metatag_config_access($op, $config = NULL) {
 
   return FALSE;
 }
+
+/**
+ * Implements hook_ctools_render_alter().
+ */
+function metatag_ctools_render_alter(&$info, $page, $context) {
+  if ($page) {
+    $tags = array_pop(metatag_page_get_metatags());
+    foreach ($tags as $name => $tag) {
+      if (isset($tag['#attached']['metatag_set_preprocess_variable'])) {
+        foreach ($tag['#attached']['metatag_set_preprocess_variable'] as $key => $val) {
+          if ($val[0] == 'html' && $val[1] == 'head_title') {
+            drupal_set_title($val[2]);
+          }
+        }
+      }
+    }
+  }
+}
