Commit eb43f7f
committed
locale.c: Don't do asymmetric back out on failure
This fixes #23519
When something goes wrong doing locale-aware string collation, the code
attempts to carry on as well as can be expected. Prior to this commit
the backout code was asymmetric, trying to undo things that had not been
done. This happened when the failure was early on.
In the case of this ticket, the platform has a defective locale that was
detectable before getting very far along.
The solution adopted here is to jump to a different label for those
early failures that does less backout than for later failures.1 parent 01931a4 commit eb43f7f
1 file changed
+5
-6
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
9653 | 9653 | | |
9654 | 9654 | | |
9655 | 9655 | | |
9656 | | - | |
| 9656 | + | |
9657 | 9657 | | |
9658 | 9658 | | |
9659 | 9659 | | |
| |||
9779 | 9779 | | |
9780 | 9780 | | |
9781 | 9781 | | |
9782 | | - | |
| 9782 | + | |
9783 | 9783 | | |
9784 | 9784 | | |
9785 | 9785 | | |
| |||
9920 | 9920 | | |
9921 | 9921 | | |
9922 | 9922 | | |
9923 | | - | |
| 9923 | + | |
9924 | 9924 | | |
9925 | 9925 | | |
9926 | 9926 | | |
| |||
10080 | 10080 | | |
10081 | 10081 | | |
10082 | 10082 | | |
10083 | | - | |
| 10083 | + | |
10084 | 10084 | | |
10085 | 10085 | | |
10086 | 10086 | | |
| |||
10276 | 10276 | | |
10277 | 10277 | | |
10278 | 10278 | | |
10279 | | - | |
10280 | | - | |
| 10279 | + | |
10281 | 10280 | | |
10282 | 10281 | | |
10283 | 10282 | | |
| |||
0 commit comments