diff options
author | Oleg Oshmyan <chortos@inbox.lv> | 2014-05-18 00:31:14 +0100 |
---|---|---|
committer | Oleg Oshmyan <chortos@inbox.lv> | 2014-06-06 15:08:16 +0100 |
commit | 0908a56be261915f9155e771bca6593645418da8 (patch) | |
tree | 5bd60dba152db7441a4c88fb9b76e46defb433a3 /libass/ass_drawing.c | |
parent | cc9aaeb4596af2c57d09ae8853670b5c811d19cd (diff) | |
download | libass-0908a56be261915f9155e771bca6593645418da8.tar.bz2 libass-0908a56be261915f9155e771bca6593645418da8.tar.xz |
Introduce ass_drawing_add_chars for adding a whole string at once
Diffstat (limited to 'libass/ass_drawing.c')
-rw-r--r-- | libass/ass_drawing.c | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/libass/ass_drawing.c b/libass/ass_drawing.c index 258ea30..a5938c5 100644 --- a/libass/ass_drawing.c +++ b/libass/ass_drawing.c @@ -381,6 +381,20 @@ void ass_drawing_add_char(ASS_Drawing* drawing, char symbol) } /* + * \brief Add an ASCII string to the drawing text buffer + */ +void ass_drawing_add_chars(ASS_Drawing* drawing, char *str, int n) +{ + if (drawing->i + n + 1 >= drawing->size) { + drawing->size = drawing->i + n + 1; + drawing->text = realloc(drawing->text, drawing->size); + } + + memcpy(drawing->text + drawing->i, str, n); + drawing->text[drawing->i += n] = 0; +} + +/* * \brief Create a hashcode for the drawing * XXX: To avoid collisions a better hash algorithm might be useful. */ |