diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/cyrsasl_digest.erl | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/cyrsasl_digest.erl b/src/cyrsasl_digest.erl index 1dfd5493..19069517 100644 --- a/src/cyrsasl_digest.erl +++ b/src/cyrsasl_digest.erl @@ -87,15 +87,17 @@ parse1([], [], T) -> parse1([], _S, _T) -> bad. -parse2([$" | Cs], Key, Val, Ts) -> +parse2([$\" | Cs], Key, Val, Ts) -> parse3(Cs, Key, Val, Ts); parse2([C | Cs], Key, Val, Ts) -> parse4(Cs, Key, [C | Val], Ts); parse2([], _, _, _) -> bad. -parse3([$" | Cs], Key, Val, Ts) -> +parse3([$\" | Cs], Key, Val, Ts) -> parse4(Cs, Key, Val, Ts); +parse3([$\\, C | Cs], Key, Val, Ts) -> + parse3(Cs, Key, [C | Val], Ts); parse3([C | Cs], Key, Val, Ts) -> parse3(Cs, Key, [C | Val], Ts); parse3([], _, _, _) -> |