diff --git a/Lib/test/test_traceback.py b/Lib/test/test_traceback.py
index 7f0ede5..b3c5a50 100644
--- a/Lib/test/test_traceback.py
+++ b/Lib/test/test_traceback.py
@@ -130,15 +130,24 @@
     def test_string_exception1(self):
         str_type = "String Exception"
         err = traceback.format_exception_only(str_type, None)
-        self.assert_(len(err) == 1)
-        self.assert_(err[0] == str_type + '\n')
+        self.assertEqual(len(err), 1)
+        self.assertEqual(err[0], str_type + '\n')
 
     def test_string_exception2(self):
         str_type = "String Exception"
         str_value = "String Value"
         err = traceback.format_exception_only(str_type, str_value)
-        self.assert_(len(err) == 1)
-        self.assert_(err[0] == str_type + ': ' + str_value + '\n')
+        self.assertEqual(len(err), 1)
+        self.assertEqual(err[0], str_type + ': ' + str_value + '\n')
+
+    def test_format_exception_only_bad__str__(self):
+        class X(Exception):
+            def __str__(self):
+                1/0
+        err = traceback.format_exception_only(X, X())
+        self.assertEqual(len(err), 1)
+        str_value = '<unprintable %s object>' % X.__name__
+        self.assertEqual(err[0], X.__name__ + ': ' + str_value + '\n')
 
 
 def test_main():
diff --git a/Lib/traceback.py b/Lib/traceback.py
index a0b5759..505a305 100644
--- a/Lib/traceback.py
+++ b/Lib/traceback.py
@@ -202,7 +202,12 @@
 
 def _format_final_exc_line(etype, value):
     """Return a list of a single line -- normal case for format_exception_only"""
-    if value is None or not str(value):
+    try:
+        printable = value is None or not str(value)
+    except:
+        printable = False
+
+    if printable:
         line = "%s\n" % etype
     else:
         line = "%s: %s\n" % (etype, _some_str(value))
diff --git a/Misc/NEWS b/Misc/NEWS
index 1923b4f..7a1d7bf 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -4,6 +4,38 @@
 
 (editors: check NEWS.help for information about editing NEWS using ReST.)
 
+What's New in Python 2.5 release candidate 1?
+=============================================
+
+*Release date: XX-AUG-2006*
+
+Core and builtins
+-----------------
+
+
+Library
+-------
+
+- Bug #1531405, format_exception no longer raises an exception if
+  str(exception) raised an exception.
+
+
+Extension Modules
+-----------------
+
+
+Tests
+-----
+
+
+Build
+-----
+
+
+Mac
+---
+
+
 What's New in Python 2.5 beta 3?
 ================================
 
