about summary refs log tree commit diff
path: root/library/std/src
diff options
context:
space:
mode:
authorRalf Jung <post@ralfj.de>2022-11-14 13:38:53 +0100
committerRalf Jung <post@ralfj.de>2022-11-14 13:38:53 +0100
commit5fd561dea24d137734195d8d2dc82fe179553b2d (patch)
tree9fe5fbc3170fde1cb5ff4694649eae6a627fbf70 /library/std/src
parent96ddd32c4bfb1d78f0cd03eb068b1710a8cebeef (diff)
downloadrust-5fd561dea24d137734195d8d2dc82fe179553b2d.tar.gz
rust-5fd561dea24d137734195d8d2dc82fe179553b2d.zip
avoid memory leak in mpsc test
Diffstat (limited to 'library/std/src')
-rw-r--r--library/std/src/sync/mpsc/tests.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/library/std/src/sync/mpsc/tests.rs b/library/std/src/sync/mpsc/tests.rs
index 82c52eb4fef..1e52a4a705c 100644
--- a/library/std/src/sync/mpsc/tests.rs
+++ b/library/std/src/sync/mpsc/tests.rs
@@ -713,10 +713,11 @@ fn issue_39364() {
     let t = thread::spawn(move || {
         thread::sleep(Duration::from_millis(300));
         let _ = tx.clone();
-        crate::mem::forget(tx);
+        // Don't drop; hand back to caller.
+        tx
     });
 
     let _ = rx.recv_timeout(Duration::from_millis(500));
-    t.join().unwrap();
+    let _tx = t.join().unwrap(); // delay dropping until end of test
     let _ = rx.recv_timeout(Duration::from_millis(500));
 }