﻿diff --git modules/system/system.install modules/system/system.install
index ad9bc8c..b551028 100644
--- modules/system/system.install
+++ modules/system/system.install
@@ -87,6 +87,19 @@ function system_requirements($phase) {
     return $requirements;
   }
 
+  // Test whether xdebug.show_exception_trace is enabled. When enabled, xdebug
+  // will display stack traces of caught exceptions, preventing installation.
+  $xdebug_show_exception_trace = trim(ini_get('xdebug.show_exception_trace'));
+
+  if (!empty($xdebug_show_exception_trace) && strtolower($xdebug_show_exception_trace) != 'off') {
+    $requirements['xdebug_show_exception_trace'] = array(
+      'title' => $t('Xdebug exception trace'),
+      'description' => $t('<em>xdebug.show_exception_trace</em> is enabled. Drupal requires this configuration directive to be disabled. The PHP manual has instructions for <a href="http://php.net/configuration.changes">how to change configuration settings</a>.'),
+      'severity' => REQUIREMENT_ERROR,
+      'value' => $t("Enabled ('@value')", array('@value' => $xdebug_show_exception_trace)),
+    );
+  }
+
   // Test PHP register_globals setting.
   $requirements['php_register_globals'] = array(
     'title' => $t('PHP register globals'),
