diff -u PEAR-1.4.11/Exception.php PEAR-1.4.11-changed/Exception.php
--- PEAR-1.4.11/Exception.php	2006-10-20 15:22:08.000000000 +0800
+++ PEAR-1.4.11-changed/Exception.php	2006-10-20 15:22:36.000000000 +0800
@@ -242,10 +242,10 @@
         if ($this->cause instanceof PEAR_Exception) {
             $this->cause->getCauseMessage($causes);
         } elseif ($this->cause instanceof Exception) {
-            $causes[] = array('class'   => get_class($cause),
-                           'message' => $cause->getMessage(),
-                           'file' => $cause->getFile(),
-                           'line' => $cause->getLine());
+            $causes[] = array('class'   => get_class($this->cause),
+                           'message' => $this->cause->getMessage(),
+                           'file' => $this->cause->getFile(),
+                           'line' => $this->cause->getLine());
 
         } elseif (is_array($this->cause)) {
             foreach ($this->cause as $cause) {
