Commit 55b0d7b
committed
Added CCHARW_MAX (limit on total characters in a cell)
The total characters in a cell (base character plus combining characters),
plus a '\0' terminator, will be less than CCHARW_MAX (currently set to
20, which should be much more than sufficient for most purposes). This
value is available on ncurses (and apparently not elsewhere), but any
ncurses implementation really ought to have such a limit.
Further work will be needed here. You can, for example, (still) use
waddch( ) to add an arbitrary number of combining characters; this needs
to be revised so that waddch( ) returns ERR when needed. Also, if any
of the characters are in the Supplemental Multilingual Plane (SMP), they
will actually be translated into _two_ wchar_t values using Unicode
surrogates on Microsoft Windows (and, theoretically, any other platform
similarly bedeviled by 16-bit wchar_t values).
Fix follows from some points made by Robin Haberkorn on the bug-ncurses
mailing list.1 parent ac0c945 commit 55b0d7b
2 files changed
Lines changed: 9 additions & 7 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
48 | | - | |
| 48 | + | |
49 | 49 | | |
50 | 50 | | |
51 | 51 | | |
| |||
148 | 148 | | |
149 | 149 | | |
150 | 150 | | |
| 151 | + | |
151 | 152 | | |
152 | 153 | | |
153 | 154 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
274 | 274 | | |
275 | 275 | | |
276 | 276 | | |
277 | | - | |
| 277 | + | |
278 | 278 | | |
279 | 279 | | |
280 | 280 | | |
| |||
285 | 285 | | |
286 | 286 | | |
287 | 287 | | |
288 | | - | |
| 288 | + | |
289 | 289 | | |
290 | 290 | | |
291 | 291 | | |
| |||
308 | 308 | | |
309 | 309 | | |
310 | 310 | | |
311 | | - | |
| 311 | + | |
312 | 312 | | |
313 | 313 | | |
314 | 314 | | |
| |||
325 | 325 | | |
326 | 326 | | |
327 | 327 | | |
328 | | - | |
| 328 | + | |
| 329 | + | |
329 | 330 | | |
330 | 331 | | |
331 | 332 | | |
332 | 333 | | |
333 | | - | |
334 | 334 | | |
335 | 335 | | |
336 | 336 | | |
337 | 337 | | |
338 | | - | |
| 338 | + | |
| 339 | + | |
339 | 340 | | |
340 | 341 | | |
341 | 342 | | |
| |||
0 commit comments