mirror of
https://sourceware.org/git/glibc.git
synced 2024-12-14 23:30:06 +00:00
(collate_finish): Assign a wide char collation sequence value to multi
character collating elements, and avoid over writing by non-character elements.
This commit is contained in:
parent
ae1e7a83b1
commit
0ee5ee3c3b
@ -1666,6 +1666,10 @@ collate_finish (struct localedef_t *locale, struct charmap_t *charmap)
|
||||
|
||||
runp->wcseqorder = wcseqact++;
|
||||
}
|
||||
else if (runp->mbs != NULL && runp->weights != NULL)
|
||||
{
|
||||
runp->wcseqorder = wcseqact++;
|
||||
}
|
||||
|
||||
/* Up to the next entry. */
|
||||
runp = runp->next;
|
||||
@ -1700,8 +1704,9 @@ collate_finish (struct localedef_t *locale, struct charmap_t *charmap)
|
||||
struct element_t *lastp;
|
||||
|
||||
/* Insert the collation sequence value. */
|
||||
collseq_table_add (&collate->wcseqorder, runp->wcs[0],
|
||||
runp->wcseqorder);
|
||||
if (runp->is_character)
|
||||
collseq_table_add (&collate->wcseqorder, runp->wcs[0],
|
||||
runp->wcseqorder);
|
||||
|
||||
/* Find the point where to insert in the list. */
|
||||
e = wchead_table_get (&collate->wcheads, runp->wcs[0]);
|
||||
|
Loading…
Reference in New Issue
Block a user