Jump to content

Photo

[2.53][2.55] ZQuest crashes on closing MIDI "Select Music" win


  • Please log in to reply
3 replies to this topic

#1 Lüt

Lüt

    Germanize

  • Members
  • Real Name:Steve
  • Location:Chicago

Posted 31 October 2018 - 02:38 AM

Under certain circumstances, ZQuest will crash when closing the "Select Music" window if MIDI files are loaded into a quest.

Reference Files (created in 2.50.2):
Quest With MIDI (1 slot loaded)
Quest With MIDI (2 slots loaded)

Functional in:
2.50.2, 2.50.3 RC1 & RC2.

Broken in:
2.53.0 B1 - B24, 2.55 Prelim 16 & 16.1 Expo Builds.

As of the switch away from the 2.50.3 RCs and toward the very first 2.53.0 beta, if you load a quest that has MIDI files in it, go to Quest -> Audio -> MIDIs to open the "Select Music" window, then exit that window either by clicking "Done" or pressing Esc, ZQuest will immediately crash.

I initially thought that maybe something went wrong while loading or editing the MIDI files in the 2.53 builds, but no, the files simply have to be in the quest, and all it takes to crash ZQuest is closing the "Select Music" window, even if you haven't done anything more than open it.

However, there are conditions.

First: it seems that 2 or more MIDI files need to be loaded for ZQuest to crash - which basically means that any quest by anybody wanting custom music will crash. When I load the reference quest with 2 MIDI slots, then open and close the "Select Music" window, this is the Windows dialogue I get:

zq-questwithmidi-crash-01.png

And when I "click here," this is the further information provided:

zq-questwithmidi-crash-02.png

Clicking again gives an absolutely massive text dump, which I can provide if necessary.

Now here's an odd variation: when I load the reference quest with 1 MIDI slot, then open and close the "Select Music" window, I only get visual glitches.

More than that, they vary depending on whether "Use Static for Invalid Data" is enabled.

With static disabled, ZQuest looks like this...
ZQuest, no static, normal
...but after opening and closing "Select Music," it looks like this:
ZQuest, no static, glitched
Now with static enabled, ZQuest looks like this...
ZQuest, static, normal
...but after opening and closing "Select Music," it looks like this:
ZQuest, static, glitched
The program options under the misplaced static block remain functional, so the glitch is strictly visual. But in both cases, the Favorite Combos window is rendered inaccessible.

But wait, there's more!

Second condition: ZQuest only crashes if "Use Static for Invalid Data" is enabled.

With static disabled, quest files with 2 or more MIDIs loaded will only generate the Favorite Combos window removal glitch as noted above, instead of outright crashing. I confirmed using 2 different quests with over 20 and 40 MIDIs loaded, respectively.

And even more than that!

MIDI file size also seems to play into the equation. Loading a 100k MIDI file into slot 1 caused no problems, but loading a 3k MIDI file into the same slot caused the Favorite Combos window removal glitch.

And finally!

This only happens in large mode. Small mode remains unaffected in all my tests so far.

#2 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 31 October 2018 - 02:55 AM

Under certain circumstances, ZQuest will crash when closing the "Select Music" window if MIDI files are loaded into a quest.

Reference Files (created in 2.50.2):
Quest With MIDI (1 slot loaded)
Quest With MIDI (2 slots loaded)

Functional in:
2.50.2, 2.50.3 RC1 & RC2.

Broken in:
2.53.0 B1 - B24, 2.55 Prelim 16 & 16.1 Expo Builds.

As of the switch away from the 2.50.3 RCs and toward the very first 2.53.0 beta, if you load a quest that has MIDI files in it, go to Quest -> Audio -> MIDIs to open the "Select Music" window, then exit that window either by clicking "Done" or pressing Esc, ZQuest will immediately crash.

I initially thought that maybe something went wrong while loading or editing the MIDI files in the 2.53 builds, but no, the files simply have to be in the quest, and all it takes to crash ZQuest is closing the "Select Music" window, even if you haven't done anything more than open it.

