Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Panic on window resize on macOS. #4708

Open
2 tasks done
atljoseph opened this issue Mar 9, 2024 · 4 comments
Open
2 tasks done

Panic on window resize on macOS. #4708

atljoseph opened this issue Mar 9, 2024 · 4 comments
Labels
unverified A bug that has been reported but not verified

Comments

@atljoseph
Copy link

Checklist

  • I have searched the issue tracker for open issues that relate to the same problem, before opening a new one.
  • This issue only relates to a single bug. I will open new issues for any other problems.

Describe the bug

App panics when window is being resized.
Output

How to reproduce

(1) Run go run . to start app on desktop.
(2) Resize window to make it larger.
(3) App window disappears.
(4) Observe panic in terminal.

Screenshots

Sorry, hard to get screenshots of the panic in progress. Please see the logs posted.

Example code

main.go

package main

import (
	"fyne.io/fyne/v2/app"
)

func main() {
	a := app.New()
	w := a.NewWindow("Fysion App")
	w.SetContent(makeGUI())
	w.ShowAndRun()
}

gui.go

package main

import (
	"fyne.io/fyne/v2"
	"fyne.io/fyne/v2/container"
	"fyne.io/fyne/v2/theme"
	"fyne.io/fyne/v2/widget"
)

func makeGUI() fyne.CanvasObject {
	toolbar := widget.NewToolbar(
		widget.NewToolbarAction(theme.HomeIcon(), nil),
	)
	left := widget.NewLabel("Left")
	right := widget.NewLabel("Right")
	content := widget.NewLabel("Content")
	return container.NewBorder(toolbar, nil, left, right, content)
}

Fyne version

fyne.io/fyne/v2 v2.4.4 && fyne cli version: v2.4.4

Go compiler version

go version go1.22.0 darwin/amd64

Operating system and version

MacOS 14.3.1

Additional Information

Output:

SIGSEGV: segmentation violation
PC=0x7ff80a95ae5d m=7 sigcode=1 addr=0x18
signal arrived during cgo execution

goroutine 4 gp=0xc000007c00 m=7 mp=0xc000072d08 [syscall, locked to thread]:
runtime.cgocall(0x100981140, 0xc001351cf8)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:157 +0x4b fp=0xc001351cd0 sp=0xc001351c98 pc=0x10051b54b
github.com/go-gl/gl/v2.1/gl._Cfunc_glowClear(0x7ffa22d97ea5, 0x4100)
        _cgo_gotypes.go:8334 +0x45 fp=0xc001351cf8 sp=0xc001351cd0 pc=0x1008fd885
github.com/go-gl/gl/v2.1/gl.Clear(...)
        /Users/josephgill/.go/pkg/mod/github.com/go-gl/gl@v0.0.0-20211210172815-726fda9656d6/v2.1/gl/package.go:19614
fyne.io/fyne/v2/internal/painter/gl.(*coreContext).Clear(0x7ffa22d9a58e?, 0x0?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/painter/gl/gl_core.go:113 +0x25 fp=0xc001351d18 sp=0xc001351cf8 pc=0x100933aa5
fyne.io/fyne/v2/internal/painter/gl.(*painter).Clear(0xc001284000)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/painter/gl/painter.go:83 +0xa2 fp=0xc001351d58 sp=0xc001351d18 pc=0x100935002
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).paint(0xc000266d80, {0x797298d0?, 0x7f8d?})
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/canvas.go:279 +0x68 fp=0xc001351de0 sp=0xc001351d58 pc=0x10094abe8
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).repaintWindow.func1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop.go:223 +0x85 fp=0xc001351e30 sp=0xc001351de0 pc=0x10094db45
fyne.io/fyne/v2/internal/driver/glfw.(*window).RunWithContext(0xc0003ce000, 0xc001351e58)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/window.go:923 +0x43 fp=0xc001351e48 sp=0xc001351e30 pc=0x100955fc3
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).repaintWindow(0xc00032c6d0?, 0x1?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop.go:214 +0x45 fp=0xc001351e80 sp=0xc001351e48 pc=0x10094da85
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).drawSingleFrame(0xc0003ac3f0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop.go:102 +0x13e fp=0xc001351ef8 sp=0xc001351e80 pc=0x10094d21e
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).startDrawThread.func1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop.go:270 +0x1c5 fp=0xc001351fe0 sp=0xc001351ef8 pc=0x10094de85
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc001351fe8 sp=0xc001351fe0 pc=0x100583be1
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).startDrawThread in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop.go:246 +0xbb

