Closed sezero closed 3 years ago
@AliceLR: Does the suggested patch above look OK to you? Any better solutions?
This looks fine for XM, will check into IT to see if this case is possible for it. If affected, the IT EF_VOLENV
bit later in ProcessEnvelope
would need to be copied there. (edit: Also, that seems like a bad name for this flag, because it doesn't indicate any volume envelope, but specifically IT volume envelopes that initiate fadeout when they end.)
Confirmed that Impulse Tracker 2.14p5 does immediately initiate fadeout when given a volume envelope with 0 points. OpenMPT, libxmp, and MikMod all currently get this wrong (but to be fair, I don't think 0 points on an enabled envelope is supposed to be valid anyway).
Solution?
I checked the IT loader and I don't think anything needs to be changed, because the loader disables an envelope if it has fewer than 2 points. Your patch is fine as-is.
Thanks, applied.
Whenever you have the time, we have a backlog of patches/issues in mikmod: can you help?
As reported by Thomas Neumann (@neumatho):
With
Gherkins & A Rhubarb.xm
zero-point env happens at position 36, but it never seems to hit line 460. Gherkins & A Rhubarb.zipWith
Vikings In The Hood!.xm
zero-point env happens at position 21, and it does hit line 460. Vikings In The Hood!.zipPatch suggested by Thomas Neumann:
OK? Comments? @AliceLR?