xLightsSequencer / xLights

xLights is a sequencer for Lights. xLights has usb and E1.31 drivers. You can create sequences in this object oriented program. You can create playlists, schedule them, test your hardware, convert between different sequencers.
GNU General Public License v3.0
549 stars 208 forks source link

Nightly crashes when trying to load a sequence #4562

Closed kevinsaucier closed 4 months ago

kevinsaucier commented 4 months ago

Just downloaded and installed the latest nightly (2024/05/13). I was working on a previous nightly (from Thursday, maybe) and it was working fine. Needed to reboot my computer so figured I'd update my xLights. Installed over the top of the old nightly and opened it up. It opens fine but, when trying to load the sequence I was working on, it crashed (I can see the crash window outline come up but it doesn't populate and then the program is gone). Tried again, same issue.

Full uninstall/reinstall (which is painful because it apparently removes the registry entries - that should be an option wink wink). Tried to open the sequence. Same issue. Tried a different sequence. Same issue. Tried a blank sequence. Same issue. Seems to crash as soon as it tries to load the model list. Musical/Animation. Doesn't matter. 40fps/20fps. Doesn't matter. 'All Models' or a view when creating the sequence. Doesn't matter.

It's not creating a dump file so I'm not sure how else I can help to troubleshoot. Guess it could be just me but figured I'd note it since it's probably not.

On a related note........is it possible to get a previous 'nightly' EXE or does Github only store the latest one? Of course, I deleted the previous downloads and I only keep one copy of the nightly installed. since it usually works well enough. 🤦‍♂️

cybercop23 commented 4 months ago

You may need to be logged in to see the Assets... Try this anc let us know if still and issue or user error... :) https://github.com/xLightsSequencer/xLights/actions/workflows/win_nightly.yml

kevinsaucier commented 4 months ago

LOL, thanks. Grabbed #900 from here - https://github.com/xLightsSequencer/xLights/actions/runs/9048978743

Installed and opened my sequence no problem. Went back and installed the latest nightly over the top and back to crashing. Debug package attached.

xLightsProblem.zip

AzGilrock commented 4 months ago

Well all we have there is the show folder layout. I can open that and create a new sequence just fine. I'm on a Mac though.

kevinsaucier commented 4 months ago

Well all we have there is the show folder layout. I can open that and create a new sequence just fine. I'm on a Mac though.

Yup, that's all it takes to crash. It's not a specific sequence, just creating a new sequence does it. Seems to happen as soon as it tries to load the list of models but it's hard to tell since the whole app just disappears.

derwin12 commented 4 months ago

Same here .. downloaded nightly. Open sequence .. count to about 5 and poof it just closes out. WIndows - my layout.

kevinsaucier commented 4 months ago

Same here .. downloaded nightly. Open sequence .. count to about 5 and poof it just closes out. WIndows - my layout.

Hooray! It's not just me! No user error here @cybercop23 ! 🤣

derwin12 commented 4 months ago

This is repeatable .. every time I open a sequence with this Nightly.. And now I cant open xlights at all :-(

2024-05-13 20:48:42,464 4468 log_base [CRIT] xLights version 2024.10.1 64bit
Time: 2024-05-13T20:48:40
<email>darylerwin+betatesting@gmail.com</email>
Context address 0x00007ff6b43e9377
Exception: ACCESS_VIOLATION
Structured exception at 0x00007ff6b43e9377
Crashed Thread ID: 0000004468 (Main Thread)

Walking from an exception.
[01]    ADDR:0x00007ff6b43e9377 HMODULE:0x00007ff6b4150000  00000000002986a0    MovingHeadPanel.obj ?ValidateWindow@MovingHeadPanel@@UEAAXXZ@45417 
[02]    ADDR:0x00007ff6b4eb83a4 HMODULE:0x00007ff6b4150000  0000000000d68350    wxbase33u:appbase.obj   ?CallEventHandler@wxAppConsoleBase@@UEBAXPEAVwxEvtHandler@@AEAVwxEventFunctor@@AEAVwxEvent@@@Z@B14444 
[03]    ADDR:0x00007ff6b4ead3ff HMODULE:0x00007ff6b4150000  0000000000d5d3b0    wxbase33u:event.obj ?ProcessEventIfMatchesId@wxEvtHandler@@SA_NAEBUwxEventTableEntryBase@@PEAV1@AEAVwxEvent@@@Z@B0949F 
[04]    ADDR:0x00007ff6b4eadf4b HMODULE:0x00007ff6b4150000  0000000000d5ded0    wxbase33u:event.obj ?SearchDynamicEventTable@wxEvtHandler@@QEAA_NAEAVwxEvent@@@Z@B09FEB 
[05]    ADDR:0x00007ff6b4eae251 HMODULE:0x00007ff6b4150000  0000000000d5e220    wxbase33u:event.obj ?TryBeforeAndHere@wxEvtHandler@@IEAA_NAEAVwxEvent@@@Z@B0A2F1 
[06]    ADDR:0x00007ff6b4ead32a HMODULE:0x00007ff6b4150000  0000000000d5d270    wxbase33u:event.obj ?ProcessEvent@wxEvtHandler@@UEAA_NAEAVwxEvent@@@Z@B093CA 
[07]    ADDR:0x00007ff6b4ff6c2e HMODULE:0x00007ff6b4150000  0000000000ea6b70    wxmsw33u_core:wincmn.obj    ?TryAfter@wxWindowBase@@MEAA_NAEAVwxEvent@@@Z@149BE 
[08]    ADDR:0x00007ff6b4ead37c HMODULE:0x00007ff6b4150000  0000000000d5d270    wxbase33u:event.obj ?ProcessEvent@wxEvtHandler@@UEAA_NAEAVwxEvent@@@Z@B0941C 
[09]    ADDR:0x00007ff6b4ff6c2e HMODULE:0x00007ff6b4150000  0000000000ea6b70    wxmsw33u_core:wincmn.obj    ?TryAfter@wxWindowBase@@MEAA_NAEAVwxEvent@@@Z@149BE 
[10]    ADDR:0x00007ff6b4ead37c HMODULE:0x00007ff6b4150000  0000000000d5d270    wxbase33u:event.obj ?ProcessEvent@wxEvtHandler@@UEAA_NAEAVwxEvent@@@Z@B0941C 
derwin12 commented 4 months ago

image

image

image

derwin12 commented 4 months ago

A bit of a guess here but on bootup.. GetActiveModels() returns nothing.. the models.front() returns nothing.

    auto models = GetActiveModels();
    bool single_model = models.size() == 1;

    // if single model make sure the effect setting is on correct head...if not move it
    auto model = models.front();

I see this .. perhaps it needs to be higher?

    // Set current timing track in Dimmer window
    if (model == nullptr) return;
derwin12 commented 4 months ago

This gets me by .. ( I dont have moving heads in this layout) btw bool single_model = models.size() == 1 << is that ANY 1 model or do you mean if you only have 1 moving head model? image

AzGilrock commented 4 months ago

Thanks for tracking that down. I see what happened. I moved that "auto model = models.front();" line outside the if (single_model) section so that I could access it lower for the timing track. Well the single model flag was preventing it from executing when the count was zero. I pushed your fix in. Just not sure why it wasn't crashing on mine. That's what is frustrating when the different OS's react differently.