Open luizzeroxis opened 1 month ago
No clue why this happens... Underanalyzer's implementation shouldn't have touched these scripts all that much, so I'm curious what makes this not occur on 0.6.1.0. The only two things I can think of are:
ReapplyProfileCode
The first one can be easily tested, at the very least. If the script is detecting profile mode correctly, it should give this message:
This script will not modify your existing edited GML code registered in your profile. Please use GML editing for text editing, or a script like FindAndReplace, for editing strings within these code entries.
Otherwise, it gives the following message and nukes the profile mode GML intentionally (if you continue):
This script will recompile all code entries in your profile (if they exist) to the default decompiled output. Continue?
I think I understand why this is happening. On that script, it calls ReapplyProfileCode
in the end (probably to fix the strings in code), which eventually calls SafeImport
, which calls GetDecompiledText
when in profile mode (or I guess if a profile file for that GML exists at all, that's probably wrong). That calls the decompiler, which is different on those two versions.
The problem is that the regular decompiler actually checked for profile mode code and returned it, but underanalyzer recompiles it regardless. So it would be fine to call GetDecompiledText
in profile mode on the regular version, but not in underanalyzer.
This difference could have wide reaching implications so it's probably worth investigating further, or better yet, rewrite the whole profile system
Describe the bug
Using the ImportAllStrings script deletes profile mode code.
Reproducing steps
This doesn't happen in v0.6.1.0
Setup Details