mirror of
https://github.com/stablyai/orca.git
synced 2026-10-12 16:03:03 +00:00
fix: address pr-bug-scan validated finding from #1700
Clear initializedHandlesRef on reconnect so the auto-resubscribed scrollback frame re-inits xterm instead of being dropped by the has(handle) guard.
This commit is contained in:
@@ -1428,6 +1428,13 @@ export default function SessionScreen() {
|
||||
if (initializedHandlesRef.current.size === 0) {
|
||||
setTerminalsLoaded(false)
|
||||
}
|
||||
// Why: on reconnect the RPC client auto-resends terminal.subscribe and
|
||||
// the server sends a fresh scrollback frame. The subscribe handler drops
|
||||
// scrollback when initializedHandlesRef already contains the handle, so
|
||||
// we'd keep stale pre-disconnect content (and lose any output emitted
|
||||
// during the disconnect). Clear the flag so the fresh snapshot calls
|
||||
// ref.init(...) and replaces the buffer.
|
||||
initializedHandlesRef.current.clear()
|
||||
let disposed = false
|
||||
const timers: ReturnType<typeof setTimeout>[] = []
|
||||
function addTimer(fn: () => void, ms: number) {
|
||||
|
||||
Reference in New Issue
Block a user