Repository navigation
[Bug] Macros keep disappearing after PadForge quits #487
|
I tried this with a fresh Steps to reproduce:
This is on version 4.5.3 If I export the profile, and re-import it, the macro is there but as soon as I exit PadForge and reopen, it's gone again, even on the imported profile. |
Replies: 1 comment 1 reply
|
@i-report-bugs Fixed on the development branch in e95c2e7, after 4.5.3 shipped. It will be in the next development build and the next release. It is the same bug as #467. When PadForge starts, it loads your saved macros and drops any that sit on a controller slot that doesn't exist, a guard against leftovers from deleted controllers. In 4.5.3 that guard ran before PadForge applied the active profile's controllers. With your new profile still active at close, its controller didn't exist yet at that moment, so the macro was dropped, and the next save wrote the empty list into the profile. An exported file keeps its own copy, which is why an import brought the macro back until the next restart. Macros now load after the active profile's controllers are in place. Automated tests replay your steps: a fresh settings file, a new blank profile switched to, an Xbox or a PlayStation controller with its default model, a new macro, then close and reopen, plus the export and re-import. On 4.5.3 every case came back with no macros. On the development branch the macro survives the reopen and a second close and reopen after it. Until the next release, switching to the Default profile before you close PadForge keeps the macro, and it comes back when you switch to your profile again. A macro already lost needs to be re-created once. Thanks for the clear steps and for ruling out a corrupted settings file first. |
@i-report-bugs Fixed on the development branch in e95c2e7, after 4.5.3 shipped. It will be in the next development build and the next release. It is the same bug as #467.
When PadForge starts, it loads your saved macros and drops any that sit on a controller slot that doesn't exist, a guard against leftovers from deleted controllers. In 4.5.3 that guard ran before PadForge applied the active profile's controllers. With your new profile still active at close, its controller didn't exist yet at that moment, so the macro was dropped, and the next save wrote the empty list into the profile. An exported file keeps its own copy, which is why an import brought the macro back until the next restart.