Index: src/orca/scripts/Evolution.py
===================================================================
--- src/orca/scripts/Evolution.py	(revision 2368)
+++ src/orca/scripts/Evolution.py	(working copy)
@@ -463,6 +463,19 @@
             if i == total:
                 done = True
 
+        # If there is anything left unspoken, speak it now.
+        # 
+        if len(string) != 0:
+            string = self.adjustForRepeats(string)
+            if string.isupper():
+                voice = settings.voices[settings.UPPERCASE_VOICE]
+            else:
+                voice = settings.voices[settings.DEFAULT_VOICE]
+
+            yield [speechserver.SayAllContext(textObjs, string,
+                                              startOffset, endOffset),
+                   voice]
+
     def __sayAllProgressCallback(self, context, type):
         """Provide feedback during the sayAll operation.
         """
Index: ChangeLog
===================================================================
--- ChangeLog	(revision 2368)
+++ ChangeLog	(working copy)
@@ -1,3 +1,9 @@
+2007-05-10  Rich Burridge <rich.burridge@sun.com>
+
+        * src/orca/scripts/Evolution.py:
+          Fix for the Evolution sayAll problem reported in comment #48
+          of bug #400716.
+
 2007-05-09  Joanmarie Diggs <j-diggs@comcast.net>
 
         * src/orca/Gecko.py: More work on bug #423427 – Need to add
