summaryrefslogtreecommitdiffstats
path: root/server
diff options
context:
space:
mode:
authorblasty <peter@haxx.in>2026-07-23 23:52:23 +0200
committerblasty <peter@haxx.in>2026-07-23 23:52:23 +0200
commit140043eee8a1cae674c36098f549d3ebb03db67c (patch)
tree77e5134b2eec9656fe1c4405c9f34ac1cef4ff83 /server
parentlaunch: sweep a crashed worker's stale DB locks before starting the supervisor (diff)
downloadida-tui-140043eee8a1cae674c36098f549d3ebb03db67c.tar.gz
ida-tui-140043eee8a1cae674c36098f549d3ebb03db67c.tar.xz
ida-tui-140043eee8a1cae674c36098f549d3ebb03db67c.zip
ux: start the analysis server from inside the TUI (no more dead window)
The remaining "long wait with no feedback" was the launcher's _ensure_server: it started the supervisor and blocked ~10s polling for the port BEFORE the TUI (and its overlay) existed. Only a one-line stderr message covered it. Move that wait behind the overlay. The launcher now only does instant checks (sweep stale locks if the server is down, honor --no-server) and hands the binary straight to the TUI with ensure_server=True. The TUI's _connect starts the server itself and narrates it in the loading overlay ("starting analysis server… (Ns)") before opening/analyzing the binary. idb_open is idempotent, so an already-open session is still adopted instantly (the launcher no longer needs to probe sessions). _ensure_server gained a progress callback so it reports to the overlay instead of stderr (which would corrupt the TUI screen). Verified with the server DOWN: chrome + overlay appear within ~0.5s, notes go "starting analysis server… (0s)" -> "opening echo — analyzing…" -> "echo — 128 functions…" -> land on main. Pilot suite (db/ensure_server=False path) green: startup/palette/view_toggle/disasm_nav/search/rename/follow_xrefs/ decomp_nav/mouse/listing_view/continuous_view/func_banners.
Diffstat (limited to 'server')
0 files changed, 0 insertions, 0 deletions