| 258 | } |
| 259 | |
| 260 | void fxReportMemoryError(txParser* parser, txInteger line, txString theFormat, ...) |
| 261 | { |
| 262 | c_va_list arguments; |
| 263 | parser->error = C_ENOMEM; |
| 264 | parser->errorCount++; |
| 265 | c_va_start(arguments, theFormat); |
| 266 | (*parser->reportError)(parser->console, parser->path ? parser->path->string : C_NULL, line, theFormat, arguments); |
| 267 | c_va_end(arguments); |
| 268 | if (parser->console) { |
| 269 | parser->errorSymbol = parser->RangeErrorSymbol; |
| 270 | if (parser->buffer != theFormat) { |
| 271 | c_va_start(arguments, theFormat); |
| 272 | c_vsnprintf(parser->buffer, parser->bufferSize, theFormat, arguments); |
| 273 | c_va_end(arguments); |
| 274 | } |
| 275 | parser->errorMessage = fxNewParserString(parser, parser->buffer, mxStringLength(parser->buffer)); |
| 276 | } |
| 277 | c_longjmp(parser->firstJump->jmp_buf, 1); |
| 278 | } |
| 279 | |
| 280 | void fxReportParserError(txParser* parser, txInteger line, txString theFormat, ...) |
| 281 | { |
no test coverage detected