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
Apple M1: error happens when using mouse drag to resize window #2188
Comments
Can you please confirm what fyne version (v2) you are using? The description says " |
I'll confirm later. |
It's go1.16rc1 darwin/arm64 |
Thanks. Can you also verify the Fyne version, as mentioned in the comment above? Can you please share the code that this is happening in? Might also be worth testing the latest Go release (Go 1.16.3). |
I have tested on the colo-M1 box (mac mini) we've been provided and it does not happen on that running a basic app. |
You are right. The Go version is 1.16 RC1. I'll install 1.16.3 and have a try. |
@Virgil-N Did you find the source of the issue? |
Not found. |
I'd count that as finding the source of the issue. Thanks for confirming. |
I'm sorry. The crash is still here on Mac M1 with Go version 1.16.3. |
And fyne version is 2.0.2. |
Here is the error information. -[AGXM1FamilyCommandBuffer renderCommandEncoderWithDescriptor:]:286: failed assertion `A command encoder is already encoding to this command buffer' goroutine 1 [syscall, locked to thread]: goroutine 19 [sleep]: goroutine 20 [select]: goroutine 21 [chan receive]: goroutine 22 [chan receive]: goroutine 23 [syscall]: goroutine 24 [chan receive]: goroutine 25 [syscall, locked to thread]: goroutine 26 [chan receive]: goroutine 27 [chan receive]: goroutine 38 [chan receive]: goroutine 56 [chan receive]: r0 0x0 |
Can confirm this is also happening on windows 10 with Go v1.16.3 and Fyne v2.0.3 ( Simply resizing the window quickly produces the crash. |
Are you on macOS Big Sur on an M1 processor as well @bloeys? |
@andydotxyz No this happened on Windows 10, Go v1.16.3 and Fyne v2.0.3 |
@bloeys can you please post the crash log you see on Windows? |
Sorry I can't reproduce with my newer setup ( Potentially the version fixed something, but I can't test now. Might have some time later to install and test with an older go version. |
I believe this is a general issue with the upstream dependency glfw. This is a simple reproducer that crashes not only on M1 macs but also on Windows (NVIDIA, 2080, driver version 471): package main
import (
"math/rand"
"time"
"fyne.io/fyne/v2"
"fyne.io/fyne/v2/app"
"fyne.io/fyne/v2/widget"
)
func main() {
w := app.New().NewWindow("x")
w.SetContent(widget.NewLabel("Hello Fyne!"))
go func() {
tk := time.NewTicker(time.Millisecond)
for range tk.C {
width := rand.Float32()*1000 + 1
height := rand.Float32()*1000 + 1
w.Resize(fyne.Size{Width: width, Height: height})
}
}()
w.ShowAndRun()
} The reason is, as explained in PR #2429, all draw calls are executed from a draw thread, but glfw itself works with the underlying frame buffer on a different thread. There are multiple race conditions:
To entirely address the issue, if fyne does not remove glfw dependency, one must move all draw calls back to the mainthread instead of doing it in a different thread, and of course, there are drawbacks: draw calls may block event handling on the mainthread, and event handling can also block draw events. A solution might be using a command buffer to cache all draw commands and execute them as a batch on the mainthread, but apparently, it will be a significant change. |
We needed to move from drawing on the main thread to drawing on the draw thread so that applications could repaint during a resize operation (from when mouse makes first move to when mouse is released). Perhaps this should be revisited after the async-resize code lands? (#960) |
It would be good to test on latest |
Sadly the async-resize does not seem to have fixed this but it has changed the stack. So I'm less sure why it happens now! |
I still think the problem is a frame buffer race condition. The async-resize yet does not fix the driver frame buffer race. As described in #2429, the race condition is:
The above GPU resize op and GPU draw op is racing on the frame buffer. If ThreadMain's resize op resizes the frame buffer to a smaller one, but the ThreadDraw's draw op is still drawing on a bigger frame buffer, it will lead to illegal memory access. |
This is another evidence that the problem is from the upstream dependency glfw: package main
import (
"math/rand"
"runtime"
"time"
"github.com/go-gl/glfw/v3.3/glfw"
)
func init() {
runtime.LockOSThread()
}
func main() {
err := glfw.Init()
if err != nil {
panic(err)
}
defer glfw.Terminate()
window, err := glfw.CreateWindow(640, 480, "Testing", nil, nil)
if err != nil {
panic(err)
}
window.MakeContextCurrent()
go func() {
tk := time.NewTicker(time.Millisecond)
for range tk.C {
width := rand.Float32()*1000 + 1
height := rand.Float32()*1000 + 1
window.SetSize(int(width), int(height))
}
}()
for !window.ShouldClose() {
window.SwapBuffers()
glfw.PollEvents()
}
} This program does not depend on fyne but still crashes (on Windows/NVIDIA exit status 0xc0000005). |
Thanks for the clarity here, this is making sense. |
Good question. But sadly I don't think it is going to be fixed as the problem is not yet being considered even from glfw/glfw side. See glfw/glfw#1682. An alternative solution to address the issue seems to need more investigation and experiments, such as gather draw calls in a draw command buffer, replace gl calls via modern driver (Metal, DX3D, etc). |
I guess they think it is Win10 specific and not reproducible at this time. |
Downsize is resize is not as smooth, but upside does not crash. Fixes fyne-io#2188
There is a workaround in release branch now, so this can be considered resolved. |
Describe the bug:
Error happens when using mouse drag to resize window.
Device (please complete the following information):
Error information is a little long.
-[AGXM1FamilyCommandBuffer renderCommandEncoderWithDescriptor:]:286: failed assertion `A command encoder is already encoding to this command buffer'
SIGABRT: abort
PC=0x1a4128cec m=0 sigcode=0
signal arrived during cgo execution
goroutine 1 [syscall, locked to thread]:
runtime.cgocall(0x100cc160c, 0x14000447d08, 0x14000102420)
/opt/homebrew/Cellar/go/1.15.8/libexec/src/runtime/cgocall.go:154 +0x50 fp=0x14000447cd0 sp=0x14000447c90 pc=0x10085acc0
github.com/go-gl/glfw/v3.3/glfw._Cfunc_glfwPollEvents()
_cgo_gotypes.go:1474 +0x40 fp=0x14000447d00 sp=0x14000447cd0 pc=0x100b22bc0
github.com/go-gl/glfw/v3.3/glfw.PollEvents()
/Users/virgil/go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20210311203641-62640a716d48/window.go:949 +0x20 fp=0x14000447d40 sp=0x14000447d00 pc=0x100b2ad30
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).tryPollEvents(0x14000100c30)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/loop.go:224 +0x3c fp=0x14000447d60 sp=0x14000447d40 pc=0x100b3696c
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).runGL(0x14000100c30)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/loop.go:102 +0x1b4 fp=0x14000447eb0 sp=0x14000447d60 pc=0x100b36364
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).Run(0x14000100c30)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/driver.go:80 +0x38 fp=0x14000447ed0 sp=0x14000447eb0 pc=0x100b35758
fyne.io/fyne/v2/internal/driver/glfw.(*window).ShowAndRun(0x14000181a40)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/window.go:450 +0x38 fp=0x14000447ef0 sp=0x14000447ed0 pc=0x100b3bc58
main.main()
/Users/virgil/workspace/personal/go/fyne/fyne_app/client/main.go:49 +0x208 fp=0x14000447f70 sp=0x14000447ef0 pc=0x100cae5f8
runtime.main()
/opt/homebrew/Cellar/go/1.15.8/libexec/src/runtime/proc.go:225 +0x26c fp=0x14000447fd0 sp=0x14000447f70 pc=0x10088c3dc
runtime.goexit()
/opt/homebrew/Cellar/go/1.15.8/libexec/src/runtime/asm_arm64.s:1130 +0x4 fp=0x14000447fd0 sp=0x14000447fd0 pc=0x1008bd194
goroutine 19 [sleep]:
time.Sleep(0x22ecb25c00)
/opt/homebrew/Cellar/go/1.15.8/libexec/src/runtime/time.go:193 +0xc4
fyne.io/fyne/v2/internal/painter.svgCacheJanitor.func1()
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/svg_cache.go:57 +0xe0
sync.(*Once).doSlow(0x10280dac8, 0x14000132ca0)
/opt/homebrew/Cellar/go/1.15.8/libexec/src/sync/once.go:68 +0x120
sync.(*Once).Do(0x10280dac8, 0x14000132ca0)
/opt/homebrew/Cellar/go/1.15.8/libexec/src/sync/once.go:59 +0x44
created by fyne.io/fyne/v2/internal/painter.svgCacheJanitor
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/svg_cache.go:55 +0x9c
goroutine 20 [select]:
fyne.io/fyne/v2/data/binding.makeInfiniteQueue.func1(0x14000102120, 0x140001340b0)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/data/binding/queue.go:36 +0xf8
created by fyne.io/fyne/v2/data/binding.makeInfiniteQueue
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/data/binding/queue.go:21 +0xa0
goroutine 21 [chan receive]:
fyne.io/fyne/v2/data/binding.processItems()
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/data/binding/queue.go:54 +0x3c
created by fyne.io/fyne/v2/data/binding.init.0
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/data/binding/queue.go:15 +0x30
goroutine 22 [chan receive]:
fyne.io/fyne/v2/app.newAppWithDriver.func1(0x140001024e0, 0x14000404b60)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/app/app.go:120 +0x34
created by fyne.io/fyne/v2/app.newAppWithDriver
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/app/app.go:118 +0x1bc
goroutine 23 [syscall]:
syscall.syscall6(0x100b5a880, 0x6, 0x0, 0x0, 0x14000048e88, 0xa, 0x10280dc70, 0x0, 0x0, 0x0)
/opt/homebrew/Cellar/go/1.15.8/libexec/src/runtime/sys_darwin.go:41 +0x1c
golang.org/x/sys/unix.kevent(0x6, 0x0, 0x0, 0x14000048e88, 0xa, 0x10280dc70, 0x0, 0x0, 0x0)
/Users/virgil/go/pkg/mod/golang.org/x/sys@v0.0.0-20200720211630-cb9d2d5c5666/unix/zsyscall_darwin_arm64.go:292 +0x80
golang.org/x/sys/unix.Kevent(0x6, 0x0, 0x0, 0x0, 0x14000048e88, 0xa, 0xa, 0x10280dc70, 0x14000102600, 0x0, ...)
/Users/virgil/go/pkg/mod/golang.org/x/sys@v0.0.0-20200720211630-cb9d2d5c5666/unix/syscall_bsd.go:413 +0x60
github.com/fsnotify/fsnotify.read(0x6, 0x14000048e88, 0xa, 0xa, 0x10280dc70, 0x14000048e88, 0x0, 0xa, 0x0, 0x0)
/Users/virgil/go/pkg/mod/github.com/fsnotify/fsnotify@v1.4.9/kqueue.go:511 +0x50
github.com/fsnotify/fsnotify.(*Watcher).readEvents(0x14000136c60)
/Users/virgil/go/pkg/mod/github.com/fsnotify/fsnotify@v1.4.9/kqueue.go:274 +0x76c
created by github.com/fsnotify/fsnotify.NewWatcher
/Users/virgil/go/pkg/mod/github.com/fsnotify/fsnotify@v1.4.9/kqueue.go:62 +0x15c
goroutine 24 [chan receive]:
fyne.io/fyne/v2/app.watchFile.func1(0x14000136c60, 0x1400011ba40, 0x34, 0x14000345140, 0x14000345150)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/app/settings_desktop.go:42 +0x48
created by fyne.io/fyne/v2/app.watchFile
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/app/settings_desktop.go:41 +0xd4
goroutine 25 [runnable, locked to thread]:
github.com/go-gl/gl/v3.2-core/gl._Cfunc_glowEnableVertexAttribArray(0x1e6bcf868, 0x0)
_cgo_gotypes.go:6890 +0x40
github.com/go-gl/gl/v3.2-core/gl.EnableVertexAttribArray(...)
/Users/virgil/go/pkg/mod/github.com/go-gl/gl@v0.0.0-20190320180904-bf2b1f2f34d7/v3.2-core/gl/package.go:9428
fyne.io/fyne/v2/internal/painter/gl.(*glPainter).glCreateBuffer(0x140006d4120, 0x140000f9680, 0x14, 0x14, 0x0)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/gl/gl_core.go:213 +0x154
fyne.io/fyne/v2/internal/painter/gl.(*glPainter).drawTextureWithDetails(0x140006d4120, 0x100ecd738, 0x14000405260, 0x140004493c8, 0x4320000042500000, 0x4000000040000000, 0x43d90000441cc000, 0x0, 0x3f800000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/gl/draw.go:27 +0xe8
fyne.io/fyne/v2/internal/painter/gl.(*glPainter).drawGradient(0x140006d4120, 0x100ecd738, 0x14000405260, 0x140004493c8, 0x4320000042500000, 0x43d90000441cc000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/gl/draw.go:52 +0x98
fyne.io/fyne/v2/internal/painter/gl.(*glPainter).drawObject(0x140006d4120, 0x100ecd738, 0x14000405260, 0x4320000042500000, 0x43d90000441cc000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/gl/draw.go:101 +0x140
fyne.io/fyne/v2/internal/painter/gl.(*glPainter).Paint(0x140006d4120, 0x100ecd738, 0x14000405260, 0x4320000042500000, 0x43d90000441cc000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/gl/painter.go:70 +0x80
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).paint.func1(0x14000031a80, 0x4320000042500000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/canvas.go:439 +0xb8
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).walkTree.func1(0x100ecd738, 0x14000405260, 0x4320000042500000, 0x0, 0x4f0000004f000000, 0x42e4000040c00000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/canvas.go:535 +0x12c
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecd738, 0x14000405260, 0x42e4000040c00000, 0x100ecdbb8, 0x1400011a200, 0x42e4000040c00000, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:169 +0x334
fyne.io/fyne/v2/internal/driver.walkObjectTree.func1(...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:176
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecdbb8, 0x1400011a200, 0x42e0000040800000, 0x100ecdd38, 0x14000356c80, 0x42e0000040800000, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:190 +0x2c4
fyne.io/fyne/v2/internal/driver.walkObjectTree.func1(...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:176
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecdd38, 0x14000356c80, 0x42e0000040800000, 0x100ecd558, 0x140000d2340, 0x42e0000040800000, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:190 +0x2c4
fyne.io/fyne/v2/internal/driver.walkObjectTree.func1(...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:176
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecd558, 0x140000d2340, 0x4080000040800000, 0x100ecd558, 0x140000d2640, 0x4080000040800000, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:190 +0x2c4
fyne.io/fyne/v2/internal/driver.walkObjectTree.func1(...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:176
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecd558, 0x140000d2640, 0x4080000040800000, 0x100ecd558, 0x140000d26c0, 0x4080000040800000, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:190 +0x2c4
fyne.io/fyne/v2/internal/driver.walkObjectTree.func1(...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:176
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecd558, 0x140000d26c0, 0x4080000040800000, 0x100ecd558, 0x140000d2700, 0x4080000040800000, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:190 +0x2c4
fyne.io/fyne/v2/internal/driver.walkObjectTree.func1(...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:176
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecd558, 0x140000d2700, 0x4080000040800000, 0x100ecd558, 0x140000d2900, 0x4080000040800000, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:190 +0x2c4
fyne.io/fyne/v2/internal/driver.walkObjectTree.func1(...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:176
fyne.io/fyne/v2/internal/driver.walkObjectTree(0x100ecd558, 0x140000d2900, 0x14000449c00, 0x0, 0x0, 0x0, 0x0, 0x4f0000004f000000, 0x14000449ce0, 0x14000449cb8, ...)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:190 +0x2c4
fyne.io/fyne/v2/internal/driver.WalkVisibleObjectTree(0x100ecd558, 0x140000d2900, 0x14000449ce0, 0x14000449cb8, 0x14000107b00)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/util.go:134 +0x78
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).walkTree(0x14000398000, 0x14000068440, 0x14000449dc8, 0x14000449db0)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/canvas.go:556 +0xf4
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).walkTrees(0x14000398000, 0x14000449dc8, 0x14000449db0)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/canvas.go:563 +0x40
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).paint(0x14000398000, 0x43d90000441cc000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/canvas.go:453 +0xdc
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).repaintWindow.func1()
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/loop.go:163 +0x70
fyne.io/fyne/v2/internal/driver/glfw.(*window).RunWithContext(0x14000181a40, 0x14000449e90)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/window.go:1202 +0x50
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).repaintWindow(0x14000100c30, 0x14000181a40)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/loop.go:154 +0x50
fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).startDrawThread.func1(0x14000100c30, 0x14000102660, 0x14000100cd0)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/loop.go:210 +0x278
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).startDrawThread
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/loop.go:181 +0xac
goroutine 26 [chan receive]:
fyne.io/fyne/v2/internal/driver/glfw.(*window).runEventQueue(0x14000181a40)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/window.go:1262 +0x90
created by fyne.io/fyne/v2/internal/driver/glfw.(*gLDriver).createWindow.func1
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/window.go:1287 +0xfc
goroutine 34 [chan receive]:
fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).setupThemeListener.func1(0x140003b4000, 0x14000398000)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/canvas.go:495 +0x40
created by fyne.io/fyne/v2/internal/driver/glfw.(*glCanvas).setupThemeListener
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/driver/glfw/canvas.go:493 +0x94
goroutine 28 [chan receive]:
fyne.io/fyne/v2/internal/animation.(*Runner).runAnimations.func1(0x14000e32690, 0x14000100c80)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/animation/runner.go:69 +0x218
created by fyne.io/fyne/v2/internal/animation.(*Runner).runAnimations
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/animation/runner.go:67 +0x54
goroutine 27 [chan receive]:
fyne.io/fyne/v2/internal/painter.SvgCacheMonitorTheme.func1(0x140006e6060)
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/svg_cache.go:109 +0x2c
created by fyne.io/fyne/v2/internal/painter.SvgCacheMonitorTheme
/Users/virgil/go/pkg/mod/fyne.io/fyne/v2@v2.0.2/internal/painter/svg_cache.go:107 +0x8c
r0 0x0
r1 0x0
r2 0x0
r3 0x0
r4 0x0
r5 0xa
r6 0x0
r7 0x1
r8 0x5b9
r9 0xab7ee6661ff5462
r10 0xcccccccccccccccd
r11 0xa
r12 0x0
r13 0x32
r14 0x2000001100004c0
r15 0x20e4143e0
r16 0x148
r17 0x209d9f330
r18 0x140043940
r19 0x6
r20 0x102b33d40
r21 0x303
r22 0x102b33e20
r23 0x2042b3000
r24 0x10
r25 0x20446e000
r26 0x1ababd128
r27 0x0
r28 0x0
r29 0x16f5a9990
lr 0x1a4159c24
sp 0x16f5a9970
pc 0x1a4128cec
fault 0x1a4128cec
Hope u can fix this.
The text was updated successfully, but these errors were encountered: