summaryrefslogtreecommitdiffstats
path: root/vendor/rayon-core/src/join/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/rayon-core/src/join/mod.rs')
-rw-r--r--vendor/rayon-core/src/join/mod.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/vendor/rayon-core/src/join/mod.rs b/vendor/rayon-core/src/join/mod.rs
index d72c7e61c..5ab9f6b32 100644
--- a/vendor/rayon-core/src/join/mod.rs
+++ b/vendor/rayon-core/src/join/mod.rs
@@ -135,6 +135,7 @@ where
// long enough.
let job_b = StackJob::new(call_b(oper_b), SpinLatch::new(worker_thread));
let job_b_ref = job_b.as_job_ref();
+ let job_b_id = job_b_ref.id();
worker_thread.push(job_b_ref);
// Execute task a; hopefully b gets stolen in the meantime.
@@ -151,7 +152,7 @@ where
// those off to get to it.
while !job_b.latch.probe() {
if let Some(job) = worker_thread.take_local_job() {
- if job == job_b_ref {
+ if job_b_id == job.id() {
// Found it! Let's run it.
//
// Note that this could panic, but it's ok if we unwind here.