summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChristopher Ferris <cferris@google.com>2023-01-20 04:40:28 +0000
committerAutomerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>2023-01-20 04:40:28 +0000
commit05ca6cda3b7da607271b17c31fbc660c980e3e70 (patch)
tree0f48feccac97d8f993299973e7a8b33aa7b817d8
parent562d5c1f83cdcbc2ea7421fe06e56125c2eb1f38 (diff)
parentae4589fef842dd4eb2e5084b2e8f8c356beff8e8 (diff)
downloadrustc-demangle-capi-05ca6cda3b7da607271b17c31fbc660c980e3e70.tar.gz
Fix memory leak. am: 4eba557902 am: ffdc436b68 am: ae4589fef8
Original change: https://android-review.googlesource.com/c/platform/external/rust/crates/rustc-demangle-capi/+/2383915 Change-Id: I7f9501095d0a771e541fa5908a0b367a02e9c61c Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r--src/lib.rs3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/lib.rs b/src/lib.rs
index 7610145..d220ec1 100644
--- a/src/lib.rs
+++ b/src/lib.rs
@@ -163,10 +163,9 @@ unsafe fn rustc_demangle_native(
}
}
- let mut out_buf = SystemBuffer::from_raw(out, out_size)?;
-
match rustc_demangle::try_demangle(mangled_str) {
Ok(demangle) => {
+ let mut out_buf = SystemBuffer::from_raw(out, out_size)?;
while write!(out_buf.as_mut_slice(), "{:#}\0", demangle).is_err() {
out_buf.resize()?;
}