Assert ts_parser_set_language in fuzz driver

This commit is contained in:
Phil Turnbull 2018-05-21 12:49:23 -07:00
parent c56c4affb2
commit c41841f4e9

View file

@ -1,4 +1,5 @@
#include <string.h>
#include <cassert>
#include "tree_sitter/runtime.h"
void test_log(void *payload, TSLogType type, const char *string) { }
@ -13,7 +14,11 @@ extern "C" int LLVMFuzzerTestOneInput(const uint8_t *data, size_t size) {
const char *str = reinterpret_cast<const char *>(data);
TSParser *parser = ts_parser_new();
ts_parser_set_language(parser, TS_LANG());
// This can fail if the language version doesn't match the runtime version
bool language_ok = ts_parser_set_language(parser, TS_LANG());
assert(language_ok);
ts_parser_halt_on_error(parser, TS_HALT_ON_ERROR);
TSTree *tree = ts_parser_parse_string(parser, NULL, str, size);