version 1.16, 2005/02/05 23:00:52
|
version 1.17, 2005/02/11 16:40:54
|
|
|
| |
PEGASUS_NAMESPACE_BEGIN | PEGASUS_NAMESPACE_BEGIN |
| |
AutoPtr<WQLParserState> globalParserState; |
WQLParserState* globalParserState = 0; |
static Mutex WQL_mutex; | static Mutex WQL_mutex; |
| |
void WQLParser::parse( | void WQLParser::parse( |
|
|
| |
statement.clear(); | statement.clear(); |
| |
globalParserState.reset(new WQLParserState); |
globalParserState = new WQLParserState; |
globalParserState->error = false; | globalParserState->error = false; |
globalParserState->text = text; | globalParserState->text = text; |
globalParserState->textSize = strlen(text) + 1; | globalParserState->textSize = strlen(text) + 1; |
|
|
{ | { |
String errorMessage = globalParserState->errorMessage; | String errorMessage = globalParserState->errorMessage; |
cleanup(); | cleanup(); |
globalParserState.reset(); |
delete globalParserState; |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
throw ParseError(errorMessage); | throw ParseError(errorMessage); |
} | } |
| |
cleanup(); | cleanup(); |
globalParserState.reset(); |
delete globalParserState; |
PEG_METHOD_EXIT(); | PEG_METHOD_EXIT(); |
} | } |
| |