diff --git a/src/emitter.c b/src/emitter.c index 511307b3c19dfbd6dcd908a1b0c8e00cc2434d7f_c3JjL2VtaXR0ZXIuYw==..7849a2943aa6c2fda652a33d0ae79a32b31d5918_c3JjL2VtaXR0ZXIuYw== 100644 --- a/src/emitter.c +++ b/src/emitter.c @@ -1421,7 +1421,11 @@ } while (string.pointer != string.end) { - if (!IS_ALPHA(string)) { + if ( + !IS_ALPHA(string) + && !CHECK(string, '.') + && !CHECK(string, '/') + ) { return yaml_emitter_set_emitter_error(emitter, alias ? "alias value must contain alphanumerical characters only" : "anchor value must contain alphanumerical characters only"); diff --git a/src/scanner.c b/src/scanner.c index 511307b3c19dfbd6dcd908a1b0c8e00cc2434d7f_c3JjL3NjYW5uZXIuYw==..7849a2943aa6c2fda652a33d0ae79a32b31d5918_c3JjL3NjYW5uZXIuYw== 100644 --- a/src/scanner.c +++ b/src/scanner.c @@ -2336,7 +2336,11 @@ if (!CACHE(parser, 1)) goto error; - while (IS_ALPHA(parser->buffer)) { + while ( + IS_ALPHA(parser->buffer) + || CHECK(parser->buffer, '.') + || CHECK(parser->buffer, '/') + ) { if (!READ(parser, string)) goto error; if (!CACHE(parser, 1)) goto error; length ++;