mirror of
https://github.com/askama-rs/askama.git
synced 2025-09-27 13:00:57 +00:00
Merge pull request #582 from Kijewski/4654117948817408
parser: reject unclosed prefixed string
This commit is contained in:
commit
3ab9ff6216
@ -1029,7 +1029,7 @@ impl<'a: 'l, 'l> Suffix<'a> {
|
|||||||
// raw string string or identifier
|
// raw string string or identifier
|
||||||
"r" => None,
|
"r" => None,
|
||||||
// a simple identifier
|
// a simple identifier
|
||||||
_ if hashes == 0 => return Ok(()),
|
_ if hashes == 0 && quot.is_none() => return Ok(()),
|
||||||
// reserved prefix: reject
|
// reserved prefix: reject
|
||||||
_ => {
|
_ => {
|
||||||
return cut_error!(
|
return cut_error!(
|
||||||
|
@ -1710,3 +1710,17 @@ fn regression_tests_span_change() {
|
|||||||
))]
|
))]
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn test_unclosed_prefixed_string() {
|
||||||
|
// Regression test for <https://issues.oss-fuzz.com/issues/440177293>.
|
||||||
|
let syntax = Syntax::default();
|
||||||
|
for test in ["{{ x!(i\") }}", "{{ x!(i\"\") }}"] {
|
||||||
|
assert!(
|
||||||
|
Ast::from_str(test, None, &syntax)
|
||||||
|
.unwrap_err()
|
||||||
|
.to_string()
|
||||||
|
.contains("reserved prefix `i#`")
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
Binary file not shown.
Loading…
x
Reference in New Issue
Block a user