fix(tsconnect): guard nil n.Prefs in notify callback

n.Prefs is *PrefsView (a pointer), so calling n.Prefs.Valid() on a
Notify where Prefs is nil auto-dereferenced nil and panicked. The
callback's defer recover() swallowed the panic, which meant every
Notify without Prefs (Health-only, FilesWaiting, IncomingFiles,
OutgoingFiles, etc.) never reached the file-related JS calls.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-07-28 20:10:01 +00:00
co-authored by Claude
parent 038aa47b83
commit 0b277058d3
+1 -1
View File
@@ -409,7 +409,7 @@ func (i *jsIPN) run(jsCallbacks js.Value) {
}
}
}
if n.Prefs.Valid() {
if n.Prefs != nil && n.Prefs.Valid() {
jsCallbacks.Call("notifyExitNode", string(n.Prefs.ExitNodeID()))
}
if n.BrowseToURL != nil {