mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
(collate_read): Handle collating-element and reorder_after following copy statement correctly.
This commit is contained in:
parent
518bd01a3d
commit
755b39d29b
@ -2742,7 +2742,7 @@ collate_read (struct linereader *ldfile, struct localedef_t *result,
|
||||
break;
|
||||
}
|
||||
|
||||
if (state != 0)
|
||||
if (state != 0 && state != 2)
|
||||
goto err_label;
|
||||
|
||||
arg = lr_token (ldfile, charmap, repertoire, verbose);
|
||||
@ -3533,7 +3533,9 @@ error while adding equivalent collating symbol"));
|
||||
goto move_entry;
|
||||
|
||||
if (find_entry (&collate->elem_table, symstr, symlen,
|
||||
(void **) &seqp) == 0)
|
||||
(void **) &seqp) == 0
|
||||
&& (seqp->last != NULL || seqp->next != NULL
|
||||
|| (collate->start != NULL && seqp == collate->start)))
|
||||
{
|
||||
move_entry:
|
||||
/* Remove the entry from the old position. */
|
||||
|
Loading…
Reference in New Issue
Block a user