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 reason is that in IfRegionMaker.isBadBranchBlock(), else block has two predecessors and one of them is not in info.getMergedBlocks(). so else branch is thought as bad branch and extracted as out block.
in this case, else block indeed is in the end of then block, but is not 100% to be executed, so should still keep as else block.
Issue with incorrect if restore is fixed in PR #2385.
But part with missing viewFacade = null; still not fixed. I will try to implement check and duplicate required block.
Also, it will nice to fix type inference issue 🙂
the type inference warning only appears when this class's depedencies smali are missing. so maybe its not a big deal?
after de62954 , the type inference works correctly with the completed apk.
Issue details
jadx failed to decompiled a method in this smali class.
by looking into smali, the correct java code should be like
the reason is that in
IfRegionMaker.isBadBranchBlock()
, else block has twopredecessors
and one of them is not ininfo.getMergedBlocks()
. so else branch is thought as bad branch and extracted as out block.in this case, else block indeed is in the end of then block, but is not 100% to be executed, so should still keep as else block.
Relevant log output or stacktrace
No response
Provide sample and class/method full name
sample smali
Jadx version
latest commit(f4849d6)
The text was updated successfully, but these errors were encountered: