bf7b1b1
diff -pruN -x '.moz*' -x .deps -x 'thunderbird*' -x '*.mk' -x 'config*' -x dist -x build -x toolkit -x '*o' -x '*a' -x '*html' mozilla.orig/layout/generic/nsTextFrame.cpp mozilla/layout/generic/nsTextFrame.cpp
bf7b1b1
--- mozilla.orig/layout/generic/nsTextFrame.cpp	2006-12-20 12:53:26.000000000 +0900
bf7b1b1
+++ mozilla/layout/generic/nsTextFrame.cpp	2006-12-20 15:43:14.000000000 +0900
bf7b1b1
@@ -2097,11 +2097,11 @@ nsTextFrame::PaintTextDecorations(nsIRen
bf7b1b1
     nsRect rect = GetRect();
bf7b1b1
     while(aDetails){
bf7b1b1
       const nscoord* sp= aSpacing;
bf7b1b1
-      PRInt32 startOffset = 0;
bf7b1b1
-      PRInt32 textWidth = 0;
bf7b1b1
-      PRInt32 start = PR_MAX(0,(aDetails->mStart - (PRInt32)aIndex));
bf7b1b1
-      PRInt32 end = PR_MIN((PRInt32)aLength,(aDetails->mEnd - (PRInt32)aIndex));
bf7b1b1
-      PRInt32 i;
bf7b1b1
+      PRUint32 startOffset = 0;
bf7b1b1
+      PRUint32 textWidth = 0;
bf7b1b1
+      PRUint32 start = PR_MAX(0,(aDetails->mStart - (PRInt32)aIndex));
bf7b1b1
+      PRUint32 end = PR_MIN((PRInt32)aLength,(aDetails->mEnd - (PRInt32)aIndex));
bf7b1b1
+      PRUint32 i;
bf7b1b1
       if ((start < end) && ((aLength - start) > 0))
bf7b1b1
       {
bf7b1b1
         //aDetails allready processed to have offsets from frame start not content offsets
bf7b1b1
@@ -2117,7 +2117,7 @@ nsTextFrame::PaintTextDecorations(nsIRen
bf7b1b1
                 }
bf7b1b1
               }
bf7b1b1
               else
bf7b1b1
-                aRenderingContext.GetWidth(aText, start, startOffset);
bf7b1b1
+                aRenderingContext.GetRangeWidth(aText, aLength, 0, start, startOffset);
bf7b1b1
             }
bf7b1b1
             if (sp){
bf7b1b1
               for (i = start; i < end;i ++){
bf7b1b1
@@ -2125,8 +2125,7 @@ nsTextFrame::PaintTextDecorations(nsIRen
bf7b1b1
               }
bf7b1b1
             }
bf7b1b1
             else
bf7b1b1
-              aRenderingContext.GetWidth(aText + start,
bf7b1b1
-                                           PRUint32(end - start), textWidth);
bf7b1b1
+              aRenderingContext.GetRangeWidth(aText, aLength, start, end, textWidth);
bf7b1b1
   
bf7b1b1
           }
bf7b1b1
           nscoord offset, size;