However, there are conditions.

First: it seems that 2 or more MIDI files need to be loaded for ZQuest to crash - which basically means that any quest by anybody wanting custom music will crash. When I load the reference quest with 2 MIDI slots, then open and close the "Select Music" window, this is the Windows dialogue I get:

zq-questwithmidi-crash-01.png

And when I "click here," this is the further information provided:

zq-questwithmidi-crash-02.png

Clicking again gives an absolutely massive text dump, which I can provide if necessary.

Now here's an odd variation: when I load the reference quest with 1 MIDI slot, then open and close the "Select Music" window, I only get visual glitches.

More than that, they vary depending on whether "Use Static for Invalid Data" is enabled.

With static disabled, ZQuest looks like this...

ZQuest, no static, normal
...but after opening and closing "Select Music," it looks like this:
ZQuest, no static, glitched
Now with static enabled, ZQuest looks like this...
ZQuest, static, normal
...but after opening and closing "Select Music," it looks like this:
ZQuest, static, glitched
The program options under the misplaced static block remain functional, so the glitch is strictly visual. But in both cases, the Favorite Combos window is rendered inaccessible.

But wait, there's more!

Second condition: ZQuest only crashes if "Use Static for Invalid Data" is enabled.

With static disabled, quest files with 2 or more MIDIs loaded will only generate the Favorite Combos window removal glitch as noted above, instead of outright crashing. I confirmed using 2 different quests with over 20 and 40 MIDIs loaded, respectively.

And even more than that!

MIDI file size also seems to play into the equation. Loading a 100k MIDI file into slot 1 caused no problems, but loading a 3k MIDI file into the same slot caused the Favorite Combos window removal glitch.

And finally!

This only happens in large mode. Small mode remains unaffected in all my tests so far.

 

 

 

I have not been able to reproduce any crash with those two files, however, they do make favourite combos vanish. What's odd, is that other quests with MIDIs have no issue. It seems to be more related to MIDI filename length?

 

Edit: I've managed to get one crash, editing track names with LoE, which has a lot of very long track names.

 

Edit 2: Using your MIDI Quest 2, as soon as I trimmed the nidi names down, the issue with favourite combos went away.

 

Edit 3: Confirmed. As soon as I truncated the MIDI Names in Loe, the problems all went away.

 

Edit 4: Bugs occur when the MIDI name is :>= 26 characters.

 

 


...

 

 


...

 

Was anything related to MIDI names changed bweteen 2.50.2 and now, that I'm not seeing?

 

The only commit that I see, is here:

https://github.com/A...86ec386d0c73c41
 



#3 Lüt

Lüt

    Germanize

  • Members
  • Real Name:Steve
  • Location:Chicago

Posted 31 October 2018 - 04:22 AM

Edit 3: Confirmed. As soon as I truncated the MIDI Names in Loe, the problems all went away.
 
Edit 4: Bugs occur when the MIDI name is :>= 26 characters.

That's one hell of a string of coincidences for that to be the only issue. I guess all my small MIDI files have long filenames and all my big MIDI files have short filenames, and all the quests I looked at happened to be the same.

Regardless, confirming MIDI entry name length issues on my end as well.

With a length of 26-28 characters, I get varying offsets of visual glitch in static mode...
...and at 29 characters, crash:
However, in non-static mode, I can enter all 35 available characters, and only end up losing the Favorite Combos window:
And since small mode doesn't use the Favorite Combos window anyway, I have no reference for any glitching.

However, I can again enter all 35 available characters with no crash, even in static mode:
So, seems entry name length in large mode is where the issue stands.

#4 Timelord

Timelord

    The Timelord

  • Banned
  • Location:Prydon Academy

Posted 06 November 2018 - 01:31 PM

Fixed, both in the 2.53 and the 2.55 branches.


  • Lüt likes this


0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users