Handle shrank automation patterns correctly#4012
Conversation
lukas-w
left a comment
There was a problem hiding this comment.
Would it make sense to move the check inside AutomationPattern::valueAt(...) so the fix is available to all callers?
|
@lukas-w I've tried something similar. It needs additional checks to keep current behavior in irrelevant places(ex. automation editor, note detuning). So I just chose this way for simplicity. |
|
@PhysSong What's the issue with e.g. note detuning? Is the pattern's length not set correctly? |
Yes. I detuned a two-bar note in piano-roll and the automation pattern have points over one measure. However, Its length is 192 ticks long(e.g. one bar long). Here's the project file: |
|
I see, thanks for explaining. I'd say we merge this and do further changes (if any) on |
|
Merged and added unit tests for the bug via d146308. |
|
Thanks @PhysSong. It's strange that the error only appears on macOS… |
|
Unit test is disabled in Windows builds, and Linux Qt4 build is missing now. So only Mac + Qt4 fails. |
|
Of course! |
Handle shrank automation patterns correctly
Fix automation processing for shrank patterns. Retain the behavior before #3382 for those patterns.
Fixes #3800.