Index: gnopernicus/srcore/srctrl.c
===================================================================
RCS file: /cvs/gnome/gnopernicus/srcore/srctrl.c,v
retrieving revision 1.96
diff -u -r1.96 srctrl.c
--- gnopernicus/srcore/srctrl.c	26 Aug 2004 15:26:14 -0000	1.96
+++ gnopernicus/srcore/srctrl.c	17 Sep 2004 08:00:33 -0000
@@ -2462,12 +2462,27 @@
 
         cell = g_array_index (line->srw_acc_line, SRWAccCell *, i);
 	    
-        if (cell->id > 0)
+        switch (cell->id)
 	{
-	    gchar *tmp;
-	    tmp = spout;
-	    spout = g_strconcat (spout, cell->ch, NULL);
-	    g_free (tmp);
+	    case SRW_DELIMITER_CELL:
+	    {
+		gchar *tmp;
+		tmp = spout;
+		spout = g_strconcat (spout, " ", NULL);
+		g_free (tmp);
+	    };
+	    break;
+	    default: 
+	    {
+		if (cell->id > 0)
+		{
+		    gchar *tmp;
+		    tmp = spout;
+		    spout = g_strconcat (spout, cell->ch, NULL);
+		    g_free (tmp);
+		}    
+	    };
+	    break;
 	}
     }
     
Index: gnopernicus/srlow/libsrlow/screen-review.c
===================================================================
RCS file: /cvs/gnome/gnopernicus/srlow/libsrlow/screen-review.c,v
retrieving revision 1.28
diff -u -r1.28 screen-review.c
--- gnopernicus/srlow/libsrlow/screen-review.c	30 Aug 2004 13:41:43 -0000	1.28
+++ gnopernicus/srlow/libsrlow/screen-review.c	17 Sep 2004 08:00:40 -0000
@@ -203,7 +203,8 @@
 
 #define IS_CLIPPING_CONTAINER(a) ( ( (a) != SPI_ROLE_PAGE_TAB ) && 	\
 				   ( (a) != SPI_ROLE_MENU) 	&&	\
-				   ( (a) != -1) )	
+				   ( (a) != -1) )
+#define MAX_PIXELS_PER_COLUMNS	 10000
 /*______________________________</MACROS>_____________________________________*/
 
 /*______________________________< GLOBALS>____________________________________*/
@@ -212,7 +213,7 @@
 static SRWLines		*lines			= NULL;
 static GArray 		*lines_index 		= NULL;
 static gint		id 			= 0,
-			pixels_per_column 	= G_MAXINT;
+			pixels_per_column 	= MAX_PIXELS_PER_COLUMNS;
 static glong		align_flags		= 0;
 static SRWBoundaryRect 	clipping_rectangle;
 /*______________________________</GLOBALS>____________________________________*/
@@ -841,7 +842,7 @@
 		    text_chunk->start_offset = start;
 		    text_chunk->end_offset = end ;
 
-		    if (text_chunk->text_bounds.width > 0 && string && strlen (string) )
+		    if (text_chunk->text_bounds.width > 0 && string && g_utf8_strlen (string, -1) )
 			pixels_per_column = MIN (text_chunk->text_bounds.width / g_utf8_strlen (string, -1),
 						pixels_per_column);
 		}
@@ -885,6 +886,9 @@
 			text_chunk->text_bounds = text_chunk->clip_bounds;
 			text_chunk->start_offset = 0;
 			text_chunk->end_offset = strlen (string);
+			if (text_chunk->text_bounds.width > 0 && string && g_utf8_strlen (string,-1) )
+			    pixels_per_column = MIN (text_chunk->text_bounds.width / g_utf8_strlen (string, -1),
+						pixels_per_column);
 #ifdef SRW_TEXT_CHUNK_DEBUG
 		fprintf (stderr, "\n\nsrw_text_chunk_from_accessible: NOT text |%s| %20s",
 				    string, 
@@ -2681,7 +2685,7 @@
   /*new && init*/
     clip_bounds	 = srw_boundary_rect_new0 ();
     id = 0;
-    pixels_per_column = G_MAXINT;
+    pixels_per_column = MAX_PIXELS_PER_COLUMNS;
     lines_index = NULL;
     if (scope_flags & SRW_SCOPE_WINDOW)
     {
