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

CenterOnScreen causes crash on MacOS when called more than once #1539

Closed
MagicalTux opened this issue Nov 15, 2020 · 3 comments
Closed

CenterOnScreen causes crash on MacOS when called more than once #1539

MagicalTux opened this issue Nov 15, 2020 · 3 comments
Labels
bug Something isn't working question A question has been asked

Comments

@MagicalTux
Copy link
Contributor

MagicalTux commented Nov 15, 2020

Describe the bug:

When CenterOnScreen() is called it typically works, however it will reliably crash if called in a separate place of the code.

I haven't identified the reason why this crashes yet, and other places in the code work fine, but I am opening this issue for tracking and in case someone else has information.

To Reproduce:

Steps to reproduce the behaviour: Unknown

Example code:

        canvas.Refresh(s.output)
        s.w.Resize(fyne.Size{s.width, s.height})
        s.w.CenterOnScreen()

Device (please complete the following information):

  • OS: MacOS
  • Version: 10.15.7
  • Go version: 1.15.3
  • Fyne version: 1.4.0

Output

Output
SIGILL: illegal instruction
PC=0x7fff316ad09d m=17 sigcode=1
instruction bytes: 0xf 0xb 0x49 0x89 0xc6 0xeb 0x7 0x49 0x89 0xc6 0x84 0xdb 0x74 0x5 0xe8 0xb4

goroutine 0 [idle]:
runtime: unknown pc 0x7fff316ad09d
stack: frame={sp:0x700005e0ded0, fp:0x0} stack=[0x700005d8f350,0x700005e0ef50)
0000700005e0ddd0:  00007fff6e203800  0000000000000000 
0000700005e0dde0:  0000700005e0de00  00007fff6e116915 
0000700005e0ddf0:  0000000000000000  0000000000000000 
0000700005e0de00:  0000700005e0dea0  00007fff6e11ba2d 
0000700005e0de10:  000000000017b99d  000000001f08000c 
0000700005e0de20:  fffffffffffffffb  0000000000000000 
0000700005e0de30:  0000000000000000  00007fff6e203800 
0000700005e0de40:  0000000000000000  0000000000000000 
0000700005e0de50:  0000000000000000  0000000000000000 
0000700005e0de60:  0000000000000000  0000000000000000 
0000700005e0de70:  0000000000000000  0000000000000000 
0000700005e0de80:  0000000000000000  0000000005842520 
0000700005e0de90:  00007fff31e9da71  0000000005856560 
0000700005e0dea0:  0000700005e0dec0  00007fff6e1fccea 
0000700005e0deb0:  0000000000000000  0000000005842520 
0000700005e0dec0:  0000700005e0df20  00007fff316ad09d 
0000700005e0ded0: <0000000000000000  0000000005855c20 
0000700005e0dee0:  0000000008032958  0000000000000002 
0000700005e0def0:  0000700005e0e608  0000000005842520 
0000700005e0df00:  0000000005842520  0000000004f6b230 
0000700005e0df10:  0000000005856560  0000000000000000 
0000700005e0df20:  0000700005e0df40  00000000043ccafa 
0000700005e0df30:  0000000005842520  0000700005e0df88 
0000700005e0df40:  0000700005e0df50  00007fff3408780f 
0000700005e0df50:  0000700005e0df70  00007fff340877a3 
0000700005e0df60:  0000000005853be0  0000000000000000 
0000700005e0df70:  0000700005e0dff0  00007fff34087718 
0000700005e0df80:  0000000005853be0  00007fff948494c0 
0000700005e0df90:  00000000c2000000  00007fff34087764 
0000700005e0dfa0:  00007fff8b906be0  0000000005853be0 
0000700005e0dfb0:  0000000004f6b230  0000000005842520 
0000700005e0dfc0:  03959619eeb70003  0000700005e0e007 
runtime: unknown pc 0x7fff316ad09d
stack: frame={sp:0x700005e0ded0, fp:0x0} stack=[0x700005d8f350,0x700005e0ef50)
0000700005e0ddd0:  00007fff6e203800  0000000000000000 
0000700005e0dde0:  0000700005e0de00  00007fff6e116915 
0000700005e0ddf0:  0000000000000000  0000000000000000 
0000700005e0de00:  0000700005e0dea0  00007fff6e11ba2d 
0000700005e0de10:  000000000017b99d  000000001f08000c 
0000700005e0de20:  fffffffffffffffb  0000000000000000 
0000700005e0de30:  0000000000000000  00007fff6e203800 
0000700005e0de40:  0000000000000000  0000000000000000 
0000700005e0de50:  0000000000000000  0000000000000000 
0000700005e0de60:  0000000000000000  0000000000000000 
0000700005e0de70:  0000000000000000  0000000000000000 
0000700005e0de80:  0000000000000000  0000000005842520 
0000700005e0de90:  00007fff31e9da71  0000000005856560 
0000700005e0dea0:  0000700005e0dec0  00007fff6e1fccea 
0000700005e0deb0:  0000000000000000  0000000005842520 
0000700005e0dec0:  0000700005e0df20  00007fff316ad09d 
0000700005e0ded0: <0000000000000000  0000000005855c20 
0000700005e0dee0:  0000000008032958  0000000000000002 
0000700005e0def0:  0000700005e0e608  0000000005842520 
0000700005e0df00:  0000000005842520  0000000004f6b230 
0000700005e0df10:  0000000005856560  0000000000000000 
0000700005e0df20:  0000700005e0df40  00000000043ccafa 
0000700005e0df30:  0000000005842520  0000700005e0df88 
0000700005e0df40:  0000700005e0df50  00007fff3408780f 
0000700005e0df50:  0000700005e0df70  00007fff340877a3 
0000700005e0df60:  0000000005853be0  0000000000000000 
0000700005e0df70:  0000700005e0dff0  00007fff34087718 
0000700005e0df80:  0000000005853be0  00007fff948494c0 
0000700005e0df90:  00000000c2000000  00007fff34087764 
0000700005e0dfa0:  00007fff8b906be0  0000000005853be0 
0000700005e0dfb0:  0000000004f6b230  0000000005842520 
0000700005e0dfc0:  03959619eeb70003  0000700005e0e007 

goroutine 85 [syscall]:
runtime.cgocall(0x43d4a80, 0xc00006eab8, 0xc00006ead0)
	/usr/local/go/src/runtime/cgocall.go:133 +0x5b fp=0xc00006ea88 sp=0xc00006ea50 pc=0x400741b
