? boost-627638.patch
Index: boost.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/boost/boost.module,v
retrieving revision 1.3.2.2.2.5.2.281
diff -u -p -r1.3.2.2.2.5.2.281 boost.module
--- boost.module	13 Dec 2009 08:40:46 -0000	1.3.2.2.2.5.2.281
+++ boost.module	24 Dec 2009 05:23:20 -0000
@@ -4126,10 +4126,18 @@ function boost_crawler_run($expire = -1)
  *  string - Content type header.
  */
 function boost_async_opp($output, $wait = TRUE, $content_type = "text/html", $length = 0) {
+  // Calculate content length
   if ($length == 0) {
     $output .= "\n";
     $length = (mb_strlen($output, '8bit')-1);
   }
+  // Grab old headers
+  $old_headers = array();
+  if (function_exists(headers_list)) {
+    foreach (headers_list() as $value) {
+      $old_headers[] = $value;
+    }
+  }
   // Prime php for background operations
   $loop = 0;
   while (ob_get_level() && $loop < 25) {
@@ -4138,15 +4146,21 @@ function boost_async_opp($output, $wait 
   }
   header("Connection: close");
   ignore_user_abort();
-
-  // Output text
   ob_start();
+
+  // Apply old headers
+  if ($old_headers) {
+    foreach ($old_headers as $value) {
+      header($value);
+    }
+  }
   header("Content-type: " . $content_type);
   header("Expires: Sun, 19 Nov 1978 05:00:00 GMT");
   header("Cache-Control: no-cache");
   header("Cache-Control: must-revalidate");
   header("Content-Length: " . $length);
   header("Connection: close");
+  // output data
   print($output);
   ob_end_flush();
   flush();
