From f0120648f9f9875bc1bfe24c700d589eb463728d Mon Sep 17 00:00:00 2001 From: Philipp Schuster Date: Thu, 21 Sep 2023 17:10:04 +0200 Subject: [PATCH] multiboot2: StringError::MissingNull => StringError::MissingNul This aligns the name with the inner error. In the codebase, however, we use "null". NUL often refers to the ANSI character `0`/NUL and null or NULL to a zero pointer, i.e., to nothing. For now, we keep null everywhere except for the StringError::MissingNul. --- multiboot2/src/tag.rs | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/multiboot2/src/tag.rs b/multiboot2/src/tag.rs index 5652fbbc..180c05f3 100644 --- a/multiboot2/src/tag.rs +++ b/multiboot2/src/tag.rs @@ -12,7 +12,7 @@ use core::str::Utf8Error; #[derive(Debug, PartialEq, Eq, Clone)] pub enum StringError { /// There is no terminating null-byte, although the spec requires one. - MissingNull(core::ffi::FromBytesUntilNulError), + MissingNul(core::ffi::FromBytesUntilNulError), /// The sequence until the first NULL byte is not valid UTF-8. Utf8(Utf8Error), } @@ -27,7 +27,7 @@ impl Display for StringError { impl core::error::Error for StringError { fn source(&self) -> Option<&(dyn core::error::Error + 'static)> { match self { - StringError::MissingNull(e) => Some(e), + StringError::MissingNul(e) => Some(e), StringError::Utf8(e) => Some(e), } } @@ -66,8 +66,7 @@ impl Tag { /// Parses the provided byte sequence as Multiboot string, which maps to a /// [`str`]. pub fn parse_slice_as_string(bytes: &[u8]) -> Result<&str, StringError> { - let cstr = - core::ffi::CStr::from_bytes_until_nul(bytes).map_err(StringError::MissingNull)?; + let cstr = core::ffi::CStr::from_bytes_until_nul(bytes).map_err(StringError::MissingNul)?; cstr.to_str().map_err(StringError::Utf8) } @@ -148,7 +147,7 @@ mod tests { // empty slice is invalid assert!(matches!( Tag::parse_slice_as_string(&[]), - Err(StringError::MissingNull(_)) + Err(StringError::MissingNul(_)) )); // empty string is fine assert_eq!(Tag::parse_slice_as_string(&[0x00]), Ok("")); @@ -160,7 +159,7 @@ mod tests { // reject missing null assert!(matches!( Tag::parse_slice_as_string(b"hello"), - Err(StringError::MissingNull(_)) + Err(StringError::MissingNul(_)) )); // must not include final null assert_eq!(Tag::parse_slice_as_string(b"hello\0"), Ok("hello"));