about summary refs log tree commit diff
path: root/locale/programs/ld-ctype.c
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>2000-04-06 07:42:24 +0000
committerUlrich Drepper <drepper@redhat.com>2000-04-06 07:42:24 +0000
commit723faa38f929acece94d98a5b389df17f13ddfe5 (patch)
tree1749dd3700b3d5a6d45e8ca74670ef0409306b64 /locale/programs/ld-ctype.c
parenta1303dc8dc57dbcd4605992dc177d11ae4d45aab (diff)
downloadglibc-723faa38f929acece94d98a5b389df17f13ddfe5.tar.gz
glibc-723faa38f929acece94d98a5b389df17f13ddfe5.tar.xz
glibc-723faa38f929acece94d98a5b389df17f13ddfe5.zip
Update.
2000-04-06  Ulrich Drepper  <drepper@redhat.com>

	* locale/programs/charmap.c (parse_charmap): Recognize <Uxxxx>
	values as character names.

	* locale/programs/ld-ctype.c (get_character): Handle missing
	repertoire map correctly.
Diffstat (limited to 'locale/programs/ld-ctype.c')
-rw-r--r--locale/programs/ld-ctype.c21
1 files changed, 12 insertions, 9 deletions
diff --git a/locale/programs/ld-ctype.c b/locale/programs/ld-ctype.c
index 21f271f706..23ca2368c8 100644
--- a/locale/programs/ld-ctype.c
+++ b/locale/programs/ld-ctype.c
@@ -1192,15 +1192,18 @@ get_character (struct token *now, struct charmap_t *charmap,
 
 	  if (*seqp == NULL)
 	    {
-	      /* Insert a negative entry.  */
-	      static const struct charseq negative
-		= { .ucs4 = ILLEGAL_CHAR_VALUE };
-	      uint32_t *newp = obstack_alloc (&repertoire->mem_pool,
-					      sizeof (uint32_t));
-	      *newp = now->val.ucs4;
-
-	      insert_entry (&repertoire->seq_table, newp, sizeof (uint32_t),
-			    (void *) &negative);
+	      if (repertoire != NULL)
+		{
+		  /* Insert a negative entry.  */
+		  static const struct charseq negative
+		    = { .ucs4 = ILLEGAL_CHAR_VALUE };
+		  uint32_t *newp = obstack_alloc (&repertoire->mem_pool,
+						  sizeof (uint32_t));
+		  *newp = now->val.ucs4;
+
+		  insert_entry (&repertoire->seq_table, newp,
+				sizeof (uint32_t), (void *) &negative);
+		}
 	    }
 	  else
 	    (*seqp)->ucs4 = now->val.ucs4;