Fixed the bug in searching for triple quotes -- change the 'quote2'
variable from a pointer to an index, so a realloc() of the buffer won't disturb it. Problem found by Vladimir Marangozov.
This commit is contained in:
parent
9d20ac36a9
commit
35685240a9
|
@ -672,7 +672,7 @@ PyTokenizer_Get(tok, p_start, p_end)
|
|||
letter_quote:
|
||||
/* String */
|
||||
if (c == '\'' || c == '"') {
|
||||
char *quote2 = tok->cur+1;
|
||||
int quote2 = tok->cur - tok->start + 1;
|
||||
int quote = c;
|
||||
int triple = 0;
|
||||
int tripcount = 0;
|
||||
|
@ -693,7 +693,7 @@ PyTokenizer_Get(tok, p_start, p_end)
|
|||
}
|
||||
else if (c == quote) {
|
||||
tripcount++;
|
||||
if (tok->cur == quote2) {
|
||||
if (tok->cur - tok->start == quote2) {
|
||||
c = tok_nextc(tok);
|
||||
if (c == quote) {
|
||||
triple = 1;
|
||||
|
|
Loading…
Reference in New Issue