--- /home/behdad/gnome/pango-1-14/pango/pango-layout.c	2007-01-07 00:51:14.000000000 -0500
+++ pango/pango-layout.c	2007-01-22 18:41:43.000000000 -0500
@@ -4448,15 +4781,17 @@ cluster_width (PangoGlyphString *gs,
 	       int               cluster_start)
 {
   int i;
-  int log_cluster;
-  int width = 0;
+  int width;
 
-  log_cluster = gs->log_clusters[cluster_start];
-  for (i = cluster_start; i < gs->num_glyphs; i++) 
+  width = gs->glyphs[cluster_start].geometry.width;
+  i = cluster_start + 1;
+  while (i < gs->num_glyphs)
     {
-      if (gs->log_clusters[i] != log_cluster)
+      if (gs->glyphs[i].attr.is_cluster_start)
 	break;
+
       width += gs->glyphs[i].geometry.width;
+      i++;
     }
 
   return width;

