foxnne / pixi

Pixel art editor made with Zig.
https://foxnne.github.io/pixi/
MIT License
738 stars 23 forks source link

panic during changing pencil color (after running pixi for >1h) #50

Open slimsag opened 5 months ago

slimsag commented 5 months ago

I was running pixi good and solid for about an hour, switched to my other screen and away from pixi, then returned and everything was fine. Opened the pencil color to begin to type in a hex code, then got this crash:

I haven't been able to reproduce it otherwise - so maybe just due to how long I was running it (unsure).

(base) slimsag@dev pixi % zig build run -Duse_sysgpu=true
info(mach): found Metal backend on Discrete GPU adapter: Apple M3 Max,

thread 39498 panic: index out of bounds: index 11268, len 11266
/Users/slimsag/.cache/zig/p/1220d2e9b74878399872ad1a77b8f20c8dcf3ae07e345e3ef4f8d5a45ce8a23eaba3/src/imgui_mach.zig:495:72: 0x1058f9ccf in render (pixi)
                bd.queue.writeBuffer(fr.index_buffer.?, 0, fr.indices.?[0..ib_write_size]);
                                                                       ^
/Users/slimsag/.cache/zig/p/1220d2e9b74878399872ad1a77b8f20c8dcf3ae07e345e3ef4f8d5a45ce8a23eaba3/src/imgui_mach.zig:61:41: 0x1058fbe87 in renderDrawData (pixi)
    try BackendRendererData.get().render(draw_data, pass_encoder);
                                        ^
/Volumes/data/foxnne/upstream/pixi/src/pixi.zig:364:42: 0x1058fcfe7 in update (pixi)
                imgui_mach.renderDrawData(imgui.getDrawData().?, pass) catch {};
                                         ^
/Users/slimsag/.cache/zig/p/1220ba5472217ef81455b19d540967049bbfaf768b30d04534865707e907ee1c4aec/src/core/platform/glfw/Core.zig:582:23: 0x10581470f in appUpdateThread__anon_89232 (pixi)
        if (app.update() catch unreachable) {
                      ^
/Users/slimsag/zig/0.12.0-dev.3180+83e578a18/files/lib/std/Thread.zig:406:13: 0x10571da0f in callFn__anon_86419 (pixi)
            @call(.auto, f, args);
            ^
/Users/slimsag/zig/0.12.0-dev.3180+83e578a18/files/lib/std/Thread.zig:674:30: 0x1056955c3 in entryFn (pixi)
                return callFn(f, args_ptr.*);
                             ^
???:?:?: 0x187b8d033 in ??? (libsystem_pthread.dylib)
???:?:?: 0xce23800187b87e3b in ??? (???)
run
└─ run pixi failure
error: the following command terminated unexpectedly:
/Volumes/data/foxnne/upstream/pixi/zig-out/bin/pixi
foxnne commented 5 months ago

Interesting! I've been having pixi running for long long periods of time (over a day) and haven't encountered this crash. Might be hard to track down. Thanks!