gucharmap r1711 - trunk/gucharmap



Author: chpe
Date: Fri Mar 21 11:00:26 2008
New Revision: 1711
URL: http://svn.gnome.org/viewvc/gucharmap?rev=1711&view=rev

Log:
Make gucharmap_unicode_get_version_string return NULL for unassigned characters,
and fix the one-off indexing for assigned characters.


Modified:
   trunk/gucharmap/gucharmap-charmap.c
   trunk/gucharmap/gucharmap-unicode-info.c
   trunk/gucharmap/gucharmap-unicode-info.h

Modified: trunk/gucharmap/gucharmap-charmap.c
==============================================================================
--- trunk/gucharmap/gucharmap-charmap.c	(original)
+++ trunk/gucharmap/gucharmap-charmap.c	Fri Mar 21 11:00:26 2008
@@ -454,7 +454,7 @@
 
   /* Unicode version */
   version = gucharmap_get_unicode_version (uc);
-  if (version)
+  if (version != GUCHARMAP_UNICODE_VERSION_UNASSIGNED)
     insert_vanilla_detail (charmap, buffer, &iter,
                            _("In Unicode since:"),
                            gucharmap_unicode_version_to_string (version));

Modified: trunk/gucharmap/gucharmap-unicode-info.c
==============================================================================
--- trunk/gucharmap/gucharmap-unicode-info.c	(original)
+++ trunk/gucharmap/gucharmap-unicode-info.c	Fri Mar 21 11:00:26 2008
@@ -192,7 +192,7 @@
   gint max = G_N_ELEMENTS (unicode_versions) - 1;
 
   if (uc < unicode_versions[0].start || uc > unicode_versions[max].end)
-    return GUCHARMAP_UNICODE_VERSION_UNASSIGNED;;
+    return GUCHARMAP_UNICODE_VERSION_UNASSIGNED;
 
   while (max >= min)
     {
@@ -215,7 +215,10 @@
   g_return_val_if_fail (version >= GUCHARMAP_UNICODE_VERSION_UNASSIGNED &&
                         version <= GUCHARMAP_UNICODE_VERSION_LATEST, NULL);
 
-  return unicode_version_strings + unicode_version_string_offsets[version];
+  if (G_UNLIKELY (version == GUCHARMAP_UNICODE_VERSION_UNASSIGNED))
+    return NULL;
+
+  return unicode_version_strings + unicode_version_string_offsets[version - 1];
 }
 
 #if ENABLE_UNIHAN

Modified: trunk/gucharmap/gucharmap-unicode-info.h
==============================================================================
--- trunk/gucharmap/gucharmap-unicode-info.h	(original)
+++ trunk/gucharmap/gucharmap-unicode-info.h	Fri Mar 21 11:00:26 2008
@@ -38,7 +38,8 @@
   GUCHARMAP_UNICODE_VERSION_4_0,
   GUCHARMAP_UNICODE_VERSION_4_1,
   GUCHARMAP_UNICODE_VERSION_5_0,
-  GUCHARMAP_UNICODE_VERSION_LATEST = GUCHARMAP_UNICODE_VERSION_5_0 /* private, will move forward with each revision */
+  GUCHARMAP_UNICODE_VERSION_5_1,
+  GUCHARMAP_UNICODE_VERSION_LATEST = GUCHARMAP_UNICODE_VERSION_5_1 /* private, will move forward with each revision */
 } GucharmapUnicodeVersion;
 
 /* return values are read-only */



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]