-
Notifications
You must be signed in to change notification settings - Fork 66
Description
I have been experiencing a bug with Fyne-X regarding the completion widget. I am utilizing Fynes app tab to display a completion entry. It seems once text is entered in the completion widget, then going to another tab for a few minutes (presumably for how long it takes Go's garbage collection to clean up), then switching back to the tab with the completion entry in it, it causes my application to panic with this stack trace:
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xc0000005 code=0x0 addr=0xa8 pc=0x7ff67f1f08c0]
goroutine 20 [running, locked to thread]:
fyne.io/x/fyne/widget.(*CompletionEntry).maxSize(0xc00161c900)
C:/Users/kinlougn/go/pkg/mod/fyne.io/x/fyne@v0.0.0-20231004122445-c04c36b7acb1/widget/completionentry.go:98 +0
Upon going to this section of the completionentry.go file, it seems I can resolve the issue by adding this right after we populate the cnv variable:
if cnv == nil {
return fyne.NewSize(0, 0)
}
In my opinion, it seems like Go's garbage collection is cleaning up something it shouldn't, and when I switch back to the app tab with the completion entry, it tries to reference it but it's no longer there, causing the application to panic.