# HG changeset patch # User Masataka Kohagura # Date 1454242114 -32400 # Node ID 3ea12df96bcf0676aab171361a68f7db0e283824 # Parent 5d23dc02f60da4130d2aaac94251726f3536ab52 add *tsvp diff -r 5d23dc02f60d -r 3ea12df96bcf regexParser/threadedSearch.cc --- a/regexParser/threadedSearch.cc Sun Jan 31 20:39:19 2016 +0900 +++ b/regexParser/threadedSearch.cc Sun Jan 31 21:08:34 2016 +0900 @@ -45,6 +45,7 @@ } if (ccvSize == 0) { tState->ccv = NULL; + state->tState = tState; return tState; } else tState->ccv = (ccv*)malloc(sizeof(ccv)*ccvSize); ccw = createCharClassWalker(state->cc); @@ -81,6 +82,7 @@ } TSValue tSearch(TSValue tsv) { + TSValuePtr tsvp = &tsv; next: while (tsv.buff.buffptr < tsv.buff.buffend) { unsigned char c = *tsv.buff.buffptr++; // printState(tsv.current->state); @@ -107,7 +109,8 @@ } tsv = tsv.current->stateSkip(tsv); } - return tsv; + *tsvp = tsv; + return *tsvp; } void threadedSearch(TransitionGeneratorPtr tg, Buffer buff) {