diff options
author | Philip Withnall <withnall@endlessm.com> | 2017-02-17 09:27:36 +0000 |
---|---|---|
committer | Matthias Clasen <mclasen@redhat.com> | 2017-04-08 00:55:32 -0400 |
commit | 6f0648043fe2a084db15a6cdded8402625676aef (patch) | |
tree | 4e561b11cfaa3786a4af75c7dc5a0a0e345532d9 /pango/pango-utils.c | |
parent | 97fc6fbffe65d9ca4e92fc8979808faebed0ee35 (diff) | |
download | pango-6f0648043fe2a084db15a6cdded8402625676aef.tar.gz |
pango-utils: Fix non-escaped \r\n line endings in pango_read_line()
The handling for \r or \r\n line endings in pango_read_line() was
broken. It should have discarded the \r or \r\n, but was only doing this
for \n or \n\r. The condition (c == EOF) could never have been reached.
Coverity ID: 1391696
Signed-off-by: Philip Withnall <withnall@endlessm.com>
https://bugzilla.gnome.org/show_bug.cgi?id=778816
Diffstat (limited to 'pango/pango-utils.c')
-rw-r--r-- | pango/pango-utils.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/pango/pango-utils.c b/pango/pango-utils.c index 9bdc6f15..313471fe 100644 --- a/pango/pango-utils.c +++ b/pango/pango-utils.c @@ -338,11 +338,12 @@ pango_read_line (FILE *stream, GString *str) if (!comment) quoted = TRUE; break; + case '\r': case '\n': { int next_c = getc_unlocked (stream); - if (!(c == EOF || + if (!(next_c == EOF || (c == '\r' && next_c == '\n') || (c == '\n' && next_c == '\r'))) ungetc (next_c, stream); |