diff --git a/Lib/pdb.py b/Lib/pdb.py
index 79a36a6..0751c17 100755
--- a/Lib/pdb.py
+++ b/Lib/pdb.py
@@ -237,7 +237,7 @@
             if type(t) == type(''):
                 exc_type_name = t
             else: exc_type_name = t.__name__
-            print >>self.stdout, '***', exc_type_name + ':', _saferepr(v)
+            print >>self.stdout, '***', exc_type_name + ':', v
 
     def precmd(self, line):
         """Handle alias expansion and ';;' separator."""
@@ -753,7 +753,7 @@
             if isinstance(t, str):
                 exc_type_name = t
             else: exc_type_name = t.__name__
-            print >>self.stdout, '***', exc_type_name + ':', _saferepr(v)
+            print >>self.stdout, '***', exc_type_name + ':', repr(v)
             raise
 
     def do_p(self, arg):
diff --git a/Lib/test/test_pdb.py b/Lib/test/test_pdb.py
index 0ef525e..ce64d17 100644
--- a/Lib/test/test_pdb.py
+++ b/Lib/test/test_pdb.py
@@ -126,33 +126,6 @@
     """
 
 
-def test_pdb_unicode_exception():
-    r"""This tests exceptions that cannot be displayed due to Unicode issues.
-    http://bugs.python.org/issue7539
-
-    >>> def test_function():
-    ...     import pdb; pdb.Pdb().set_trace()
-    ...     pass
-
-    >>> def raising_function():
-    ...     raise ValueError(u"\xff")
-
-    >>> with PdbTestInput([
-    ...     'raising_function()',
-    ...     'p raising_function()',
-    ...     'continue',
-    ... ]):
-    ...     test_function()
-    > <doctest test.test_pdb.test_pdb_unicode_exception[0]>(3)test_function()
-    -> pass
-    (Pdb) raising_function()
-    *** ValueError: ValueError(u'\xff',)
-    (Pdb) p raising_function()
-    *** ValueError: ValueError(u'\xff',)
-    (Pdb) continue
-    """
-
-
 def test_main():
     from test import test_pdb
     test_support.run_doctest(test_pdb, verbosity=True)
