| 478 | } |
| 479 | |
| 480 | static void Parse(Context* context) |
| 481 | { |
| 482 | int value_len = context->m_BufferSize; |
| 483 | char* value_buf = context->m_ValueBuffer; |
| 484 | |
| 485 | // May longjmp() out of this loop |
| 486 | while (true) |
| 487 | { |
| 488 | EatSpace(context); |
| 489 | if (BufferEof(context)) |
| 490 | break; |
| 491 | |
| 492 | if (PeekChar(context) == '[') |
| 493 | { |
| 494 | ParseSection(context); |
| 495 | } |
| 496 | else |
| 497 | { |
| 498 | ParseEntry(context, value_buf, value_len); |
| 499 | } |
| 500 | } |
| 501 | } |
| 502 | |
| 503 | static Result LoadFromBufferInternal(const char* url, const char* buffer, uint32_t buffer_size, int argc, const char** argv, HConfig* config) |
| 504 | { |
no test coverage detected