Commit a4d2907
committed
gh-155877: Reject a NUL sharing a curses cell, keep a lone one
setcchar() takes a NUL-terminated string, so a NUL in a cell dropped the
rest of it: complexchar('a\0' + combining) kept only 'a', and an empty cell
read back as complexchar('') rather than complexchar('\0') as on a narrow
build. Reject a NUL among other characters, read an empty cell as a NUL,
and give a NUL its own cell in complexstr().1 parent ca6e733 commit a4d2907
2 files changed
Lines changed: 42 additions & 3 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1017 | 1017 | | |
1018 | 1018 | | |
1019 | 1019 | | |
| 1020 | + | |
| 1021 | + | |
| 1022 | + | |
| 1023 | + | |
| 1024 | + | |
| 1025 | + | |
| 1026 | + | |
| 1027 | + | |
| 1028 | + | |
| 1029 | + | |
| 1030 | + | |
| 1031 | + | |
| 1032 | + | |
| 1033 | + | |
| 1034 | + | |
| 1035 | + | |
| 1036 | + | |
| 1037 | + | |
| 1038 | + | |
| 1039 | + | |
| 1040 | + | |
| 1041 | + | |
| 1042 | + | |
| 1043 | + | |
| 1044 | + | |
| 1045 | + | |
| 1046 | + | |
| 1047 | + | |
| 1048 | + | |
| 1049 | + | |
| 1050 | + | |
1020 | 1051 | | |
1021 | 1052 | | |
1022 | 1053 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
561 | 561 | | |
562 | 562 | | |
563 | 563 | | |
| 564 | + | |
| 565 | + | |
| 566 | + | |
| 567 | + | |
564 | 568 | | |
565 | 569 | | |
566 | 570 | | |
| |||
908 | 912 | | |
909 | 913 | | |
910 | 914 | | |
911 | | - | |
| 915 | + | |
| 916 | + | |
| 917 | + | |
912 | 918 | | |
913 | 919 | | |
914 | 920 | | |
| |||
1334 | 1340 | | |
1335 | 1341 | | |
1336 | 1342 | | |
1337 | | - | |
| 1343 | + | |
| 1344 | + | |
| 1345 | + | |
1338 | 1346 | | |
1339 | 1347 | | |
1340 | 1348 | | |
| |||
1343 | 1351 | | |
1344 | 1352 | | |
1345 | 1353 | | |
1346 | | - | |
| 1354 | + | |
1347 | 1355 | | |
1348 | 1356 | | |
1349 | 1357 | | |
| |||
0 commit comments