You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The following method is only used when remapping the return type of method signatures. It looks to me like the intention of the method was to remap if the given Type is a FieldType, and simply return the given type if it's not a FieldType (i.e. Void). But for some reason it calls deobfuscate a second time on the result of the first deobfuscate call. Again, this method is only used for return types, for parameter types the FieldType-accepting deobfuscate method is called directly.
With certain mapping sets, this causes deobfuscate to give invalid results. This was observed when trying to call reverse on a MappingSet containing class mappings like the following:
BinaryHeap -> Path
Path -> PathEntity
any mappings which had PathEntity as the return type were changed to have BinaryHeap as the return type in the reversed mappings.
Using my own reverse and deobfuscate methods which call deobfuscate(FieldType) only once fixed the issue for me, but given I'm not sure why it's remapping twice, I'm hesitant to call it the "proper" fix, so I haven't opened a PR.
The text was updated successfully, but these errors were encountered:
The following method is only used when remapping the return type of method signatures. It looks to me like the intention of the method was to remap if the given
Type
is aFieldType
, and simply return the given type if it's not aFieldType
(i.e. Void). But for some reason it callsdeobfuscate
a second time on the result of the firstdeobfuscate
call. Again, this method is only used for return types, for parameter types theFieldType
-acceptingdeobfuscate
method is called directly.Lorenz/lorenz/src/main/java/org/cadixdev/lorenz/MappingSet.java
Lines 311 to 316 in 6851a5e
With certain mapping sets, this causes
deobfuscate
to give invalid results. This was observed when trying to callreverse
on aMappingSet
containing class mappings like the following:any mappings which had
PathEntity
as the return type were changed to haveBinaryHeap
as the return type in the reversed mappings.Using my own reverse and deobfuscate methods which call
deobfuscate(FieldType)
only once fixed the issue for me, but given I'm not sure why it's remapping twice, I'm hesitant to call it the "proper" fix, so I haven't opened a PR.The text was updated successfully, but these errors were encountered: