Change suggested by Maciej during code review.
authordarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Oct 2004 22:05:02 +0000 (22:05 +0000)
committerdarin <darin@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Tue, 19 Oct 2004 22:05:02 +0000 (22:05 +0000)
        * WebCoreSupport.subproj/WebTextRenderer.m: Changed rounding hack table to be const so it can be in shared instead
        of private memory, and doesn't require an initialization function.
        (+[WebTextRenderer initialize]): Removed initialization.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@7860 268f45cc-cd09-0410-ab3c-d52691b4dbfc

WebKit/ChangeLog
WebKit/WebCoreSupport.subproj/WebTextRenderer.m

index 498e5d1..9650029 100644 (file)
@@ -1,5 +1,13 @@
 2004-10-19  Darin Adler  <darin@apple.com>
 
+        Change suggested by Maciej during code review.
+
+        * WebCoreSupport.subproj/WebTextRenderer.m: Changed rounding hack table to be const so it can be in shared instead
+        of private memory, and doesn't require an initialization function.
+        (+[WebTextRenderer initialize]): Removed initialization.
+
+2004-10-19  Darin Adler  <darin@apple.com>
+
         Reviewed by Maciej.
 
         - fixed <rdar://problem/3838934> Safari stops loading pages after rangeOfCharacterFromSet nil argument exception
index dd56a35..3b54ea7 100644 (file)
@@ -171,16 +171,16 @@ static inline BOOL isSpace(UniChar c)
     return c == SPACE || c == '\n' || c == NO_BREAK_SPACE;
 }
 
-static char isRoundingHackCharacterTable[0x100];
-
-static void setupRoundingHackCharacterTable(void)
-{
-    isRoundingHackCharacterTable[NO_BREAK_SPACE] = 1;
-    isRoundingHackCharacterTable['\n'] = 1;
-    isRoundingHackCharacterTable[SPACE] = 1;
-    isRoundingHackCharacterTable['-'] = 1;
-    isRoundingHackCharacterTable['?'] = 1;
-}
+static const uint8_t isRoundingHackCharacterTable[0x100] = {
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /*\n*/, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    1 /*space*/, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /*-*/, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1 /*?*/,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    1 /*no-break space*/, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
+    0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0
+};
 
 static inline BOOL isRoundingHackCharacter(UniChar c)
 {
@@ -278,7 +278,6 @@ static BOOL alwaysUseATSU = NO;
 {
     nonBaseChars = CFCharacterSetGetPredefined(kCFCharacterSetNonBase);
     bufferTextDrawing = [[[NSUserDefaults standardUserDefaults] stringForKey:@"BufferTextDrawing"] isEqual: @"YES"];
-    setupRoundingHackCharacterTable();
 }
 
 - initWithFont:(NSFont *)f usingPrinterFont:(BOOL)p