c215a5755d59dee7e82ff4c78fc1c8a127779f43
Reported symptom, with the local server stopped: Sync leaves the app inert - neither Open vault nor Sync responds, and nothing is displayed. Log and Server settings still work, because they are local to the page. The log proves where it stops: the GET line is there, the "HTTP ... in ... ms" line that immediately follows the call is not. So the request never returned, SetBusy(False) never ran, and the two actions stayed disabled - a disabled button fires no click, hence the silence. THTTPClient is given 15 s timeouts and the Android request does inherit them, so this should not happen; rather than keep chasing why it did, the situation is now impossible. A deadline timer, armed while a request is in flight and longer than the HTTP timeouts so the precise network error still wins when it works. On expiry the interface comes back and says so. The thread is abandoned, not cancelled: it dies when its socket fails, and if it somehow succeeds its result still shows. The page's bridge queue had the same shape of bug: a throw while removing the iframe left "sending" true forever, and every later command was dropped in silence. The removal is now in a try/finally. Also fixed while in there: SetBusy hardcoded "Sync" as the button label, so a vault-less device lost "Download vault" on every busy transition. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Description
full local password manager
Languages
Pascal
46.7%
JavaScript
35.4%
HTML
9.4%
CSS
4.9%
PHP
2.1%
Other
1.4%