{"record":{"id":"54b576ffb4db02a5","repo":"zed-industries/zed","slug":"room-is-offline","errorCode":null,"errorMessage":"room is offline","messagePattern":"room is offline","errorType":"exception","errorClass":null,"httpStatus":null,"severity":"error","filePath":"crates/call/src/call_impl/room.rs","lineNumber":322,"sourceCode":"    }\n\n    fn should_leave(&self) -> bool {\n        self.leave_when_empty\n            && self.pending_room_update.is_none()\n            && self.pending_participants.is_empty()\n            && self.remote_participants.is_empty()\n            && self.pending_call_count == 0\n    }\n\n    pub(crate) fn leave(&mut self, cx: &mut Context<Self>) -> Task<Result<()>> {\n        cx.notify();\n        self.emit_video_track_unsubscribed_events(cx);\n        self.leave_internal(cx)\n    }\n\n    fn leave_internal(&mut self, cx: &mut App) -> Task<Result<()>> {\n        if self.status.is_offline() {\n            return Task::ready(Err(anyhow!(\"room is offline\")));\n        }\n\n        log::info!(\"leaving room\");\n        Audio::play_sound(Sound::Leave, cx);\n\n        self.clear_state(cx);\n\n        let leave_room = self.client.request(proto::LeaveRoom {});\n        cx.background_spawn(async move {\n            leave_room.await?;\n            anyhow::Ok(())\n        })\n    }\n\n    pub(crate) fn clear_state(&mut self, cx: &mut App) {\n        for project in self.shared_projects.drain() {\n            if let Some(project) = project.upgrade() {\n                project.update(cx, |project, cx| {","sourceCodeStart":304,"sourceCodeEnd":340,"githubUrl":"https://github.com/zed-industries/zed/blob/bc538def4545534201bbfcac4e95ac34ea6501b6/crates/call/src/call_impl/room.rs#L304-L340","documentation":"Error \"room is offline\" thrown in zed-industries/zed.","triggerScenarios":"Thrown at crates/call/src/call_impl/room.rs:322 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"bc538def4545534201bbfcac4e95ac34ea6501b6","analyzedAt":"2026-08-16T07:30:46.435Z","schemaVersion":2},"datasetVersion":"2026-08-16T08:17:34.114Z"}