@@ -5235,16 +5235,19 @@ impl Project {
5235
5235
project_id. ok_or_else ( || anyhow ! ( "Remote project without remote_id" ) ) ?;
5236
5236
5237
5237
for completion_index in completion_indices {
5238
- let completions_guard = completions. read ( ) ;
5239
- let completion = & completions_guard[ completion_index] ;
5240
- if completion. documentation . is_some ( ) {
5241
- continue ;
5242
- }
5238
+ let ( server_id, completion) = {
5239
+ let completions_guard = completions. read ( ) ;
5240
+ let completion = & completions_guard[ completion_index] ;
5241
+ if completion. documentation . is_some ( ) {
5242
+ continue ;
5243
+ }
5243
5244
5244
- did_resolve = true ;
5245
- let server_id = completion. server_id ;
5246
- let completion = completion. lsp_completion . clone ( ) ;
5247
- drop ( completions_guard) ;
5245
+ did_resolve = true ;
5246
+ let server_id = completion. server_id ;
5247
+ let completion = completion. lsp_completion . clone ( ) ;
5248
+
5249
+ ( server_id, completion)
5250
+ } ;
5248
5251
5249
5252
Self :: resolve_completion_documentation_remote (
5250
5253
project_id,
@@ -5259,15 +5262,18 @@ impl Project {
5259
5262
}
5260
5263
} else {
5261
5264
for completion_index in completion_indices {
5262
- let completions_guard = completions. read ( ) ;
5263
- let completion = & completions_guard[ completion_index] ;
5264
- if completion. documentation . is_some ( ) {
5265
- continue ;
5266
- }
5265
+ let ( server_id, completion) = {
5266
+ let completions_guard = completions. read ( ) ;
5267
+ let completion = & completions_guard[ completion_index] ;
5268
+ if completion. documentation . is_some ( ) {
5269
+ continue ;
5270
+ }
5271
+
5272
+ let server_id = completion. server_id ;
5273
+ let completion = completion. lsp_completion . clone ( ) ;
5267
5274
5268
- let server_id = completion. server_id ;
5269
- let completion = completion. lsp_completion . clone ( ) ;
5270
- drop ( completions_guard) ;
5275
+ ( server_id, completion)
5276
+ } ;
5271
5277
5272
5278
let server = this
5273
5279
. read_with ( & mut cx, |project, _| {
0 commit comments