diff --git a/boot.php b/boot.php
index 3dcb32dfa7..e0ab98bde5 100755
--- a/boot.php
+++ b/boot.php
@@ -563,6 +563,10 @@ function absurl($path) {
return $path;
}
+function is_ajax() {
+ return (!empty($_SERVER['HTTP_X_REQUESTED_WITH']) && strtolower($_SERVER['HTTP_X_REQUESTED_WITH']) == 'xmlhttprequest');
+}
+
// Primarily involved with database upgrade, but also sets the
// base url for use in cmdline programs which don't have
diff --git a/mod/viewsrc.php b/mod/viewsrc.php
index 94847ec7b9..3fa4eaed53 100755
--- a/mod/viewsrc.php
+++ b/mod/viewsrc.php
@@ -25,7 +25,12 @@ function viewsrc_content(&$a) {
);
if(count($r))
- $o .= str_replace("\n",'
',$r[0]['body']);
+ if(is_ajax()) {
+ echo str_replace("\n",'
',$r[0]['body']);
+ killme();
+ } else {
+ $o .= str_replace("\n",'
',$r[0]['body']);
+ }
return $o;
}