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

Unable to raise rows or columns number in Table #126

Open
fnicastri opened this issue Apr 29, 2024 · 1 comment
Open

Unable to raise rows or columns number in Table #126

fnicastri opened this issue Apr 29, 2024 · 1 comment

Comments

@fnicastri
Copy link

go-fltk version: main branch
system: MacOS 14.4.1
arch: aarm64

When trying to raise the number of rows in go-fltk/examples/7GUIs/cells/main.go
more than 510 or when try to raise the number of columns more than 132
i get:

*** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'nextEventMatchingMask should only be called from the Main Thread!'
*** First throw call stack:
(
	0   CoreFoundation                      0x0000000197feaccc __exceptionPreprocess + 176
	1   libobjc.A.dylib                     0x0000000197ad2788 objc_exception_throw + 60
	2   AppKit                              0x000000019bfbf748 -[NSApplication(NSEventRouting) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 3096
	3   cells                               0x00000001050a3c2c _ZN22Fl_Cocoa_Screen_Driver21open_display_platformEv + 608
	4   cells                               0x000000010504f408 _ZN16Fl_Screen_Driver12open_displayEv + 40
	5   cells                               0x00000001050a6c04 _ZN22Fl_Cocoa_Window_Driver10makeWindowEv + 76
	6   cells                               0x0000000104f3609c cells + 417948
)
libc++abi: terminating due to uncaught exception of type NSException
SIGABRT: abort
PC=0x197e5ea60 m=4 sigcode=0
signal arrived during cgo execution

goroutine 1 gp=0x140000021c0 m=4 mp=0x1400005fb08 [syscall]:
runtime.cgocall(0x104f969a0, 0x140004c6ec8)
	/opt/local/lib/go/src/runtime/cgocall.go:157 +0x44 fp=0x140004c6e90 sp=0x140004c6e50 pc=0x104ed4a74
github.com/pwiecz/go-fltk._Cfunc_go_fltk_Window_show(0x153004280)
	_cgo_gotypes.go:6439 +0x30 fp=0x140004c6ec0 sp=0x140004c6e90 pc=0x104f85bd0
main.main.(*Window).Show.func2(0x140000de040?)
	/Users/frank/projects/go-fltk/window.go:28 +0x4c fp=0x140004c6f00 sp=0x140004c6ec0 pc=0x104f8d8ec
github.com/pwiecz/go-fltk.(*Window).Show(...)
	/Users/frank/projects/go-fltk/window.go:28
main.main()
	/Users/frank/projects/go-fltk/examples/7GUIs/cells/main.go:46 +0x88 fp=0x140004c6f40 sp=0x140004c6f00 pc=0x104f8d878
runtime.main()
	/opt/local/lib/go/src/runtime/proc.go:271 +0x28c fp=0x140004c6fd0 sp=0x140004c6f40 pc=0x104f06dbc
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140004c6fd0 sp=0x140004c6fd0 pc=0x104f362a4

goroutine 2 gp=0x14000002c40 m=nil [force gc (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000058f90 sp=0x14000058f70 pc=0x104f071e8
runtime.goparkunlock(...)
	/opt/local/lib/go/src/runtime/proc.go:408
runtime.forcegchelper()
	/opt/local/lib/go/src/runtime/proc.go:326 +0xb8 fp=0x14000058fd0 sp=0x14000058f90 pc=0x104f07078
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x14000058fd0 sp=0x14000058fd0 pc=0x104f362a4
created by runtime.init.6 in goroutine 1
	/opt/local/lib/go/src/runtime/proc.go:314 +0x24

goroutine 18 gp=0x14000094380 m=nil [GC sweep wait]:
runtime.gopark(0x1?, 0x0?, 0x0?, 0x0?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000054760 sp=0x14000054740 pc=0x104f071e8
runtime.goparkunlock(...)
	/opt/local/lib/go/src/runtime/proc.go:408
runtime.bgsweep(0x140000a0000)
	/opt/local/lib/go/src/runtime/mgcsweep.go:318 +0x108 fp=0x140000547b0 sp=0x14000054760 pc=0x104ef3cb8
runtime.gcenable.gowrap1()
	/opt/local/lib/go/src/runtime/mgc.go:203 +0x28 fp=0x140000547d0 sp=0x140000547b0 pc=0x104ee80c8
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140000547d0 sp=0x140000547d0 pc=0x104f362a4
created by runtime.gcenable in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:203 +0x6c

goroutine 19 gp=0x14000094540 m=nil [GC scavenge wait]:
runtime.gopark(0x10000?, 0x1050daab0?, 0x0?, 0x0?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000054f60 sp=0x14000054f40 pc=0x104f071e8
runtime.goparkunlock(...)
	/opt/local/lib/go/src/runtime/proc.go:408
runtime.(*scavengerState).park(0x1051e0fe0)
	/opt/local/lib/go/src/runtime/mgcscavenge.go:425 +0x5c fp=0x14000054f90 sp=0x14000054f60 pc=0x104ef163c
runtime.bgscavenge(0x140000a0000)
	/opt/local/lib/go/src/runtime/mgcscavenge.go:658 +0xac fp=0x14000054fb0 sp=0x14000054f90 pc=0x104ef1bfc
runtime.gcenable.gowrap2()
	/opt/local/lib/go/src/runtime/mgc.go:204 +0x28 fp=0x14000054fd0 sp=0x14000054fb0 pc=0x104ee8068
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x14000054fd0 sp=0x14000054fd0 pc=0x104f362a4
created by runtime.gcenable in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:204 +0xac

goroutine 20 gp=0x14000094a80 m=nil [finalizer wait]:
runtime.gopark(0x0?, 0x0?, 0x47?, 0x0?, 0x104f17848?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000058580 sp=0x14000058560 pc=0x104f071e8
runtime.runfinq()
	/opt/local/lib/go/src/runtime/mfinal.go:194 +0x108 fp=0x140000587d0 sp=0x14000058580 pc=0x104ee7198
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140000587d0 sp=0x140000587d0 pc=0x104f362a4
created by runtime.createfing in goroutine 1
	/opt/local/lib/go/src/runtime/mfinal.go:164 +0x80

goroutine 21 gp=0x14000094c40 m=nil [GC worker (idle)]:
runtime.gopark(0x0?, 0x0?, 0x0?, 0x0?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000055730 sp=0x14000055710 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x140000557d0 sp=0x14000055730 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140000557d0 sp=0x140000557d0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

goroutine 22 gp=0x14000094e00 m=nil [GC worker (idle)]:
runtime.gopark(0x242cfc0e38b8?, 0x0?, 0x0?, 0x0?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000055f30 sp=0x14000055f10 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x14000055fd0 sp=0x14000055f30 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x14000055fd0 sp=0x14000055fd0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

goroutine 34 gp=0x140004b6000 m=nil [GC worker (idle)]:
runtime.gopark(0x242cfc101fb3?, 0x1?, 0x87?, 0x29?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x140004bc730 sp=0x140004bc710 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x140004bc7d0 sp=0x140004bc730 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140004bc7d0 sp=0x140004bc7d0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

goroutine 23 gp=0x14000094fc0 m=nil [GC worker (idle)]:
runtime.gopark(0x242cfc0e3d1d?, 0x1400001a100?, 0x1a?, 0xa?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000056730 sp=0x14000056710 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x140000567d0 sp=0x14000056730 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140000567d0 sp=0x140000567d0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

goroutine 3 gp=0x14000003500 m=nil [GC worker (idle)]:
runtime.gopark(0x242cfc132ded?, 0x3?, 0x8c?, 0xb2?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000059730 sp=0x14000059710 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x140000597d0 sp=0x14000059730 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140000597d0 sp=0x140000597d0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

goroutine 35 gp=0x140004b61c0 m=nil [GC worker (idle)]:
runtime.gopark(0x242cfc0d814a?, 0x0?, 0x0?, 0x0?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x140004bcf30 sp=0x140004bcf10 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x140004bcfd0 sp=0x140004bcf30 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140004bcfd0 sp=0x140004bcfd0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

goroutine 24 gp=0x14000095500 m=nil [GC worker (idle)]:
runtime.gopark(0x242cfc0ef84a?, 0x3?, 0x11?, 0x13?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000056f30 sp=0x14000056f10 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x14000056fd0 sp=0x14000056f30 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x14000056fd0 sp=0x14000056fd0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

goroutine 25 gp=0x140000956c0 m=nil [GC worker (idle)]:
runtime.gopark(0x10524bbe0?, 0x1?, 0x19?, 0x5d?, 0x0?)
	/opt/local/lib/go/src/runtime/proc.go:402 +0xc8 fp=0x14000057730 sp=0x14000057710 pc=0x104f071e8
runtime.gcBgMarkWorker()
	/opt/local/lib/go/src/runtime/mgc.go:1310 +0xd8 fp=0x140000577d0 sp=0x14000057730 pc=0x104ee9f58
runtime.goexit({})
	/opt/local/lib/go/src/runtime/asm_arm64.s:1222 +0x4 fp=0x140000577d0 sp=0x140000577d0 pc=0x104f362a4
created by runtime.gcBgMarkStartWorkers in goroutine 1
	/opt/local/lib/go/src/runtime/mgc.go:1234 +0x28

r0      0x0
r1      0x0
r2      0x0
r3      0x0
r4      0x197e522cb
r5      0x16c859ba0
r6      0x6e
r7      0x0
r8      0x165fbd7d8662cee0
r9      0x165fbd7ceae77ee0
r10     0x200
r11     0xb
r12     0x0
r13     0x1ff800
r14     0x7fb
r15     0xa301081b
r16     0x148
r17     0x209f0ec30
r18     0x0
r19     0x6
r20     0x16c85b000
r21     0x2103
r22     0x16c85b0e0
r23     0xffffffffffffffff
r24     0x0
r25     0x15200f118
r26     0xffffffffffffffff
r27     0x1051c3000
r28     0x1
r29     0x16c859b10
lr      0x197e96c20
sp      0x16c859af0
pc      0x197e5ea60
fault   0x197e5ea60
exit status 2

Apparently a similar issue *** Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'nextEventMatchingMask should only be called from the Main Thread!'
was resolved in the package fltk-rs some time ago.
fltk-rs/fltk-rs#726

@fnicastri
Copy link
Author

I'm back on that project.
I would like to understand if there is a solution,
or at least if the source of the issue is known.

What I'm writing is a simple viewer for arrow/parquet files, an internal tool.
We already have some go code that operate on the same data, would be ideal to just expand it to have the viewer.
I already explored fltk-rs and it is working but I would like to avoid to add a different language just for this small tool.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant