diamondburned / gtkcord3

A Gtk3 Discord client in Golang
GNU General Public License v3.0
628 stars 28 forks source link

Panic on mention #116

Closed Tryware closed 2 years ago

Tryware commented 2 years ago

Whenever i mention something, it crashes.

here's the panic message:

### panic: runtime error: index out of range [1] with length 0 [recovered]
    panic: closure error: unexpected panic caught: runtime error: index out of range [1] with length 0

Closure added at:
    github.com/diamondburned/gtkcord3/gtkcord/components/message.NewInput at github.com/diamondburned/gtkcord3/gtkcord/components/message/input.go:71
    github.com/diamondburned/gtkcord3/gtkcord/components/message.NewMessages at github.com/diamondburned/gtkcord3/gtkcord/components/message/messages.go:77
    github.com/diamondburned/gtkcord3/gtkcord.(*Application).Ready at github.com/diamondburned/gtkcord3/gtkcord/gtkcord.go:257

goroutine 1 [running]:
github.com/diamondburned/gotk4/pkg/core/closure.(*FuncStack).Panicf(0xc00078ab10, {0x562404be2182, 0x1b}, {0xc0004e4fe8, 0x1, 0x1})
    github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/core/closure/funcstack.go:98 +0x8fe
github.com/diamondburned/gotk4/pkg/core/closure.(*FuncStack).TryRepanic(0x0)
    github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/core/closure/funcstack.go:116 +0xc7
panic({0x56240527bac0, 0xc0004aa1b0})
    runtime/panic.go:1038 +0x215
github.com/diamondburned/gtkcord3/gtkcord/components/message/completer.(*State).applyCompletion(0xc00071c480)
    github.com/diamondburned/gtkcord3/gtkcord/components/message/completer/completer.go:269 +0x19f
github.com/diamondburned/gtkcord3/gtkcord/components/message/completer.(*State).KeyDown(0xc00071c480, 0x0, 0x8)
    github.com/diamondburned/gtkcord3/gtkcord/components/message/completer/completer.go:133 +0xae
github.com/diamondburned/gtkcord3/gtkcord/components/message.(*Input).keyDown(0xc000351560, 0x1)
    github.com/diamondburned/gtkcord3/gtkcord/components/message/input.go:222 +0xa5
reflect.Value.call({0x562405196e40, 0xc0006f7140, 0x562405213400}, {0x562404b8b7e8, 0x4}, {0xc0004e84c8, 0x1, 0x562403049845})
    reflect/value.go:543 +0x814
reflect.Value.Call({0x562405196e40, 0xc0006f7140, 0x5624052dde40}, {0xc0004e84c8, 0x1, 0x1})
    reflect/value.go:339 +0xc5
github.com/diamondburned/gotk4/pkg/core/glib.goMarshal(0x56240926b6f0, 0x7ffd2d0260d0, 0x2, 0x7ffd2d026130, 0x562402f53ba6, 0x56240973d2a0)
    github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/core/glib/glib.go:260 +0x7c5
github.com/diamondburned/gotk4/pkg/gio/v2._Cfunc_g_application_run(0x56240910c210, 0x1, 0x5624091936d0)
    _cgo_gotypes.go:3304 +0x50
github.com/diamondburned/gotk4/pkg/gio/v2.(*Application).Run.func3(0x5624091936d0, 0x258ae0, 0x562404b56880)
    github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/gio/v2/gapplication.go:943 +0x71
github.com/diamondburned/gotk4/pkg/gio/v2.(*Application).Run(0xc000590330, {0xc0000201e0, 0x562404b9bc6f, 0x1})
    github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/gio/v2/gapplication.go:943 +0x1be
main.main()
    github.com/diamondburned/gtkcord3/main.go:74 +0x165
ghost commented 2 years ago

this also happens with emotes idk why panic: runtime error: index out of range [0] with length 0

goroutine 1 [running]: github.com/diamondburned/gtkcord3/gtkcord/components/message/completer.(State).applyCompletion(0xc000264300) /home/aldair/gtkcord3/gtkcord/components/message/completer/completer.go:269 +0x19f github.com/diamondburned/gotk4/pkg/core/glib.goMarshal(0x807f840, 0x0, 0x2, 0x7ffe9a93e9b0, 0x1a38d06, 0x7f14fb0) /home/aldair/go/pkg/mod/github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/core/glib/glib.go:191 +0x93 github.com/diamondburned/gotk4/pkg/gio/v2._Cfunc_g_application_run(0x7464210, 0x1, 0x74e97b0) _cgo_gotypes.go:3305 +0x4c github.com/diamondburned/gotk4/pkg/gio/v2.(Application).Run.func3(0x74e97b0, 0x21c80, 0x36163b0) /home/aldair/go/pkg/mod/github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/gio/v2/gapplication.go:943 +0x71 github.com/diamondburned/gotk4/pkg/gio/v2.(*Application).Run(0xc0004aa258, {0xc0000981c0, 0x3a88d37, 0x1}) /home/aldair/go/pkg/mod/github.com/diamondburned/gotk4/pkg@v0.0.0-20211029022411-ad571a40956f/gio/v2/gapplication.go:943 +0x1be main.main() /home/aldair/gtkcord3/main.go:74 +0x165

diamondburned commented 2 years ago

Fixed in 6f1ec16.