goroutine 1 gp=0xc0000061c0 m=nil [chan send, locked to thread]:
runtime.gopark(0xc00130ba00?, 0x10052d4d8?, 0x88?, 0x26?, 0xc0000e2a00?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00130b9a8 sp=0xc00130b988 pc=0x100550cee
runtime.chansend(0xc0000342a0, 0xc00130ba88, 0x1, 0xc000553e00?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:259 +0x38d fp=0xc00130ba18 sp=0xc00130b9a8 pc=0x10051cded
runtime.chansend1(0x100e3eb40?, 0x109c053c8?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:145 +0x17 fp=0xc00130ba48 sp=0xc00130ba18 pc=0x10051ca57
fyne.io/fyne/v2/internal/driver/glfw.runOnDraw(0xc0003ce000, 0xc0000e2a00)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop.go:73 +0xc7 fp=0xc00130bac0 sp=0xc00130ba48 pc=0x10094d007
fyne.io/fyne/v2/internal/driver/glfw.(*window).platformResize(0xc0003ce000, {0x112570?, 0xc0?})
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/window_notxdg.go:19 +0xb4 fp=0xc00130baf0 sp=0xc00130bac0 pc=0x100958e34
fyne.io/fyne/v2/internal/driver/glfw.(*window).processResized(0xc0003ce000, 0x1ae?, 0xc00130bb18?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/window.go:326 +0xfc fp=0xc00130bb20 sp=0xc00130baf0 pc=0x100950e9c
fyne.io/fyne/v2/internal/driver/glfw.(*window).resized(...)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/window_desktop.go:318
fyne.io/fyne/v2/internal/driver/glfw.(*window).resized-fm(0xc00130bb68?, 0x100940426?, 0x216?)
        <autogenerated>:1 +0x25 fp=0xc00130bb48 sp=0xc00130bb20 pc=0x10095c8c5
github.com/go-gl/glfw/v3.3/glfw.goWindowSizeCB(0xc0000061c0?, 0xd7, 0x7b)
        /Users/josephgill/.go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20221017161538-93cebf72946b/window.go:213 +0x45 fp=0xc00130bb70 sp=0xc00130bb48 pc=0x1009402a5
_cgoexp_fa14aea24473_goWindowSizeCB(0x100559b99?)
        _cgo_gotypes.go:2665 +0x1f fp=0xc00130bb90 sp=0xc00130bb70 pc=0x100942edf
runtime.cgocallbackg1(0x100942ec0, 0x305e921c0, 0x0)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:403 +0x295 fp=0xc00130bc50 sp=0xc00130bb90 pc=0x10051bc75
runtime.cgocallbackg(0x100942ec0, 0x305e921c0, 0x0)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:322 +0x136 fp=0xc00130bcc8 sp=0xc00130bc50 pc=0x10051b936
runtime.cgocallbackg(0x100942ec0, 0x305e921c0, 0x0)
        <autogenerated>:1 +0x29 fp=0xc00130bcf0 sp=0xc00130bcc8 pc=0x1005860c9
runtime.cgocallback(0xc00130bd50, 0x10051b575, 0x10097dc90)
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1079 +0xcc fp=0xc00130bd18 sp=0xc00130bcf0 pc=0x1005839ac
runtime.systemstack_switch()
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:474 +0x8 fp=0xc00130bd28 sp=0xc00130bd18 pc=0x100581ba8
runtime.cgocall(0x10097dc90, 0xc00130bd88)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:175 +0x75 fp=0xc00130bd60 sp=0xc00130bd28 pc=0x10051b575
github.com/go-gl/glfw/v3.3/glfw._Cfunc_glfwPollEvents()
        _cgo_gotypes.go:1501 +0x3f fp=0xc00130bd88 sp=0xc00130bd60 pc=0x10093b61f
github.com/go-gl/glfw/v3.3/glfw.PollEvents()
        /Users/josephgill/.go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20221017161538-93cebf72946b/window.go:964 +0xf fp=0xc00130bd98 sp=0xc00130bd88 pc=0x100942b4f
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).tryPollEvents(0xc000043e90?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop_desktop.go:34 +0x30 fp=0xc00130bdb8 sp=0xc00130bd98 pc=0x10094e0d0
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).runGL(0xc0003ac3f0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/loop.go:141 +0x1b9 fp=0xc00130bee0 sp=0xc00130bdb8 pc=0x10094d539
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).Run(0xc0003ac3f0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/driver.go:168 +0x6f fp=0xc00130bf00 sp=0xc00130bee0 pc=0x10094bfcf
fyne.io/fyne/v2/internal/driver/glfw.(*window).ShowAndRun(0xc0003ce000)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/window.go:232 +0x26 fp=0xc00130bf18 sp=0xc00130bf00 pc=0x100950766
main.main()
        /Users/josephgill/personal/fysion/main.go:11 +0x7e fp=0xc00130bf50 sp=0xc00130bf18 pc=0x10096835e
runtime.main()
        /usr/local/opt/go/libexec/src/runtime/proc.go:271 +0x29d fp=0xc00130bfe0 sp=0xc00130bf50 pc=0x1005508bd
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00130bfe8 sp=0xc00130bfe0 pc=0x100583be1

goroutine 18 gp=0xc0000a4380 m=nil [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc0000667a8 sp=0xc000066788 pc=0x100550cee
runtime.goparkunlock(...)
        /usr/local/opt/go/libexec/src/runtime/proc.go:408
runtime.forcegchelper()
        /usr/local/opt/go/libexec/src/runtime/proc.go:326 +0xb3 fp=0xc0000667e0 sp=0xc0000667a8 pc=0x100550b73
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0000667e8 sp=0xc0000667e0 pc=0x100583be1
created by runtime.init.6 in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/proc.go:314 +0x1a

goroutine 19 gp=0xc0000a4540 m=nil [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000066f80 sp=0xc000066f60 pc=0x100550cee
runtime.goparkunlock(...)
        /usr/local/opt/go/libexec/src/runtime/proc.go:408
runtime.bgsweep(0xc0000b2000)
        /usr/local/opt/go/libexec/src/runtime/mgcsweep.go:318 +0xdf fp=0xc000066fc8 sp=0xc000066f80 pc=0x10053cbff
runtime.gcenable.gowrap1()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:203 +0x25 fp=0xc000066fe0 sp=0xc000066fc8 pc=0x100531705
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000066fe8 sp=0xc000066fe0 pc=0x100583be1
created by runtime.gcenable in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:203 +0x66

goroutine 20 gp=0xc0000a4700 m=nil [GC scavenge wait]:
runtime.gopark(0x10000?, 0x100a5b280?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000067778 sp=0xc000067758 pc=0x100550cee
runtime.goparkunlock(...)
        /usr/local/opt/go/libexec/src/runtime/proc.go:408
runtime.(*scavengerState).park(0x101572820)
        /usr/local/opt/go/libexec/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc0000677a8 sp=0xc000067778 pc=0x10053a5a9
runtime.bgscavenge(0xc0000b2000)
        /usr/local/opt/go/libexec/src/runtime/mgcscavenge.go:658 +0x59 fp=0xc0000677c8 sp=0xc0000677a8 pc=0x10053ab59
runtime.gcenable.gowrap2()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:204 +0x25 fp=0xc0000677e0 sp=0xc0000677c8 pc=0x1005316a5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0000677e8 sp=0xc0000677e0 pc=0x100583be1
created by runtime.gcenable in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:204 +0xa5

goroutine 34 gp=0xc000106380 m=nil [finalizer wait]:
runtime.gopark(0xc00006a648?, 0x1005251e5?, 0xa8?, 0x1?, 0xc0000061c0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00006a620 sp=0xc00006a600 pc=0x100550cee
runtime.runfinq()
        /usr/local/opt/go/libexec/src/runtime/mfinal.go:194 +0x107 fp=0xc00006a7e0 sp=0xc00006a620 pc=0x100530747
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00006a7e8 sp=0xc00006a7e0 pc=0x100583be1
created by runtime.createfing in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mfinal.go:164 +0x3d

goroutine 2 gp=0xc000007500 m=5 mp=0xc0000a0008 [syscall]:
syscall.syscall6(0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/sys_darwin.go:45 +0x98 fp=0xc00006ac10 sp=0xc00006ab50 pc=0x1005806f8
golang.org/x/sys/unix.kevent(0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /Users/josephgill/.go/pkg/mod/golang.org/x/sys@v0.13.0/unix/zsyscall_darwin_amd64.go:276 +0x4e fp=0xc00006ac78 sp=0xc00006ac10 pc=0x10095d1ae
golang.org/x/sys/unix.Kevent(0x0?, {0x0?, 0x0?, 0x0?}, {0xc00006add8?, 0x0?, 0x0?}, 0x0?)
        /Users/josephgill/.go/pkg/mod/golang.org/x/sys@v0.13.0/unix/syscall_bsd.go:398 +0x35 fp=0xc00006acb8 sp=0xc00006ac78 pc=0x10095d055
github.com/fsnotify/fsnotify.(*Watcher).read(0x0?, {0xc00006add8, 0x0?, 0xa})
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.6.0/backend_kqueue.go:702 +0x34 fp=0xc00006ad08 sp=0xc00006acb8 pc=0x1009601f4
github.com/fsnotify/fsnotify.(*Watcher).readEvents(0xc0003ac4d0)
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.6.0/backend_kqueue.go:487 +0xcb fp=0xc00006afc8 sp=0xc00006ad08 pc=0x10095ef8b
github.com/fsnotify/fsnotify.NewWatcher.gowrap1()
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.6.0/backend_kqueue.go:155 +0x25 fp=0xc00006afe0 sp=0xc00006afc8 pc=0x10095db25
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00006afe8 sp=0xc00006afe0 pc=0x100583be1
created by github.com/fsnotify/fsnotify.NewWatcher in goroutine 1
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.6.0/backend_kqueue.go:155 +0x225

goroutine 3 gp=0xc0000076c0 m=nil [chan receive]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00006b6c8 sp=0xc00006b6a8 pc=0x100550cee
runtime.chanrecv(0xc0000343c0, 0xc00006b7a8, 0x1)
        /usr/local/opt/go/libexec/src/runtime/chan.go:583 +0x3bf fp=0xc00006b740 sp=0xc00006b6c8 pc=0x10051db5f
runtime.chanrecv2(0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:447 +0x12 fp=0xc00006b768 sp=0xc00006b740 pc=0x10051d792
fyne.io/fyne/v2/app.watchFile.func1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/app/settings_desktop.go:43 +0x66 fp=0xc00006b7e0 sp=0xc00006b768 pc=0x1009671c6
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00006b7e8 sp=0xc00006b7e0 pc=0x100583be1
created by fyne.io/fyne/v2/app.watchFile in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/app/settings_desktop.go:42 +0xe9

goroutine 5 gp=0xc000007dc0 m=nil [select]:
runtime.gopark(0xc00006c780?, 0x2?, 0x7c?, 0x9a?, 0xc00006c714?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00006c5a0 sp=0xc00006c580 pc=0x100550cee
runtime.selectgo(0xc00006c780, 0xc00006c710, 0x0?, 0x0, 0x0?, 0x1)
        /usr/local/opt/go/libexec/src/runtime/select.go:327 +0x725 fp=0xc00006c6c0 sp=0xc00006c5a0 pc=0x100562065
fyne.io/fyne/v2/internal/async.(*UnboundedFuncChan).processing(0xc00020bda0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/async/chan_func.go:45 +0xd5 fp=0xc00006c7c8 sp=0xc00006c6c0 pc=0x100810ff5
fyne.io/fyne/v2/internal/async.NewUnboundedFuncChan.gowrap1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/async/chan_func.go:22 +0x25 fp=0xc00006c7e0 sp=0xc00006c7c8 pc=0x100810ee5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00006c7e8 sp=0xc00006c7e0 pc=0x100583be1
created by fyne.io/fyne/v2/internal/async.NewUnboundedFuncChan in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/async/chan_func.go:22 +0xe5

goroutine 6 gp=0xc0003d0000 m=nil [chan receive]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00006cf10 sp=0xc00006cef0 pc=0x100550cee
runtime.chanrecv(0xc000268240, 0xc00006cfc8, 0x1)
        /usr/local/opt/go/libexec/src/runtime/chan.go:583 +0x3bf fp=0xc00006cf88 sp=0xc00006cf10 pc=0x10051db5f
runtime.chanrecv2(0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:447 +0x12 fp=0xc00006cfb0 sp=0xc00006cf88 pc=0x10051d792
fyne.io/fyne/v2/internal/driver/common.(*Window).RunEventQueue(...)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/common/window.go:34
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).createWindow.func1.gowrap1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/window.go:960 +0x54 fp=0xc00006cfe0 sp=0xc00006cfb0 pc=0x100956534
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00006cfe8 sp=0xc00006cfe0 pc=0x100583be1
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).createWindow.func1 in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/window.go:960 +0x12b

goroutine 7 gp=0xc0003d01c0 m=nil [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00006d750 sp=0xc00006d730 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc00006d7e0 sp=0xc00006d750 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00006d7e8 sp=0xc00006d7e0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 8 gp=0xc0003d0380 m=nil [GC worker (idle)]:
runtime.gopark(0xdfe528a501cf?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00006df50 sp=0xc00006df30 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc00006dfe0 sp=0xc00006df50 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00006dfe8 sp=0xc00006dfe0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 50 gp=0xc000584380 m=nil [GC worker (idle)]:
runtime.gopark(0x1015d50e0?, 0x3?, 0x44?, 0x8d?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000596750 sp=0xc000596730 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0005967e0 sp=0xc000596750 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0005967e8 sp=0xc0005967e0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 35 gp=0xc0001068c0 m=nil [GC worker (idle)]:
runtime.gopark(0xdfe528a4fd40?, 0x1?, 0x44?, 0x19?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000592750 sp=0xc000592730 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0005927e0 sp=0xc000592750 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0005927e8 sp=0xc0005927e0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 66 gp=0xc000404380 m=nil [GC worker (idle)]:
runtime.gopark(0xdfe528a8fdd4?, 0x3?, 0x7c?, 0x87?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000418750 sp=0xc000418730 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0004187e0 sp=0xc000418750 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0004187e8 sp=0xc0004187e0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 51 gp=0xc000584540 m=nil [GC worker (idle)]:
runtime.gopark(0x1015d50e0?, 0x1?, 0x66?, 0x86?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000596f50 sp=0xc000596f30 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc000596fe0 sp=0xc000596f50 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000596fe8 sp=0xc000596fe0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 36 gp=0xc000106a80 m=nil [GC worker (idle)]:
runtime.gopark(0xdfe528a4e28f?, 0x3?, 0x3c?, 0xaf?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000592f50 sp=0xc000592f30 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc000592fe0 sp=0xc000592f50 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000592fe8 sp=0xc000592fe0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 37 gp=0xc000106c40 m=nil [GC worker (idle)]:
runtime.gopark(0xdfe528a7bd84?, 0x3?, 0x5a?, 0x5b?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000593750 sp=0xc000593730 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0005937e0 sp=0xc000593750 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0005937e8 sp=0xc0005937e0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 52 gp=0xc000584700 m=nil [GC worker (idle)]:
runtime.gopark(0xdfe528a4bf14?, 0x1?, 0x95?, 0xb4?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000597750 sp=0xc000597730 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0005977e0 sp=0xc000597750 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0005977e8 sp=0xc0005977e0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 38 gp=0xc000106e00 m=nil [GC worker (idle)]:
runtime.gopark(0xdfe528a8773a?, 0x3?, 0xae?, 0x42?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000593f50 sp=0xc000593f30 pc=0x100550cee
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc000593fe0 sp=0xc000593f50 pc=0x1005335e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000593fe8 sp=0xc000593fe0 pc=0x100583be1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 10 gp=0xc0000a5180 m=nil [chan receive]:
runtime.gopark(0x100947c65?, 0x100000002?, 0x1?, 0x0?, 0xc000595760?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc0005956d0 sp=0xc0005956b0 pc=0x100550cee
runtime.chanrecv(0xc00012e180, 0x0, 0x1)
        /usr/local/opt/go/libexec/src/runtime/chan.go:583 +0x3bf fp=0xc000595748 sp=0xc0005956d0 pc=0x10051db5f
runtime.chanrecv1(0xc00012e180?, 0xc000595798?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:442 +0x12 fp=0xc000595770 sp=0xc000595748 pc=0x10051d772
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).catchTerm(0xc0003ac3f0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/driver_desktop.go:183 +0x85 fp=0xc0005957c8 sp=0xc000595770 pc=0x10094ca65
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).Run.gowrap1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/driver.go:167 +0x25 fp=0xc0005957e0 sp=0xc0005957c8 pc=0x10094c025
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0005957e8 sp=0xc0005957e0 pc=0x100583be1
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).Run in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4/internal/driver/glfw/driver.go:167 +0x65

goroutine 21 gp=0xc0003d08c0 m=nil [select, locked to thread]:
runtime.gopark(0xc00041bfa8?, 0x2?, 0x68?, 0xbe?, 0xc00041bf98?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00041be40 sp=0xc00041be20 pc=0x100550cee
runtime.selectgo(0xc00041bfa8, 0xc00041bf94, 0x0?, 0x0, 0x0?, 0x1)
        /usr/local/opt/go/libexec/src/runtime/select.go:327 +0x725 fp=0xc00041bf60 sp=0xc00041be40 pc=0x100562065
runtime.ensureSigM.func1()
        /usr/local/opt/go/libexec/src/runtime/signal_unix.go:1034 +0x16f fp=0xc00041bfe0 sp=0xc00041bf60 pc=0x10057b0cf
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00041bfe8 sp=0xc00041bfe0 pc=0x100583be1
created by runtime.ensureSigM in goroutine 10
        /usr/local/opt/go/libexec/src/runtime/signal_unix.go:1017 +0xc8

goroutine 11 gp=0xc0000a5340 m=10 mp=0xc000580008 [syscall]:
runtime.sigNoteSleep(0x0?)
        /usr/local/opt/go/libexec/src/runtime/os_darwin.go:132 +0x18 fp=0xc000595fa0 sp=0xc000595f68 pc=0x10054b438
os/signal.signal_recv()
        /usr/local/opt/go/libexec/src/runtime/sigqueue.go:149 +0x25 fp=0xc000595fc0 sp=0xc000595fa0 pc=0x1005800e5
os/signal.loop()
        /usr/local/opt/go/libexec/src/os/signal/signal_unix.go:23 +0x13 fp=0xc000595fe0 sp=0xc000595fc0 pc=0x100948053
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000595fe8 sp=0xc000595fe0 pc=0x100583be1
created by os/signal.Notify.func1.1 in goroutine 10
        /usr/local/opt/go/libexec/src/os/signal/signal.go:151 +0x1f

rax    0x7f8d797b7878
rbx    0x7f8d7a206d90
rcx    0x0
rdx    0x610f
rdi    0x7f8d7a21d680
rsi    0x7ff82ae227f6
rbp    0x308f9edc0
rsp    0x308f9ed78
r8     0x1
r9     0x2
r10    0x0
r11    0x7ff82ae227f6
r12    0x7f8d797b768c
r13    0x0
r14    0x0
r15    0x7f8d797b7650
rip    0x7ff80a95ae5d
rflags 0x247
cs     0x2b
fs     0x0
gs     0x0
@atljoseph atljoseph added the unverified A bug that has been reported but not verified label Mar 9, 2024
@Jacalz
Copy link
Member

Jacalz commented Mar 9, 2024

Would you mind testing if the develop branch works any differently? The crash seems to be happening inside the C-code and that branch has a much newer GLFW version. Install with go get fyne.io/fyne/v2@develop.

@atljoseph
Copy link
Author

atljoseph commented Mar 9, 2024

Same result after running go get fyne.io/fyne/v2@develop, then go mod tidy, and finally go run . (or using the product of go build). Resize causes a panic. Here are the logs ffrom using the develop branch:

SIGSEGV: segmentation violation
PC=0x160d3dcd8 m=3 sigcode=1 addr=0x2000000000000010
signal arrived during cgo execution

goroutine 24 gp=0xc000105880 m=3 mp=0xc00007d208 [syscall, locked to thread]:
runtime.cgocall(0x100cd7e80, 0xc0006d1d18)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:157 +0x4b fp=0xc0006d1cf0 sp=0xc0006d1cb8 pc=0x10067e06b
github.com/go-gl/gl/v2.1/gl._Cfunc_glowClear(0x7ffa22d97ea5, 0x4100)
        _cgo_gotypes.go:8334 +0x45 fp=0xc0006d1d18 sp=0xc0006d1cf0 pc=0x100c4a185
github.com/go-gl/gl/v2.1/gl.Clear(...)
        /Users/josephgill/.go/pkg/mod/github.com/go-gl/gl@v0.0.0-20211210172815-726fda9656d6/v2.1/gl/package.go:19614
fyne.io/fyne/v2/internal/painter/gl.(*coreContext).Clear(0x0?, 0x2de?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/painter/gl/gl_core.go:112 +0x25 fp=0xc0006d1d38 sp=0xc0006d1d18 pc=0x100c80a65
fyne.io/fyne/v2/internal/painter/gl.(*painter).Clear(0xc001422050)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/painter/gl/painter.go:83 +0xa2 fp=0xc0006d1d60 sp=0xc0006d1d38 pc=0x100c82202
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).paint(0xc0001a85a0, {0xf17771e0?, 0x7ff1?})
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/canvas.go:280 +0x68 fp=0xc0006d1de0 sp=0xc0006d1d60 pc=0x100c9e3c8
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).repaintWindow.func1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop.go:217 +0x85 fp=0xc0006d1e30 sp=0xc0006d1de0 pc=0x100ca16c5
fyne.io/fyne/v2/internal/driver/glfw.(*window).RunWithContext(0xc000105a40, 0xc0006d1e58)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/window.go:924 +0x43 fp=0xc0006d1e48 sp=0xc0006d1e30 pc=0x100caa143
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).repaintWindow(0xc000105880?, 0xc0006d1f90?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop.go:208 +0x45 fp=0xc0006d1e80 sp=0xc0006d1e48 pc=0x100ca1605
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).drawSingleFrame(0xc0001ba0c0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop.go:95 +0x13f fp=0xc0006d1ef8 sp=0xc0006d1e80 pc=0x100ca0c9f
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).startDrawThread.func1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop.go:262 +0x1be fp=0xc0006d1fe0 sp=0xc0006d1ef8 pc=0x100ca19fe
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0006d1fe8 sp=0xc0006d1fe0 pc=0x1006e6cc1
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).startDrawThread in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop.go:240 +0xbb

goroutine 1 gp=0xc0000061c0 m=nil [chan send, locked to thread]:
runtime.gopark(0xc0008879b0?, 0x10069c85c?, 0x40?, 0xd2?, 0xc0013a0000?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000887970 sp=0xc000887950 pc=0x1006b3c0e
runtime.chansend(0xc000128120, 0xc000887a50, 0x1, 0xc000626ba0?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:259 +0x38d fp=0xc0008879e0 sp=0xc000887970 pc=0x10067f90d
runtime.chansend1(0x10135c420?, 0x10a2045b8?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:145 +0x17 fp=0xc000887a10 sp=0xc0008879e0 pc=0x10067f577
fyne.io/fyne/v2/internal/driver/glfw.runOnDraw(0xc000105a40, 0xc0013a0000)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop.go:66 +0xc7 fp=0xc000887a88 sp=0xc000887a10 pc=0x100ca0a87
fyne.io/fyne/v2/internal/driver/glfw.(*window).platformResize(0xc000105a40, {0x132570?, 0xc0?})
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/window_notxdg.go:18 +0xb4 fp=0xc000887ab8 sp=0xc000887a88 pc=0x100cad534
fyne.io/fyne/v2/internal/driver/glfw.(*window).processResized(0xc000105a40, 0x2fa?, 0xc000887ae0?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/window.go:317 +0xfc fp=0xc000887ae8 sp=0xc000887ab8 pc=0x100ca4d3c
fyne.io/fyne/v2/internal/driver/glfw.(*window).resized(...)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/window_desktop.go:328
fyne.io/fyne/v2/internal/driver/glfw.(*window).resized-fm(0xc000887b30?, 0x100c92846?, 0xc000057b48?)
        <autogenerated>:1 +0x25 fp=0xc000887b10 sp=0xc000887ae8 pc=0x100cb2385
github.com/go-gl/glfw/v3.3/glfw.goWindowSizeCB(0xc0000061c0?, 0x17d, 0x11c)
        /Users/josephgill/.go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20240306074159-ea2d69986ecb/window.go:212 +0x45 fp=0xc000887b38 sp=0xc000887b10 pc=0x100c926c5
_cgoexp_16379c6f66fe_goWindowSizeCB(0x1006bcab9?)
        _cgo_gotypes.go:2666 +0x1f fp=0xc000887b58 sp=0xc000887b38 pc=0x100c962df
runtime.cgocallbackg1(0x100c962c0, 0x306491130, 0x0)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:403 +0x295 fp=0xc000887c18 sp=0xc000887b58 pc=0x10067e795
runtime.cgocallbackg(0x100c962c0, 0x306491130, 0x0)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:322 +0x136 fp=0xc000887c90 sp=0xc000887c18 pc=0x10067e456
runtime.cgocallbackg(0x100c962c0, 0x306491130, 0x0)
        <autogenerated>:1 +0x29 fp=0xc000887cb8 sp=0xc000887c90 pc=0x1006e9409
runtime.cgocallback(0xc000887d18, 0x10067e095, 0x100cd49d0)
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1079 +0xcc fp=0xc000887ce0 sp=0xc000887cb8 pc=0x1006e6a8c
runtime.systemstack_switch()
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:474 +0x8 fp=0xc000887cf0 sp=0xc000887ce0 pc=0x1006e4c88
runtime.cgocall(0x100cd49d0, 0xc000887d50)
        /usr/local/opt/go/libexec/src/runtime/cgocall.go:175 +0x75 fp=0xc000887d28 sp=0xc000887cf0 pc=0x10067e095
github.com/go-gl/glfw/v3.3/glfw._Cfunc_glfwPollEvents()
        _cgo_gotypes.go:1502 +0x3f fp=0xc000887d50 sp=0xc000887d28 pc=0x100c8a93f
github.com/go-gl/glfw/v3.3/glfw.PollEvents()
        /Users/josephgill/.go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20240306074159-ea2d69986ecb/window.go:931 +0x13 fp=0xc000887d78 sp=0xc000887d50 pc=0x100c95f33
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).pollEvents(...)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop_desktop.go:25
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).runGL(0x100ca4865?)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/loop.go:135 +0x1b6 fp=0xc000887ec0 sp=0xc000887d78 pc=0x100ca0fb6
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).Run(0xc0001ba0c0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/driver.go:167 +0x6f fp=0xc000887ee0 sp=0xc000887ec0 pc=0x100c9f8cf
fyne.io/fyne/v2/internal/driver/glfw.(*window).ShowAndRun(0xc000105a40)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/window.go:230 +0x26 fp=0xc000887ef8 sp=0xc000887ee0 pc=0x100ca46a6
main.main()
        /Users/josephgill/personal/fysion/main.go:36 +0xfb fp=0xc000887f50 sp=0xc000887ef8 pc=0x100cbeabb
runtime.main()
        /usr/local/opt/go/libexec/src/runtime/proc.go:271 +0x29d fp=0xc000887fe0 sp=0xc000887f50 pc=0x1006b37dd
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000887fe8 sp=0xc000887fe0 pc=0x1006e6cc1

goroutine 2 gp=0xc000006c40 m=nil [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000084fa8 sp=0xc000084f88 pc=0x1006b3c0e
runtime.goparkunlock(...)
        /usr/local/opt/go/libexec/src/runtime/proc.go:408
runtime.forcegchelper()
        /usr/local/opt/go/libexec/src/runtime/proc.go:326 +0xb3 fp=0xc000084fe0 sp=0xc000084fa8 pc=0x1006b3a93
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000084fe8 sp=0xc000084fe0 pc=0x1006e6cc1
created by runtime.init.6 in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/proc.go:314 +0x1a

goroutine 18 gp=0xc000104700 m=nil [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000080780 sp=0xc000080760 pc=0x1006b3c0e
runtime.goparkunlock(...)
        /usr/local/opt/go/libexec/src/runtime/proc.go:408
runtime.bgsweep(0xc000118000)
        /usr/local/opt/go/libexec/src/runtime/mgcsweep.go:318 +0xdf fp=0xc0000807c8 sp=0xc000080780 pc=0x10069f9df
runtime.gcenable.gowrap1()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:203 +0x25 fp=0xc0000807e0 sp=0xc0000807c8 pc=0x1006942e5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0000807e8 sp=0xc0000807e0 pc=0x1006e6cc1
created by runtime.gcenable in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:203 +0x66

goroutine 19 gp=0xc0001048c0 m=nil [GC scavenge wait]:
runtime.gopark(0x10000?, 0x100e27398?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000080f78 sp=0xc000080f58 pc=0x1006b3c0e
runtime.goparkunlock(...)
        /usr/local/opt/go/libexec/src/runtime/proc.go:408
runtime.(*scavengerState).park(0x101aaa960)
        /usr/local/opt/go/libexec/src/runtime/mgcscavenge.go:425 +0x49 fp=0xc000080fa8 sp=0xc000080f78 pc=0x10069d389
runtime.bgscavenge(0xc000118000)
        /usr/local/opt/go/libexec/src/runtime/mgcscavenge.go:658 +0x59 fp=0xc000080fc8 sp=0xc000080fa8 pc=0x10069d939
runtime.gcenable.gowrap2()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:204 +0x25 fp=0xc000080fe0 sp=0xc000080fc8 pc=0x100694285
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000080fe8 sp=0xc000080fe0 pc=0x1006e6cc1
created by runtime.gcenable in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:204 +0xa5

goroutine 20 gp=0xc000105180 m=nil [finalizer wait]:
runtime.gopark(0x0?, 0x100f7c390?, 0x40?, 0x40?, 0x2000000020?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000084620 sp=0xc000084600 pc=0x1006b3c0e
runtime.runfinq()
        /usr/local/opt/go/libexec/src/runtime/mfinal.go:194 +0x107 fp=0xc0000847e0 sp=0xc000084620 pc=0x100693327
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0000847e8 sp=0xc0000847e0 pc=0x1006e6cc1
created by runtime.createfing in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mfinal.go:164 +0x3d

goroutine 66 gp=0xc000105340 m=nil [select, locked to thread]:
runtime.gopark(0xc000086fa8?, 0x2?, 0xa9?, 0x3e?, 0xc000086f98?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000086e40 sp=0xc000086e20 pc=0x1006b3c0e
runtime.selectgo(0xc000086fa8, 0xc000086f94, 0x0?, 0x0, 0x0?, 0x1)
        /usr/local/opt/go/libexec/src/runtime/select.go:327 +0x725 fp=0xc000086f60 sp=0xc000086e40 pc=0x1006c4f85
runtime.ensureSigM.func1()
        /usr/local/opt/go/libexec/src/runtime/signal_unix.go:1034 +0x16f fp=0xc000086fe0 sp=0xc000086f60 pc=0x1006ddfef
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000086fe8 sp=0xc000086fe0 pc=0x1006e6cc1
created by runtime.ensureSigM in goroutine 4
        /usr/local/opt/go/libexec/src/runtime/signal_unix.go:1017 +0xc8

goroutine 22 gp=0xc000105500 m=5 mp=0xc000100908 [syscall]:
syscall.syscall6(0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/sys_darwin.go:45 +0x98 fp=0xc000081bc8 sp=0xc000081b08 pc=0x1006e37d8
golang.org/x/sys/unix.kevent(0x0?, 0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /Users/josephgill/.go/pkg/mod/golang.org/x/sys@v0.16.0/unix/zsyscall_darwin_amd64.go:275 +0x4e fp=0xc000081c30 sp=0xc000081bc8 pc=0x100cb2d2e
golang.org/x/sys/unix.Kevent(0x0?, {0x0?, 0x0?, 0x0?}, {0xc000081d98?, 0x0?, 0x0?}, 0x0?)
        /Users/josephgill/.go/pkg/mod/golang.org/x/sys@v0.16.0/unix/syscall_bsd.go:397 +0x35 fp=0xc000081c70 sp=0xc000081c30 pc=0x100cb2bd5
github.com/fsnotify/fsnotify.(*Watcher).read(0x0?, {0xc000081d98, 0x0?, 0xa})
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.7.0/backend_kqueue.go:777 +0x34 fp=0xc000081cc0 sp=0xc000081c70 pc=0x100cb63d4
github.com/fsnotify/fsnotify.(*Watcher).readEvents(0xc0001e0070)
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.7.0/backend_kqueue.go:547 +0xcb fp=0xc000081fc8 sp=0xc000081cc0 pc=0x100cb502b
github.com/fsnotify/fsnotify.NewBufferedWatcher.gowrap1()
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.7.0/backend_kqueue.go:184 +0x25 fp=0xc000081fe0 sp=0xc000081fc8 pc=0x100cb36c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000081fe8 sp=0xc000081fe0 pc=0x1006e6cc1
created by github.com/fsnotify/fsnotify.NewBufferedWatcher in goroutine 1
        /Users/josephgill/.go/pkg/mod/github.com/fsnotify/fsnotify@v1.7.0/backend_kqueue.go:184 +0x23a

goroutine 23 gp=0xc0001056c0 m=nil [chan receive]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc0000826c8 sp=0xc0000826a8 pc=0x1006b3c0e
runtime.chanrecv(0xc0001282a0, 0xc0000827a8, 0x1)
        /usr/local/opt/go/libexec/src/runtime/chan.go:583 +0x3bf fp=0xc000082740 sp=0xc0000826c8 pc=0x10068067f
runtime.chanrecv2(0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:447 +0x12 fp=0xc000082768 sp=0xc000082740 pc=0x1006802b2
fyne.io/fyne/v2/app.watchFile.func1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/app/settings_desktop.go:42 +0x66 fp=0xc0000827e0 sp=0xc000082768 pc=0x100cba626
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0000827e8 sp=0xc0000827e0 pc=0x1006e6cc1
created by fyne.io/fyne/v2/app.watchFile in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/app/settings_desktop.go:41 +0xe9

goroutine 25 gp=0xc000105c00 m=nil [select]:
runtime.gopark(0xc000083778?, 0x2?, 0x5c?, 0xc8?, 0xc0000836fc?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000090d88 sp=0xc000090d68 pc=0x1006b3c0e
runtime.selectgo(0xc000090f78, 0xc0000836f8, 0x0?, 0x0, 0x0?, 0x1)
        /usr/local/opt/go/libexec/src/runtime/select.go:327 +0x725 fp=0xc000090ea8 sp=0xc000090d88 pc=0x1006c4f85
fyne.io/fyne/v2/internal/async.(*UnboundedChan[...]).processing(0x100f8ace0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/async/chan_go1.21.go:74 +0xe5 fp=0xc000090fc0 sp=0xc000090ea8 pc=0x10093a8a5
fyne.io/fyne/v2/internal/async.NewUnboundedChan[...].gowrap1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/async/chan_go1.21.go:51 +0x25 fp=0xc000090fe0 sp=0xc000090fc0 pc=0x10093a785
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000090fe8 sp=0xc000090fe0 pc=0x1006e6cc1
created by fyne.io/fyne/v2/internal/async.NewUnboundedChan[...] in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/async/chan_go1.21.go:51 +0x10d

goroutine 26 gp=0xc000105dc0 m=nil [chan receive]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000083f10 sp=0xc000083ef0 pc=0x1006b3c0e
runtime.chanrecv(0xc00011e600, 0xc000083fc8, 0x1)
        /usr/local/opt/go/libexec/src/runtime/chan.go:583 +0x3bf fp=0xc000083f88 sp=0xc000083f10 pc=0x10068067f
runtime.chanrecv2(0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:447 +0x12 fp=0xc000083fb0 sp=0xc000083f88 pc=0x1006802b2
fyne.io/fyne/v2/internal/driver/common.(*Window).RunEventQueue(...)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/common/window.go:34
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).createWindow.func1.gowrap1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/window.go:961 +0x5c fp=0xc000083fe0 sp=0xc000083fb0 pc=0x100caa6dc
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000083fe8 sp=0xc000083fe0 pc=0x1006e6cc1
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).createWindow.func1 in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/window.go:961 +0x136

goroutine 27 gp=0xc00053a000 m=nil [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000540750 sp=0xc000540730 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0005407e0 sp=0xc000540750 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0005407e8 sp=0xc0005407e0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 28 gp=0xc00053a1c0 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a62b7add?, 0x1?, 0xd5?, 0x1c?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000540f50 sp=0xc000540f30 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc000540fe0 sp=0xc000540f50 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000540fe8 sp=0xc000540fe0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 34 gp=0xc000600000 m=nil [GC worker (idle)]:
runtime.gopark(0xef3257e917a8?, 0x3?, 0xd0?, 0x41?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00053c750 sp=0xc00053c730 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc00053c7e0 sp=0xc00053c750 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00053c7e8 sp=0xc00053c7e0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 50 gp=0xc000384700 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a62b7f6b?, 0x3?, 0xbf?, 0xbf?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc0003a0750 sp=0xc0003a0730 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0003a07e0 sp=0xc0003a0750 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0003a07e8 sp=0xc0003a07e0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 35 gp=0xc0006001c0 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a62bd14a?, 0x3?, 0xb0?, 0x31?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00053cf50 sp=0xc00053cf30 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc00053cfe0 sp=0xc00053cf50 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00053cfe8 sp=0xc00053cfe0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 51 gp=0xc0003848c0 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a62b8136?, 0x1?, 0xbc?, 0x8f?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc0003a0f50 sp=0xc0003a0f30 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0003a0fe0 sp=0xc0003a0f50 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0003a0fe8 sp=0xc0003a0fe0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 36 gp=0xc000600380 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a62b815f?, 0x1?, 0xb7?, 0x42?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00053d750 sp=0xc00053d730 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc00053d7e0 sp=0xc00053d750 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00053d7e8 sp=0xc00053d7e0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 52 gp=0xc000384a80 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a62b81b3?, 0x1?, 0x2d?, 0xe?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc0003a1750 sp=0xc0003a1730 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0003a17e0 sp=0xc0003a1750 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0003a17e8 sp=0xc0003a17e0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 37 gp=0xc000600540 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a62b7b83?, 0x0?, 0x0?, 0x0?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc00053df50 sp=0xc00053df30 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc00053dfe0 sp=0xc00053df50 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00053dfe8 sp=0xc00053dfe0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 53 gp=0xc000384c40 m=nil [GC worker (idle)]:
runtime.gopark(0xef33a6209aaf?, 0x1?, 0x1f?, 0x75?, 0x0?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc0003a1f50 sp=0xc0003a1f30 pc=0x1006b3c0e
runtime.gcBgMarkWorker()
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1310 +0xe5 fp=0xc0003a1fe0 sp=0xc0003a1f50 pc=0x1006963c5
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc0003a1fe8 sp=0xc0003a1fe0 pc=0x1006e6cc1
created by runtime.gcBgMarkStartWorkers in goroutine 1
        /usr/local/opt/go/libexec/src/runtime/mgc.go:1234 +0x1c

goroutine 4 gp=0xc000007c00 m=nil [chan receive]:
runtime.gopark(0x100c9b0c5?, 0x100000002?, 0x1?, 0x1?, 0xc000542f60?)
        /usr/local/opt/go/libexec/src/runtime/proc.go:402 +0xce fp=0xc000542ed0 sp=0xc000542eb0 pc=0x1006b3c0e
runtime.chanrecv(0xc00011e360, 0x0, 0x1)
        /usr/local/opt/go/libexec/src/runtime/chan.go:583 +0x3bf fp=0xc000542f48 sp=0xc000542ed0 pc=0x10068067f
runtime.chanrecv1(0xc00011e360?, 0xc000542f98?)
        /usr/local/opt/go/libexec/src/runtime/chan.go:442 +0x12 fp=0xc000542f70 sp=0xc000542f48 pc=0x100680292
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).catchTerm(0xc0001ba0c0)
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/driver_desktop.go:191 +0x85 fp=0xc000542fc8 sp=0xc000542f70 pc=0x100ca0485
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).Run.gowrap1()
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/driver.go:166 +0x25 fp=0xc000542fe0 sp=0xc000542fc8 pc=0x100c9f925
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc000542fe8 sp=0xc000542fe0 pc=0x1006e6cc1
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).Run in goroutine 1
        /Users/josephgill/.go/pkg/mod/fyne.io/fyne/v2@v2.4.4-rc2.0.20240307214057-417de2f7f70c/internal/driver/glfw/driver.go:166 +0x65

goroutine 54 gp=0xc00053a540 m=10 mp=0xc000380908 [syscall]:
runtime.sigNoteSleep(0x0?)
        /usr/local/opt/go/libexec/src/runtime/os_darwin.go:132 +0x18 fp=0xc00039ffa0 sp=0xc00039ff68 pc=0x1006ae338
os/signal.signal_recv()
        /usr/local/opt/go/libexec/src/runtime/sigqueue.go:149 +0x25 fp=0xc00039ffc0 sp=0xc00039ffa0 pc=0x1006e31c5
os/signal.loop()
        /usr/local/opt/go/libexec/src/os/signal/signal_unix.go:23 +0x13 fp=0xc00039ffe0 sp=0xc00039ffc0 pc=0x100c9b4b3
runtime.goexit({})
        /usr/local/opt/go/libexec/src/runtime/asm_amd64.s:1695 +0x1 fp=0xc00039ffe8 sp=0xc00039ffe0 pc=0x1006e6cc1
created by os/signal.Notify.func1.1 in goroutine 4
        /usr/local/opt/go/libexec/src/os/signal/signal.go:151 +0x1f

rax    0x2000000000000000
rbx    0x7ff1f17df930
rcx    0x7ff1f18ab800
rdx    0x1
rdi    0x7ff1f173b450
rsi    0x400000
rbp    0x307490d90
rsp    0x307490d70
r8     0xd7a
r9     0xffdfffff
r10    0xffdfffff
r11    0xffc00000
r12    0xaab0
r13    0x0
r14    0x7ff1f173b450
r15    0x7ff1f80a0060
rip    0x160d3dcd8
rflags 0x202
cs     0x2b
fs     0x0
gs     0x0

@dweymouth
Copy link
Contributor

dweymouth commented Mar 11, 2024

Are you running a Fyne app built for x64 on an Apple Silicon mac through Rosetta? If so, this is a known issue (#3971), and running x64 Fyne apps on an M1/M2 machine is not officially supported right now.

@andydotxyz
Copy link
Member

Hey that is a good catch - That is a possible cause for this issue because the M1/2 fixes won't be compiled in if it's an intel binary!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
unverified A bug that has been reported but not verified
Projects
None yet
Development

No branches or pull requests

4 participants