Re: Charmap for gnustep Exception

Ingolf Jandt <[email protected]> Tue, 27 Jun 2006 13:24:21 +0200
Newsgroups gmane.comp.lib.gnustep.applications
Organization http://freemail.web.de/
Message-ID <[email protected]>
Found the reason: The current NSMatrix implementation obviously forgets about the column number when the last row is deletet. So leave at least one. The appended patch does this.
-- 
   - Ingolf Jandt -
_____________________________________________________________________
Der WEB.DE SmartSurfer hilft bis zu 70% Ihrer Onlinekosten zu sparen!
http://smartsurfer.web.de/?mc=100071&distributionid=000000000071

_______________________________________________
Apps-gnustep mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/apps-gnustep
columnerror.diff (text/plain, 1 KB)
Index: Controller.m
===================================================================
RCS file: /sources/charmap/charmap/Controller.m,v
retrieving revision 1.61
diff -u -r1.61 Controller.m
--- Controller.m	6 Feb 2005 04:29:03 -0000	1.61
+++ Controller.m	27 Jun 2006 11:16:38 -0000
@@ -135,9 +135,9 @@
   unichar aChar;
   int i, j, k, block, blockSize;
   unsigned int blockStart, blockEnd;
-  
-  /* Remove all rows */
-  for (i = [charmapMatrix numberOfRows]; i >= 0; i--)
+
+  /* Remove all rows BUT ONE*/
+  for (i = [charmapMatrix numberOfRows]; i >= 1; i--)
     {
       if ([charmapMatrix cellAtRow: i column: 0])
 	[charmapMatrix removeRow: i];
@@ -150,7 +150,8 @@
   blockSize = [unicodeData getBlockSize: block];
   blockStart = [unicodeData getBlockStart: block];
   blockEnd = [unicodeData getBlockEnd: block];
-  for (i = 0; i < ((blockSize / [charmapMatrix numberOfColumns]) + 1); i++)
+  for (i = 0; i < 
+	 ((blockSize / (j=[charmapMatrix numberOfColumns]?j:1)) + 1); i++)
     [charmapMatrix insertRow: 0];
 
   /* Fill the cells */