diff --git a/rcdom/tests/html-tokenizer.rs b/rcdom/tests/html-tokenizer.rs
index 87e0b366..8de2c3e6 100644
--- a/rcdom/tests/html-tokenizer.rs
+++ b/rcdom/tests/html-tokenizer.rs
@@ -377,7 +377,7 @@ fn mk_tests(tests: &mut Vec, filename: &str, js: &Value) {
// the input and output.
if obj
.get(&"doubleEscaped".to_string())
- .map_or(false, |j| j.get_bool())
+ .is_some_and(|j| j.get_bool())
{
match unescape(&input) {
None => return,
diff --git a/xml5ever/src/tokenizer/mod.rs b/xml5ever/src/tokenizer/mod.rs
index ff70879a..ec8248bb 100644
--- a/xml5ever/src/tokenizer/mod.rs
+++ b/xml5ever/src/tokenizer/mod.rs
@@ -62,7 +62,7 @@ fn process_qname(tag_name: StrTendril) -> QualName {
// a:b
// Since StrTendril are UTF-8, we know that minimal size in bytes must be
// three bytes minimum.
- let split = if (*tag_name).as_bytes().len() < 3 {
+ let split = if (*tag_name).len() < 3 {
None
} else {
QualNameTokenizer::new((*tag_name).as_bytes()).run()
@@ -71,7 +71,7 @@ fn process_qname(tag_name: StrTendril) -> QualName {
match split {
None => QualName::new(None, ns!(), LocalName::from(&*tag_name)),
Some(col) => {
- let len = (*tag_name).as_bytes().len() as u32;
+ let len = (*tag_name).len() as u32;
let prefix = tag_name.subtendril(0, col);
let local = tag_name.subtendril(col + 1, len - col - 1);
let ns = ns!(); // Actual namespace URL set in XmlTreeBuilder::bind_qname