From 5fbba6b0db3e13bb42a6208c408497469e501a26 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Mon, 17 Sep 2018 22:05:03 +0200 Subject: [PATCH 5/5] vcc.y - do not ignore field separator in QUOTED-PRINTABLE mode References: https://github.com/libical/libical/pull/354 "N;ENCODING=QUOTED-PRINTABLE:=C3=A4=C3=B6;=C3=BC=C3=9F\n" was parsed as a single field, while in fact, it is two. References: #353 --- src/libicalvcal/vcc.c | 5 +++-- src/libicalvcal/vcc.y | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/libicalvcal/vcc.c b/src/libicalvcal/vcc.c index f723a4e1..fd056992 100644 --- a/src/libicalvcal/vcc.c +++ b/src/libicalvcal/vcc.c @@ -1167,8 +1167,9 @@ static char* lexGetQuotedPrintable() lexAppendc(c | d); break; } /* '=' */ - case '\n': { - lexPushLookaheadc('\n'); + case '\n': + case ';': { + lexPushLookaheadc(cur); goto EndString; } case (char)EOF: diff --git a/src/libicalvcal/vcc.y b/src/libicalvcal/vcc.y index 4f52fe35..df770df6 100644 --- a/src/libicalvcal/vcc.y +++ b/src/libicalvcal/vcc.y @@ -988,8 +988,9 @@ static char* lexGetQuotedPrintable() lexAppendc(c | d); break; } /* '=' */ - case '\n': { - lexPushLookaheadc('\n'); + case '\n': + case ';': { + lexPushLookaheadc(cur); goto EndString; } case (char)EOF: -- 2.19.1