github.com/go-gl/glfw/v3.3/glfw._Cfunc_glfwSetWindowPos(0x8009590, 0x5200000069)
	_cgo_gotypes.go:2183 +0x45 fp=0xc00006eab8 sp=0xc00006ea88 pc=0x437d925
github.com/go-gl/glfw/v3.3/glfw.(*Window).SetPos.func1(0xc000130240, 0x69, 0x52)
	/Users/magicaltux/go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20200625191551-73d3c3675aa3/window.go:472 +0x67 fp=0xc00006eaf0 sp=0xc00006eab8 pc=0x4383ae7
github.com/go-gl/glfw/v3.3/glfw.(*Window).SetPos(0xc000130240, 0x69, 0x52)
	/Users/magicaltux/go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20200625191551-73d3c3675aa3/window.go:472 +0x3f fp=0xc00006eb28 sp=0xc00006eaf0 pc=0x4381c1f
fyne.io/fyne/internal/driver/glfw.(*window).doCenterOnScreen(0xc00011c000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/window.go:148 +0x107 fp=0xc00006eb80 sp=0xc00006eb28 pc=0x438e547
fyne.io/fyne/internal/driver/glfw.(*window).CenterOnScreen(0xc00011c000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/window.go:129 +0x4f fp=0xc00006eba0 sp=0xc00006eb80 pc=0x438e42f
[...]

goroutine 1 [syscall, locked to thread]:
github.com/go-gl/glfw/v3.3/glfw._Cfunc_glfwPollEvents()
	_cgo_gotypes.go:1476 +0x45
github.com/go-gl/glfw/v3.3/glfw.PollEvents()
	/Users/magicaltux/go/pkg/mod/github.com/go-gl/glfw/v3.3/glfw@v0.0.0-20200625191551-73d3c3675aa3/window.go:949 +0x25
fyne.io/fyne/internal/driver/glfw.(*gLDriver).tryPollEvents(0xc000092140)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/loop.go:222 +0x45
fyne.io/fyne/internal/driver/glfw.(*gLDriver).runGL(0xc000092140)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/loop.go:102 +0x1fb
fyne.io/fyne/internal/driver/glfw.(*gLDriver).Run(0xc000092140)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/driver.go:71 +0x3a
fyne.io/fyne/app.(*fyneApp).Run(0xc0001ac000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/app/app.go:66 +0x95
main.main()

goroutine 6 [sleep]:
time.Sleep(0x22ecb25c00)
	/usr/local/go/src/runtime/time.go:188 +0xbf
fyne.io/fyne/internal/painter.svgCacheJanitor.func1()
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/painter/svg_cache.go:51 +0x109
sync.(*Once).doSlow(0x4a97ea0, 0xc000026390)
	/usr/local/go/src/sync/once.go:66 +0xec
sync.(*Once).Do(0x4a97ea0, 0xc000026390)
	/usr/local/go/src/sync/once.go:57 +0x45
created by fyne.io/fyne/internal/painter.svgCacheJanitor
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/painter/svg_cache.go:49 +0x9b

goroutine 7 [chan receive]:
fyne.io/fyne/app.newAppWithDriver.func1(0xc000094240, 0xc0001ac000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/app/app.go:126 +0x3d
created by fyne.io/fyne/app.newAppWithDriver
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/app/app.go:124 +0x1e8

goroutine 8 [syscall]:
syscall.syscall6(0x4399980, 0x6, 0x0, 0x0, 0xc000061688, 0xa, 0x4a97fa0, 0x0, 0x0, 0x0)
	/usr/local/go/src/runtime/sys_darwin.go:85 +0x2e
golang.org/x/sys/unix.kevent(0x6, 0x0, 0x0, 0xc000061688, 0xa, 0x4a97fa0, 0x0, 0x0, 0x0)
	/Users/magicaltux/go/pkg/mod/golang.org/x/sys@v0.0.0-20200930185726-fdedc70b468f/unix/zsyscall_darwin_amd64.go:292 +0xa6
golang.org/x/sys/unix.Kevent(0x6, 0x0, 0x0, 0x0, 0xc000061688, 0xa, 0xa, 0x4a97fa0, 0x0, 0x0, ...)
	/Users/magicaltux/go/pkg/mod/golang.org/x/sys@v0.0.0-20200930185726-fdedc70b468f/unix/syscall_bsd.go:428 +0x71
github.com/fsnotify/fsnotify.read(0x6, 0xc000061688, 0xa, 0xa, 0x4a97fa0, 0xc000061688, 0x0, 0xa, 0x0, 0x0)
	/Users/magicaltux/go/pkg/mod/github.com/fsnotify/fsnotify@v1.4.9/kqueue.go:511 +0x6e
github.com/fsnotify/fsnotify.(*Watcher).readEvents(0xc000088420)
	/Users/magicaltux/go/pkg/mod/github.com/fsnotify/fsnotify@v1.4.9/kqueue.go:274 +0x831
created by github.com/fsnotify/fsnotify.NewWatcher
	/Users/magicaltux/go/pkg/mod/github.com/fsnotify/fsnotify@v1.4.9/kqueue.go:62 +0x199

goroutine 9 [chan receive]:
fyne.io/fyne/app.watchFile.func1(0xc000088420, 0xc0000281c0, 0x38, 0xc000021440, 0xc000021450)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/app/settings_desktop.go:42 +0x5a
created by fyne.io/fyne/app.watchFile
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/app/settings_desktop.go:41 +0xec

goroutine 10 [runnable, locked to thread]:
fyne.io/fyne/internal/painter/gl.logError()
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/painter/gl/gl_core.go:259 +0x89
fyne.io/fyne/internal/painter/gl.(*glPainter).glClearBuffer(0xc000214090)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/painter/gl/gl_core.go:189 +0xeb
fyne.io/fyne/internal/painter/gl.(*glPainter).Clear(0xc000214090)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/painter/gl/painter.go:51 +0x2b
fyne.io/fyne/internal/driver/glfw.(*glCanvas).paint(0xc000128000, 0x62e, 0x3bc)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/canvas.go:412 +0x6b
fyne.io/fyne/internal/driver/glfw.(*gLDriver).repaintWindow.func1()
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/loop.go:164 +0x88
fyne.io/fyne/internal/driver/glfw.(*window).RunWithContext(0xc00011c000, 0xc000453e60)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/window.go:1091 +0x38
fyne.io/fyne/internal/driver/glfw.(*gLDriver).repaintWindow(0xc000092140, 0xc00011c000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/loop.go:155 +0x65
fyne.io/fyne/internal/driver/glfw.(*gLDriver).startDrawThread.func1(0xc000092140, 0xc0000943c0, 0xc000092190)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/loop.go:208 +0x234
created by fyne.io/fyne/internal/driver/glfw.(*gLDriver).startDrawThread
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/loop.go:182 +0xbd

goroutine 18 [chan receive]:
fyne.io/fyne/internal/driver/glfw.(*window).runEventQueue(0xc00011c000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/window.go:1151 +0xb0
created by fyne.io/fyne/internal/driver/glfw.(*gLDriver).createWindow.func1
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/window.go:1176 +0x10d

goroutine 19 [chan receive]:
fyne.io/fyne/internal/driver/glfw.(*glCanvas).setupThemeListener.func1(0xc000146000, 0xc000128000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/canvas.go:458 +0x47
created by fyne.io/fyne/internal/driver/glfw.(*glCanvas).setupThemeListener
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/driver/glfw/canvas.go:456 +0xa6

goroutine 20 [chan receive]:
fyne.io/fyne/widget.(*infProgressRenderer).infiniteProgressLoop(0xc00012e040)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:133 +0x45
created by fyne.io/fyne/widget.(*infProgressRenderer).start
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:113 +0xf3

goroutine 34 [chan receive]:
fyne.io/fyne/widget.(*infProgressRenderer).infiniteProgressLoop(0xc00021e000)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:133 +0x45
created by fyne.io/fyne/widget.(*infProgressRenderer).start
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:113 +0xf3

goroutine 44 [IO wait]:
internal/poll.runtime_pollWait(0x3439a9c8, 0x72, 0x45297e0)
	/usr/local/go/src/runtime/netpoll.go:220 +0x55
internal/poll.(*pollDesc).wait(0xc0017ae318, 0x72, 0x4529700, 0x475f6f0, 0x0)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc0017ae300, 0xc001c5c000, 0x2b58, 0x2b58, 0x0, 0x0, 0x0)
	/usr/local/go/src/internal/poll/fd_unix.go:159 +0x1a5
net.(*netFD).Read(0xc0017ae300, 0xc001c5c000, 0x2b58, 0x2b58, 0x203000, 0xc000e5b340, 0x2c)
	/usr/local/go/src/net/fd_posix.go:55 +0x4f
net.(*conn).Read(0xc000c48010, 0xc001c5c000, 0x2b58, 0x2b58, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:182 +0x8e
crypto/tls.(*atLeastReader).Read(0xc000d82020, 0xc001c5c000, 0x2b58, 0x2b58, 0x1413, 0xc000d9b4c0, 0xc00006f768)
	/usr/local/go/src/crypto/tls/conn.go:779 +0x62
bytes.(*Buffer).ReadFrom(0xc00191e600, 0x4528300, 0xc000d82020, 0x400eee5, 0x44373a0, 0x448db00)
	/usr/local/go/src/bytes/buffer.go:204 +0xb1
crypto/tls.(*Conn).readFromUntil(0xc00191e380, 0x5f5b118, 0xc000c48010, 0x5, 0xc000c48010, 0x8a9)
	/usr/local/go/src/crypto/tls/conn.go:801 +0xf3
crypto/tls.(*Conn).readRecordOrCCS(0xc00191e380, 0x0, 0x0, 0x10000c000092050)
	/usr/local/go/src/crypto/tls/conn.go:608 +0x115
crypto/tls.(*Conn).readRecord(...)
	/usr/local/go/src/crypto/tls/conn.go:576
crypto/tls.(*Conn).Read(0xc00191e380, 0xc001966008, 0x2, 0x2, 0x0, 0x0, 0x0)
	/usr/local/go/src/crypto/tls/conn.go:1252 +0x15f
io.ReadAtLeast(0x6a4157b8, 0xc00191e380, 0xc001966008, 0x2, 0x2, 0x2, 0x6a1844d0, 0x0, 0x8)
	/usr/local/go/src/io/io.go:314 +0x87
io.ReadFull(...)
	/usr/local/go/src/io/io.go:333
encoding/binary.Read(0x6a4157b8, 0xc00191e380, 0x4532920, 0x4a97de0, 0x440f9c0, 0xc000d82000, 0x0, 0x0)
	/usr/local/go/src/encoding/binary/binary.go:166 +0x4e5
[...]

goroutine 12 [chan receive]:
fyne.io/fyne/internal/painter.SvgCacheMonitorTheme.func1(0xc000094480)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/painter/svg_cache.go:103 +0x34
created by fyne.io/fyne/internal/painter.SvgCacheMonitorTheme
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/internal/painter/svg_cache.go:101 +0x9c

goroutine 39 [IO wait]:
internal/poll.runtime_pollWait(0x3439af08, 0x72, 0x45297e0)
	/usr/local/go/src/runtime/netpoll.go:220 +0x55
internal/poll.(*pollDesc).wait(0xc000432198, 0x72, 0x4529700, 0x475f6f0, 0x0)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc000432180, 0xc0004d6000, 0x97de, 0x97de, 0x0, 0x0, 0x0)
	/usr/local/go/src/internal/poll/fd_unix.go:159 +0x1a5
net.(*netFD).Read(0xc000432180, 0xc0004d6000, 0x97de, 0x97de, 0x203000, 0x41c8cdb, 0xc0000a5660)
	/usr/local/go/src/net/fd_posix.go:55 +0x4f
net.(*conn).Read(0xc0000100b8, 0xc0004d6000, 0x97de, 0x97de, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:182 +0x8e
crypto/tls.(*atLeastReader).Read(0xc000d48140, 0xc0004d6000, 0x97de, 0x97de, 0x560, 0x9695, 0xc000421730)
	/usr/local/go/src/crypto/tls/conn.go:779 +0x62
bytes.(*Buffer).ReadFrom(0xc0000a5780, 0x4528300, 0xc000d48140, 0x400eee5, 0x44373a0, 0x448db00)
	/usr/local/go/src/bytes/buffer.go:204 +0xb1
crypto/tls.(*Conn).readFromUntil(0xc0000a5500, 0x5f5b118, 0xc0000100b8, 0x5, 0xc0000100b8, 0x54f)
	/usr/local/go/src/crypto/tls/conn.go:801 +0xf3
crypto/tls.(*Conn).readRecordOrCCS(0xc0000a5500, 0x0, 0x0, 0xc000421d38)
	/usr/local/go/src/crypto/tls/conn.go:608 +0x115
crypto/tls.(*Conn).readRecord(...)
	/usr/local/go/src/crypto/tls/conn.go:576
crypto/tls.(*Conn).Read(0xc0000a5500, 0xc000e13000, 0x1000, 0x1000, 0x0, 0x0, 0x0)
	/usr/local/go/src/crypto/tls/conn.go:1252 +0x15f
bufio.(*Reader).Read(0xc00020fc80, 0xc000e14038, 0x9, 0x9, 0xc000421d38, 0x44ce900, 0x4243bcb)
	/usr/local/go/src/bufio/bufio.go:227 +0x222
io.ReadAtLeast(0x45281c0, 0xc00020fc80, 0xc000e14038, 0x9, 0x9, 0x9, 0xc000020070, 0x0, 0x45284a0)
	/usr/local/go/src/io/io.go:314 +0x87
io.ReadFull(...)
	/usr/local/go/src/io/io.go:333
net/http.http2readFrameHeader(0xc000e14038, 0x9, 0x9, 0x45281c0, 0xc00020fc80, 0x0, 0x0, 0xc000ddd4a0, 0x0)
	/usr/local/go/src/net/http/h2_bundle.go:1477 +0x89
net/http.(*http2Framer).ReadFrame(0xc000e14000, 0xc000ddd4a0, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/http/h2_bundle.go:1735 +0xa5
net/http.(*http2clientConnReadLoop).run(0xc000421fa8, 0x0, 0x0)
	/usr/local/go/src/net/http/h2_bundle.go:8240 +0x8d
net/http.(*http2ClientConn).readLoop(0xc00074c300)
	/usr/local/go/src/net/http/h2_bundle.go:8168 +0x6f
created by net/http.(*http2Transport).newClientConn
	/usr/local/go/src/net/http/h2_bundle.go:7173 +0x66e

goroutine 67 [chan receive]:
fyne.io/fyne/widget.(*infProgressRenderer).infiniteProgressLoop(0xc00049e100)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:133 +0x45
created by fyne.io/fyne/widget.(*infProgressRenderer).start
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:113 +0xf3

goroutine 63 [IO wait]:
internal/poll.runtime_pollWait(0x3439ac68, 0x72, 0x45297e0)
	/usr/local/go/src/runtime/netpoll.go:220 +0x55
internal/poll.(*pollDesc).wait(0xc00012aa98, 0x72, 0x4529700, 0x475f6f0, 0x0)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc00012aa80, 0xc0001ff000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/internal/poll/fd_unix.go:159 +0x1a5
net.(*netFD).Read(0xc00012aa80, 0xc0001ff000, 0xe0e, 0xe0e, 0x203000, 0xc000bbf7a8, 0x4011310)
	/usr/local/go/src/net/fd_posix.go:55 +0x4f
net.(*conn).Read(0xc000d02168, 0xc0001ff000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:182 +0x8e
crypto/tls.(*atLeastReader).Read(0xc000d7ee00, 0xc0001ff000, 0xe0e, 0xe0e, 0xc00020e8a0, 0xc000bc01d8, 0xc000bbf768)
	/usr/local/go/src/crypto/tls/conn.go:779 +0x62
bytes.(*Buffer).ReadFrom(0xc000d31400, 0x4528300, 0xc000d7ee00, 0x400eee5, 0x44373a0, 0x448db00)
	/usr/local/go/src/bytes/buffer.go:204 +0xb1
crypto/tls.(*Conn).readFromUntil(0xc000d31180, 0x5f5b118, 0xc000d02168, 0x5, 0xc000d02168, 0xc000bbf818)
	/usr/local/go/src/crypto/tls/conn.go:801 +0xf3
crypto/tls.(*Conn).readRecordOrCCS(0xc000d31180, 0x0, 0x0, 0x100000000000000)
	/usr/local/go/src/crypto/tls/conn.go:608 +0x115
crypto/tls.(*Conn).readRecord(...)
	/usr/local/go/src/crypto/tls/conn.go:576
crypto/tls.(*Conn).Read(0xc000d31180, 0xc001811678, 0x2, 0x2, 0x0, 0x0, 0x0)
	/usr/local/go/src/crypto/tls/conn.go:1252 +0x15f
io.ReadAtLeast(0x6a4157b8, 0xc000d31180, 0xc001811678, 0x2, 0x2, 0x2, 0x0, 0x0, 0x8)
	/usr/local/go/src/io/io.go:314 +0x87
io.ReadFull(...)
	/usr/local/go/src/io/io.go:333
encoding/binary.Read(0x6a4157b8, 0xc000d31180, 0x4532920, 0x4a97de0, 0x440f9c0, 0xc000d7ede0, 0x0, 0x0)
	/usr/local/go/src/encoding/binary/binary.go:166 +0x4e5
[...]

goroutine 70 [chan receive]:
fyne.io/fyne/widget.(*infProgressRenderer).infiniteProgressLoop(0xc00049fb40)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:133 +0x45
created by fyne.io/fyne/widget.(*infProgressRenderer).start
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:113 +0xf3

goroutine 86 [IO wait]:
internal/poll.runtime_pollWait(0x3439ab88, 0x72, 0x45297e0)
	/usr/local/go/src/runtime/netpoll.go:220 +0x55
internal/poll.(*pollDesc).wait(0xc000433c18, 0x72, 0x4529700, 0x475f6f0, 0x0)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc000433c00, 0xc000c85000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/internal/poll/fd_unix.go:159 +0x1a5
net.(*netFD).Read(0xc000433c00, 0xc000c85000, 0xe0e, 0xe0e, 0x203000, 0x41c8cdb, 0xc00191e160)
	/usr/local/go/src/net/fd_posix.go:55 +0x4f
net.(*conn).Read(0xc000c48008, 0xc000c85000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:182 +0x8e
crypto/tls.(*atLeastReader).Read(0xc000d823a0, 0xc000c85000, 0xe0e, 0xe0e, 0x19, 0xdef, 0xc000488768)
	/usr/local/go/src/crypto/tls/conn.go:779 +0x62
bytes.(*Buffer).ReadFrom(0xc00191e280, 0x4528300, 0xc000d823a0, 0x400eee5, 0x44373a0, 0x448db00)
	/usr/local/go/src/bytes/buffer.go:204 +0xb1
crypto/tls.(*Conn).readFromUntil(0xc00191e000, 0x5f5b118, 0xc000c48008, 0x5, 0xc000c48008, 0x8)
	/usr/local/go/src/crypto/tls/conn.go:801 +0xf3
crypto/tls.(*Conn).readRecordOrCCS(0xc00191e000, 0x0, 0x0, 0x10000c000092050)
	/usr/local/go/src/crypto/tls/conn.go:608 +0x115
crypto/tls.(*Conn).readRecord(...)
	/usr/local/go/src/crypto/tls/conn.go:576
crypto/tls.(*Conn).Read(0xc00191e000, 0xc001913340, 0x2, 0x2, 0x0, 0x0, 0x0)
	/usr/local/go/src/crypto/tls/conn.go:1252 +0x15f
io.ReadAtLeast(0x6a4157b8, 0xc00191e000, 0xc001913340, 0x2, 0x2, 0x2, 0x4, 0x0, 0x8)
	/usr/local/go/src/io/io.go:314 +0x87
io.ReadFull(...)
	/usr/local/go/src/io/io.go:333
encoding/binary.Read(0x6a4157b8, 0xc00191e000, 0x4532920, 0x4a97de0, 0x440f9c0, 0xc000d82380, 0x0, 0x0)
	/usr/local/go/src/encoding/binary/binary.go:166 +0x4e5
[...]

goroutine 26 [chan receive]:
fyne.io/fyne/widget.(*infProgressRenderer).infiniteProgressLoop(0xc00012ef00)
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:133 +0x45
created by fyne.io/fyne/widget.(*infProgressRenderer).start
	/Users/magicaltux/go/pkg/mod/fyne.io/fyne@v1.4.0/widget/progressbarinfinite.go:113 +0xf3

goroutine 31 [IO wait]:
internal/poll.runtime_pollWait(0x3439ad48, 0x72, 0x45297e0)
	/usr/local/go/src/runtime/netpoll.go:220 +0x55
internal/poll.(*pollDesc).wait(0xc000219f98, 0x72, 0x4529700, 0x475f6f0, 0x0)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc000219f80, 0xc001c2a000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/internal/poll/fd_unix.go:159 +0x1a5
net.(*netFD).Read(0xc000219f80, 0xc001c2a000, 0xe0e, 0xe0e, 0x203000, 0x41c8cdb, 0xc000e424e0)
	/usr/local/go/src/net/fd_posix.go:55 +0x4f
net.(*conn).Read(0xc000e40008, 0xc001c2a000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:182 +0x8e
crypto/tls.(*atLeastReader).Read(0xc000d52440, 0xc001c2a000, 0xe0e, 0xe0e, 0x39, 0xdef, 0xc00191a768)
	/usr/local/go/src/crypto/tls/conn.go:779 +0x62
bytes.(*Buffer).ReadFrom(0xc000e42600, 0x4528300, 0xc000d52440, 0x400eee5, 0x44373a0, 0x448db00)
	/usr/local/go/src/bytes/buffer.go:204 +0xb1
crypto/tls.(*Conn).readFromUntil(0xc000e42380, 0x5f5b118, 0xc000e40008, 0x5, 0xc000e40008, 0x28)
	/usr/local/go/src/crypto/tls/conn.go:801 +0xf3
crypto/tls.(*Conn).readRecordOrCCS(0xc000e42380, 0x0, 0x0, 0x10000c000092050)
	/usr/local/go/src/crypto/tls/conn.go:608 +0x115
crypto/tls.(*Conn).readRecord(...)
	/usr/local/go/src/crypto/tls/conn.go:576
crypto/tls.(*Conn).Read(0xc000e42380, 0xc0017ee09c, 0x2, 0x2, 0x0, 0x0, 0x0)
	/usr/local/go/src/crypto/tls/conn.go:1252 +0x15f
io.ReadAtLeast(0x6a4157b8, 0xc000e42380, 0xc0017ee09c, 0x2, 0x2, 0x2, 0x4, 0x0, 0x8)
	/usr/local/go/src/io/io.go:314 +0x87
io.ReadFull(...)
	/usr/local/go/src/io/io.go:333
encoding/binary.Read(0x6a4157b8, 0xc000e42380, 0x4532920, 0x4a97de0, 0x440f9c0, 0xc000d52420, 0x0, 0x0)
	/usr/local/go/src/encoding/binary/binary.go:166 +0x4e5
[...]

goroutine 104 [IO wait]:
internal/poll.runtime_pollWait(0x3439ae28, 0x72, 0x45297e0)
	/usr/local/go/src/runtime/netpoll.go:220 +0x55
internal/poll.(*pollDesc).wait(0xc000433b18, 0x72, 0x4529700, 0x475f6f0, 0x0)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc000433b00, 0xc0018ba000, 0x13abe, 0x13abe, 0x0, 0x0, 0x0)
	/usr/local/go/src/internal/poll/fd_unix.go:159 +0x1a5
net.(*netFD).Read(0xc000433b00, 0xc0018ba000, 0x13abe, 0x13abe, 0x203000, 0x41c8cdb, 0xc0000a4860)
	/usr/local/go/src/net/fd_posix.go:55 +0x4f
net.(*conn).Read(0xc000010358, 0xc0018ba000, 0x13abe, 0x13abe, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:182 +0x8e
crypto/tls.(*atLeastReader).Read(0xc000d7ece0, 0xc0018ba000, 0x13abe, 0x13abe, 0x4c, 0x13ab9, 0xc000073768)
	/usr/local/go/src/crypto/tls/conn.go:779 +0x62
bytes.(*Buffer).ReadFrom(0xc0000a4980, 0x4528300, 0xc000d7ece0, 0x400eee5, 0x44373a0, 0x448db00)
	/usr/local/go/src/bytes/buffer.go:204 +0xb1
crypto/tls.(*Conn).readFromUntil(0xc0000a4700, 0x5f5b118, 0xc000010358, 0x5, 0xc000010358, 0x3b)
	/usr/local/go/src/crypto/tls/conn.go:801 +0xf3
crypto/tls.(*Conn).readRecordOrCCS(0xc0000a4700, 0x0, 0x0, 0x1000000000001a0)
	/usr/local/go/src/crypto/tls/conn.go:608 +0x115
crypto/tls.(*Conn).readRecord(...)
	/usr/local/go/src/crypto/tls/conn.go:576
crypto/tls.(*Conn).Read(0xc0000a4700, 0xc001811634, 0x2, 0x2, 0x0, 0x0, 0x0)
	/usr/local/go/src/crypto/tls/conn.go:1252 +0x15f
io.ReadAtLeast(0x6a4157b8, 0xc0000a4700, 0xc001811634, 0x2, 0x2, 0x2, 0x1c, 0x1c, 0x8)
	/usr/local/go/src/io/io.go:314 +0x87
io.ReadFull(...)
	/usr/local/go/src/io/io.go:333
encoding/binary.Read(0x6a4157b8, 0xc0000a4700, 0x4532920, 0x4a97de0, 0x440f9c0, 0xc000d7ecc0, 0x4419580, 0xc001811628)
	/usr/local/go/src/encoding/binary/binary.go:166 +0x4e5
[...]

goroutine 30 [IO wait]:
internal/poll.runtime_pollWait(0x3439a8e8, 0x72, 0x45297e0)
	/usr/local/go/src/runtime/netpoll.go:220 +0x55
internal/poll.(*pollDesc).wait(0xc001914098, 0x72, 0x4529700, 0x475f6f0, 0x0)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:87 +0x45
internal/poll.(*pollDesc).waitRead(...)
	/usr/local/go/src/internal/poll/fd_poll_runtime.go:92
internal/poll.(*FD).Read(0xc001914080, 0xc000e5c000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/internal/poll/fd_unix.go:159 +0x1a5
net.(*netFD).Read(0xc001914080, 0xc000e5c000, 0xe0e, 0xe0e, 0x203000, 0x41c8cdb, 0xc000e42160)
	/usr/local/go/src/net/fd_posix.go:55 +0x4f
net.(*conn).Read(0xc000e40000, 0xc000e5c000, 0xe0e, 0xe0e, 0x0, 0x0, 0x0)
	/usr/local/go/src/net/net.go:182 +0x8e
crypto/tls.(*atLeastReader).Read(0xc000d523e0, 0xc000e5c000, 0xe0e, 0xe0e, 0x18, 0xdac, 0xc00041b768)
	/usr/local/go/src/crypto/tls/conn.go:779 +0x62
bytes.(*Buffer).ReadFrom(0xc000e42280, 0x4528300, 0xc000d523e0, 0x400eee5, 0x44373a0, 0x448db00)
	/usr/local/go/src/bytes/buffer.go:204 +0xb1
crypto/tls.(*Conn).readFromUntil(0xc000e42000, 0x5f5b118, 0xc000e40000, 0x5, 0xc000e40000, 0x7)
	/usr/local/go/src/crypto/tls/conn.go:801 +0xf3
crypto/tls.(*Conn).readRecordOrCCS(0xc000e42000, 0x0, 0x0, 0x100000000000000)
	/usr/local/go/src/crypto/tls/conn.go:608 +0x115
crypto/tls.(*Conn).readRecord(...)
	/usr/local/go/src/crypto/tls/conn.go:576
crypto/tls.(*Conn).Read(0xc000e42000, 0xc0017ee07c, 0x2, 0x2, 0x0, 0x0, 0x0)
	/usr/local/go/src/crypto/tls/conn.go:1252 +0x15f
io.ReadAtLeast(0x6a4157b8, 0xc000e42000, 0xc0017ee07c, 0x2, 0x2, 0x2, 0x4, 0x0, 0x8)
	/usr/local/go/src/io/io.go:314 +0x87
io.ReadFull(...)
	/usr/local/go/src/io/io.go:333
encoding/binary.Read(0x6a4157b8, 0xc000e42000, 0x4532920, 0x4a97de0, 0x440f9c0, 0xc000d523c0, 0x0, 0x0)
	/usr/local/go/src/encoding/binary/binary.go:166 +0x4e5
[...]

rax    0x0
rbx    0x5842520
rcx    0x0
rdx    0x0
rdi    0x0
rsi    0x1f08000c
rbp    0x700005e0df20
rsp    0x700005e0ded0
r8     0x0
r9     0x0
r10    0x0
r11    0x0
r12    0x5842520
r13    0x8032950
r14    0x5856560
r15    0x0
rip    0x7fff316ad09d
rflags 0x10206
cs     0x2b
fs     0x0
gs     0x0

@andydotxyz
Copy link
Member

Please let us know when you have reproduction steps. We've not heard of this before but there may be an issue there.

@andydotxyz andydotxyz added question A question has been asked bug Something isn't working labels Nov 15, 2020
@MagicalTux
Copy link
Contributor Author

MagicalTux commented Nov 15, 2020

The following example will trigger the crash:

package main

import (
        "time"

        "fyne.io/fyne"
        "fyne.io/fyne/app"
)

func main() {
        a := app.NewWithID("com.example.crash")
        w := a.NewWindow("Crash test")
        w.Resize(fyne.Size{Width: 320, Height: 200})
        w.CenterOnScreen()
        w.Show()

        go func() {
                time.Sleep(3*time.Second)
                w.Resize(fyne.Size{Width: 640, Height: 300})
                w.CenterOnScreen()
        }()

        a.Run()
}
Click to see output
$ go run crash.go
SIGILL: illegal instruction
PC=0x7fff2c7c009d m=4 sigcode=1
instruction bytes: 0xf 0xb 0x49 0x89 0xc6 0xeb 0x7 0x49 0x89 0xc6 0x84 0xdb 0x74 0x5 0xe8 0xb4

goroutine 0 [idle]:
runtime: unknown pc 0x7fff2c7c009d
stack: frame={sp:0x700006fd0ed0, fp:0x0} stack=[0x700006f52350,0x700006fd1f50)
0000700006fd0dd0:  00007fff69316800  0000000000000000 
0000700006fd0de0:  0000700006fd0e00  00007fff69229915 
0000700006fd0df0:  0000000000000000  0000000000000000 
0000700006fd0e00:  0000700006fd0ea0  00007fff6922ea2d 
0000700006fd0e10:  0000000000000000  000000001f08000c 
0000700006fd0e20:  fffffffffffffffb  0000000000000000 
0000700006fd0e30:  0000000000000000  00007fff69316800 
0000700006fd0e40:  0000000000000000  0000000000000000 
0000700006fd0e50:  0000000000000000  0000000000000000 
0000700006fd0e60:  0000000000000000  0000000000000000 
0000700006fd0e70:  0000000000000000  0000000000000000 
0000700006fd0e80:  0000000000000000  000000002d80a5e0 
0000700006fd0e90:  00007fff2cfb0a71  0000000005f6a770 
0000700006fd0ea0:  0000700006fd0ec0  00007fff6930fcea 
0000700006fd0eb0:  0000000000000000  000000002d80a5e0 
0000700006fd0ec0:  0000700006fd0f20  00007fff2c7c009d 
0000700006fd0ed0: <0000000000000000  000000002d8390a0 
0000700006fd0ee0:  0000000004f85c88  0000000000000002 
0000700006fd0ef0:  0000700006fd1608  000000002d80a5e0 
0000700006fd0f00:  000000002d80a5e0  0000000005f9e120 
0000700006fd0f10:  0000000005f6a770  0000000000000000 
0000700006fd0f20:  0000700006fd0f40  00000000042ca51a 
0000700006fd0f30:  000000002d80a5e0  0000700006fd0f88 
0000700006fd0f40:  0000700006fd0f50  00007fff2f19a80f 
0000700006fd0f50:  0000700006fd0f70  00007fff2f19a7a3 
0000700006fd0f60:  0000000005f6c160  0000000000000000 
0000700006fd0f70:  0000700006fd0ff0  00007fff2f19a718 
0000700006fd0f80:  0000000005f6c160  00007fff8f95c4c0 
0000700006fd0f90:  00000000c2000000  00007fff2f19a764 
0000700006fd0fa0:  00007fff86a19be0  0000000005f6c160 
0000700006fd0fb0:  0000000005f9e120  000000002d80a5e0 
0000700006fd0fc0:  0be7c79c30280090  0000700006fd1007 
runtime: unknown pc 0x7fff2c7c009d
stack: frame={sp:0x700006fd0ed0, fp:0x0} stack=[0x700006f52350,0x700006fd1f50)
0000700006fd0dd0:  00007fff69316800  0000000000000000 
0000700006fd0de0:  0000700006fd0e00  00007fff69229915 
0000700006fd0df0:  0000000000000000  0000000000000000 
0000700006fd0e00:  0000700006fd0ea0  00007fff6922ea2d 
0000700006fd0e10:  0000000000000000  000000001f08000c 
0000700006fd0e20:  fffffffffffffffb  0000000000000000 
0000700006fd0e30:  0000000000000000  00007fff69316800 
0000700006fd0e40:  0000000000000000  0000000000000000 
0000700006fd0e50:  0000000000000000  0000000000000000 
0000700006fd0e60:  0000000000000000  0000000000000000 
0000700006fd0e70:  0000000000000000  0000000000000000 
0000700006fd0e80:  0000000000000000  000000002d80a5e0 
0000700006fd0e90:  00007fff2cfb0a71  0000000005f6a770 
0000700006fd0ea0:  0000700006fd0ec0  00007fff6930fcea 
0000700006fd0eb0:  0000000000000000  000000002d80a5e0 
0000700006fd0ec0:  0000700006fd0f20  00007fff2c7c009d 
0000700006fd0ed0: <0000000000000000  000000002d8390a0 
0000700006fd0ee0:  0000000004f85c88  0000000000000002 
0000700006fd0ef0:  0000700006fd1608  000000002d80a5e0 
0000700006fd0f00:  000000002d80a5e0  0000000005f9e120 
0000700006fd0f10:  0000000005f6a770  0000000000000000 
0000700006fd0f20:  0000700006fd0f40  00000000042ca51a 
0000700006fd0f30:  000000002d80a5e0  0000700006fd0f88 
0000700006fd0f40:  0000700006fd0f50  00007fff2f19a80f 
0000700006fd0f50:  0000700006fd0f70  00007fff2f19a7a3 
0000700006fd0f60:  0000000005f6c160  0000000000000000 
0000700006fd0f70:  0000700006fd0ff0  00007fff2f19a718 
0000700006fd0f80:  0000000005f6c160  00007fff8f95c4c0 
0000700006fd0f90:  00000000c2000000  00007fff2f19a764 
0000700006fd0fa0:  00007fff86a19be0  0000000005f6c160 
0000700006fd0fb0:  0000000005f9e120  000000002d80a5e0 
0000700006fd0fc0:  0be7c79c30280090  0000700006fd1007 

goroutine 14 [syscall]:
runtime.cgocall(0x42d24a0, 0xc00004c6c0, 0xc00004c6d8)
	/usr/local/go/src/runtime/cgocall.go:133 +0x5b fp=0xc00004c690 sp=0xc00004c658 pc=0x400687b
fyne.io/fyne/vendor/github.com/go-gl/glfw/v3.3/glfw._Cfunc_glfwSetWindowPos(0x5f371b0, 0x19a00000240)
	_cgo_gotypes.go:2183 +0x45 fp=0xc00004c6c0 sp=0xc00004c690 pc=0x4282125
fyne.io/fyne/vendor/github.com/go-gl/glfw/v3.3/glfw.(*Window).SetPos.func1(0xc00009c000, 0x240, 0x19a)
	/Users/magicaltux/go/src/fyne.io/fyne/vendor/github.com/go-gl/glfw/v3.3/glfw/window.go:472 +0x67 fp=0xc00004c6f8 sp=0xc00004c6c0 pc=0x42882e7
fyne.io/fyne/vendor/github.com/go-gl/glfw/v3.3/glfw.(*Window).SetPos(0xc00009c000, 0x240, 0x19a)
	/Users/magicaltux/go/src/fyne.io/fyne/vendor/github.com/go-gl/glfw/v3.3/glfw/window.go:472 +0x3f fp=0xc00004c730 sp=0xc00004c6f8 pc=0x428641f
fyne.io/fyne/internal/driver/glfw.(*window).doCenterOnScreen(0xc00010cb60)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/window.go:148 +0x107 fp=0xc00004c788 sp=0xc00004c730 pc=0x4292d47
fyne.io/fyne/internal/driver/glfw.(*window).CenterOnScreen(0xc00010cb60)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/window.go:129 +0x4f fp=0xc00004c7a8 sp=0xc00004c788 pc=0x4292c2f
main.main.func1(0x43daf00, 0xc00010cb60)
	/Users/magicaltux/crash.go:20 +0x65 fp=0xc00004c7d0 sp=0xc00004c7a8 pc=0x42bd565
runtime.goexit()
	/usr/local/go/src/runtime/asm_amd64.s:1374 +0x1 fp=0xc00004c7d8 sp=0xc00004c7d0 pc=0x406bf61
created by main.main
	/Users/magicaltux/crash.go:17 +0xf4

goroutine 1 [select, locked to thread]:
fyne.io/fyne/internal/driver/glfw.(*gLDriver).runGL(0xc00007a140)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/loop.go:90 +0x1bf
fyne.io/fyne/internal/driver/glfw.(*gLDriver).Run(0xc00007a140)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/driver.go:71 +0x3a
fyne.io/fyne/app.(*fyneApp).Run(0xc000196000)
	/Users/magicaltux/go/src/fyne.io/fyne/app/app.go:66 +0x95
main.main()
	/Users/magicaltux/crash.go:23 +0x108

goroutine 6 [sleep]:
time.Sleep(0x22ecb25c00)
	/usr/local/go/src/runtime/time.go:188 +0xbf
fyne.io/fyne/internal/painter.svgCacheJanitor.func1()
	/Users/magicaltux/go/src/fyne.io/fyne/internal/painter/svg_cache.go:51 +0x109
sync.(*Once).doSlow(0x48b7b58, 0xc000018350)
	/usr/local/go/src/sync/once.go:66 +0xec
sync.(*Once).Do(0x48b7b58, 0xc000018350)
	/usr/local/go/src/sync/once.go:57 +0x45
created by fyne.io/fyne/internal/painter.svgCacheJanitor
	/Users/magicaltux/go/src/fyne.io/fyne/internal/painter/svg_cache.go:49 +0x9b

goroutine 7 [chan receive]:
fyne.io/fyne/app.newAppWithDriver.func1(0xc00007c240, 0xc000196000)
	/Users/magicaltux/go/src/fyne.io/fyne/app/app.go:126 +0x3d
created by fyne.io/fyne/app.newAppWithDriver
	/Users/magicaltux/go/src/fyne.io/fyne/app/app.go:124 +0x1e8

goroutine 8 [syscall]:
syscall.syscall6(0x42b5da0, 0x6, 0x0, 0x0, 0xc000051688, 0xa, 0x48b7c40, 0x0, 0x0, 0x0)
	/usr/local/go/src/runtime/sys_darwin.go:85 +0x2e
fyne.io/fyne/vendor/golang.org/x/sys/unix.kevent(0x6, 0x0, 0x0, 0xc000051688, 0xa, 0x48b7c40, 0x0, 0x0, 0x0)
	/Users/magicaltux/go/src/fyne.io/fyne/vendor/golang.org/x/sys/unix/zsyscall_darwin_amd64.go:292 +0xa6
fyne.io/fyne/vendor/golang.org/x/sys/unix.Kevent(0x6, 0x0, 0x0, 0x0, 0xc000051688, 0xa, 0xa, 0x48b7c40, 0x0, 0x0, ...)
	/Users/magicaltux/go/src/fyne.io/fyne/vendor/golang.org/x/sys/unix/syscall_bsd.go:413 +0x71
fyne.io/fyne/vendor/github.com/fsnotify/fsnotify.read(0x6, 0xc000051688, 0xa, 0xa, 0x48b7c40, 0xc000051688, 0x0, 0xa, 0x0, 0x0)
	/Users/magicaltux/go/src/fyne.io/fyne/vendor/github.com/fsnotify/fsnotify/kqueue.go:511 +0x6e
fyne.io/fyne/vendor/github.com/fsnotify/fsnotify.(*Watcher).readEvents(0xc000078420)
	/Users/magicaltux/go/src/fyne.io/fyne/vendor/github.com/fsnotify/fsnotify/kqueue.go:274 +0x831
created by fyne.io/fyne/vendor/github.com/fsnotify/fsnotify.NewWatcher
	/Users/magicaltux/go/src/fyne.io/fyne/vendor/github.com/fsnotify/fsnotify/kqueue.go:62 +0x199

goroutine 9 [chan receive]:
fyne.io/fyne/app.watchFile.func1(0xc000078420, 0xc00001a180, 0x38, 0xc0000133e0, 0xc0000133f0)
	/Users/magicaltux/go/src/fyne.io/fyne/app/settings_desktop.go:42 +0x5a
created by fyne.io/fyne/app.watchFile
	/Users/magicaltux/go/src/fyne.io/fyne/app/settings_desktop.go:41 +0xec

goroutine 10 [select, locked to thread]:
fyne.io/fyne/internal/driver/glfw.(*gLDriver).startDrawThread.func1(0xc00007a140, 0xc00007c3c0, 0xc00007a190)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/loop.go:186 +0x1ac
created by fyne.io/fyne/internal/driver/glfw.(*gLDriver).startDrawThread
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/loop.go:182 +0xbd

goroutine 11 [chan receive]:
fyne.io/fyne/internal/driver/glfw.(*window).runEventQueue(0xc00010cb60)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/window.go:1151 +0xb0
created by fyne.io/fyne/internal/driver/glfw.(*gLDriver).createWindow.func1
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/window.go:1176 +0x10d

goroutine 12 [chan receive]:
fyne.io/fyne/internal/driver/glfw.(*glCanvas).setupThemeListener.func1(0xc00007c420, 0xc00019c000)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/canvas.go:458 +0x47
created by fyne.io/fyne/internal/driver/glfw.(*glCanvas).setupThemeListener
	/Users/magicaltux/go/src/fyne.io/fyne/internal/driver/glfw/canvas.go:456 +0xa6

goroutine 15 [chan receive]:
fyne.io/fyne/internal/painter.SvgCacheMonitorTheme.func1(0xc00007c4e0)
	/Users/magicaltux/go/src/fyne.io/fyne/internal/painter/svg_cache.go:103 +0x34
created by fyne.io/fyne/internal/painter.SvgCacheMonitorTheme
	/Users/magicaltux/go/src/fyne.io/fyne/internal/painter/svg_cache.go:101 +0x9c

rax    0x0
rbx    0x2d80a5e0
rcx    0x0
rdx    0x0
rdi    0x0
rsi    0x1f08000c
rbp    0x700006fd0f20
rsp    0x700006fd0ed0
r8     0x0
r9     0x0
r10    0x0
r11    0x0
r12    0x2d80a5e0
r13    0x4f85c80
r14    0x5f6a770
r15    0x0
rip    0x7fff2c7c009d
rflags 0x10206
cs     0x2b
fs     0x0
gs     0x0
exit status 2

@MagicalTux MagicalTux changed the title CenterOnScreen causes crash on MacOS in some cases CenterOnScreen causes crash on MacOS when called more than once Nov 15, 2020
andydotxyz added a commit that referenced this issue Nov 16, 2020
@andydotxyz
Copy link
Member

On release/v1.4.x branch so it can be tested for v1.4.1 when released this week

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working question A question has been asked
Projects
None yet
Development

No branches or pull requests

2 participants