diff --git a/support/gecko/nsstring/src/lib.rs b/support/gecko/nsstring/src/lib.rs index 8cb8d11ce7e..02352212938 100644 --- a/support/gecko/nsstring/src/lib.rs +++ b/support/gecko/nsstring/src/lib.rs @@ -559,6 +559,12 @@ macro_rules! define_string_types { hdr: $StringRepr::new(ClassFlags::NULL_TERMINATED), } } + + /// Converts this String into a StringRepr, which will leak if the + /// repr is not passed to something that knows how to free it. + pub fn into_repr(mut self) -> $StringRepr { + mem::replace(&mut self.hdr, $StringRepr::new(ClassFlags::NULL_TERMINATED)) + } } impl Drop for $String {