logicomacorp / WaveSabre

Official WaveSabre repository
MIT License
245 stars 33 forks source link

FL Studio project file conversion broken in FL Studio 20.9 #97

Open LeStahL opened 2 years ago

LeStahL commented 2 years ago

ConvertTheFuck and ProjectManager are not able to load FL Studio project files created with FL Studio 20.9. When trying to convert them, the error message Object reference not set to an instance of an object. is displayed.

Project files created by FL Studio 20.1 can be converted successfully. Find project files with the same content that can be used to reproduce the problem here: project-files-to-reproduce.zip

LeStahL commented 2 years ago

I tracked the problem down to this line: https://github.com/logicomacorp/WaveSabre/blob/master/WaveSabreConvert/FLConverter.cs#L266 - generator.Plugin seems to be null.

LeStahL commented 2 years ago

With the null reference line avoided, the devices in the tracks are not deserialized correctly from the 20.9 format:

LeStahL commented 2 years ago

This might be a fix for the problem: https://github.com/Kwarf/FLParser/commit/c9b0bc5e35c58b0aa658b65c4d62ed666088ce6c

Kwarf commented 1 year ago

FL 21 broke it further, causing an IndexOutOfRangeException. I found a fix at demberto/PyFLP@6ffd859 and pushed that as well to my fork at Kwarf/FLParser@a44cc3b.

LeStahL commented 1 year ago

Will include that and retest the converter. Thanks for letting me know!