about summary refs log tree commit diff
path: root/crates
diff options
context:
space:
mode:
authorbors[bot] <26634292+bors[bot]@users.noreply.github.com>2020-10-23 13:19:09 +0000
committerGitHub <noreply@github.com>2020-10-23 13:19:09 +0000
commitdd8a75b2cf46a967b3449652fe17c19a8fcc4e41 (patch)
tree5c7a8b98a80091eeb2192fa572c52ff617238472 /crates
parent81609960fa30ea92e37b23dc7b025d1939626812 (diff)
parent1a74f25f9026f152fdba6f85ec617c02205d98eb (diff)
downloadrust-dd8a75b2cf46a967b3449652fe17c19a8fcc4e41.tar.gz
rust-dd8a75b2cf46a967b3449652fe17c19a8fcc4e41.zip
Merge #6335
6335: Fix panic context r=matklad a=matklad

bors r+
🤖

Co-authored-by: Aleksey Kladov <aleksey.kladov@gmail.com>
Diffstat (limited to 'crates')
-rw-r--r--crates/rust-analyzer/src/dispatch.rs6
-rw-r--r--crates/stdx/src/panic_context.rs4
2 files changed, 5 insertions, 5 deletions
diff --git a/crates/rust-analyzer/src/dispatch.rs b/crates/rust-analyzer/src/dispatch.rs
index 9c8815e29e8..7a87515e9ae 100644
--- a/crates/rust-analyzer/src/dispatch.rs
+++ b/crates/rust-analyzer/src/dispatch.rs
@@ -34,7 +34,7 @@ impl<'a> RequestDispatcher<'a> {
         };
         let world = panic::AssertUnwindSafe(&mut *self.global_state);
         let response = panic::catch_unwind(move || {
-            stdx::panic_context::enter(format!("request: {} {:#?}", R::METHOD, params));
+            let _pctx = stdx::panic_context::enter(format!("request: {} {:#?}", R::METHOD, params));
             let result = f(world.0, params);
             result_to_response::<R>(id, result)
         })
@@ -64,7 +64,7 @@ impl<'a> RequestDispatcher<'a> {
             let world = self.global_state.snapshot();
 
             move || {
-                let _ctx =
+                let _pctx =
                     stdx::panic_context::enter(format!("request: {} {:#?}", R::METHOD, params));
                 let result = f(world, params);
                 Task::Response(result_to_response::<R>(id, result))
@@ -160,7 +160,7 @@ impl<'a> NotificationDispatcher<'a> {
                 return Ok(self);
             }
         };
-        stdx::panic_context::enter(format!("notification: {}", N::METHOD));
+        let _pctx = stdx::panic_context::enter(format!("notification: {}", N::METHOD));
         f(self.global_state, params)?;
         Ok(self)
     }
diff --git a/crates/stdx/src/panic_context.rs b/crates/stdx/src/panic_context.rs
index fd232e0cce5..8d51e20d39e 100644
--- a/crates/stdx/src/panic_context.rs
+++ b/crates/stdx/src/panic_context.rs
@@ -4,7 +4,7 @@
 
 use std::{cell::RefCell, panic, sync::Once};
 
-pub fn enter(context: String) -> impl Drop {
+pub fn enter(context: String) -> PanicContext {
     static ONCE: Once = Once::new();
     ONCE.call_once(PanicContext::init);
 
@@ -13,7 +13,7 @@ pub fn enter(context: String) -> impl Drop {
 }
 
 #[must_use]
-struct PanicContext {
+pub struct PanicContext {
     _priv: (),
 }