We have script called "MySuperScript.pex" that contains code 'game.GetFormFromFile(1, "mySuperPlugin.esp")'
OR
We have script called "MySuperScript.pex" that contains code 'String EspFile = "mySuperPlugin.esp"'
Without ZMerge
Game loads such plugins and scripts without issues, cause Windows doesn't differentiate "MySuperPlugin.esp" and "mySuperPlugin.esp".
Expected = Actual
With ZMerge
We have ZMerge that contains "MySuperPlugin.esp" and a result plugin called "MySuperMerge.esp"
Relinker tries to re-link "MySuperScript.pex" but skips 'game.GetFormFromFile(1, "mySuperPlugin.esp")' cause there is no exact match.
Relinker tries to re-link "MySuperScript.pex" but skips 'String EspFile = "mySuperPlugin.esp"' cause there is no exact match.
Expected != Actual
Proposed solution
To do a lower-cased search that this pull request implements.
[X] Expected = Actual
Small note
The function that does lower-cased search moved to the "collectionUtils" helper to be re-used in case of future changes, but it's can be moved directly to "relinkedService" to reduce changes.
Situation
Without ZMerge
With ZMerge
Proposed solution
To do a lower-cased search that this pull request implements. [X] Expected = Actual
Small note
The function that does lower-cased search moved to the "collectionUtils" helper to be re-used in case of future changes, but it's can be moved directly to "relinkedService" to reduce changes.