diff options
Diffstat (limited to 'riscos/font.c')
-rw-r--r-- | riscos/font.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/riscos/font.c b/riscos/font.c index d92d5b521..326cca973 100644 --- a/riscos/font.c +++ b/riscos/font.c @@ -358,10 +358,23 @@ bool nsfont_split(const plot_font_style_t *fstyle, return false; } - if (*char_offset != length) + if (*char_offset != length) { + /* we found something to split at */ + size_t orig = *char_offset; + + /* ensure a space at <= the split point we found */ while (*char_offset && string[*char_offset] != ' ') (*char_offset)--; + /* nothing valid found <= split point, advance to next space */ + if (*char_offset == 0) { + *char_offset = orig; + while (*char_offset != length && + string[*char_offset] != ' ') + (*char_offset)++; + } + } + code = rufl_width(font_family, font_style, font_size, string, *char_offset, actual_x); |