Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
C
cwe_checker
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fact-depend
cwe_checker
Commits
78575b7b
Unverified
Commit
78575b7b
authored
Jul 19, 2022
by
Enkelmann
Committed by
GitHub
Jul 19, 2022
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Bugfix: prevent creation of duplicated block term (#343)
parent
f81403a4
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
4 additions
and
1 deletions
+4
-1
JumpProcessing.java
src/ghidra/p_code_extractor/internal/JumpProcessing.java
+4
-1
No files found.
src/ghidra/p_code_extractor/internal/JumpProcessing.java
View file @
78575b7b
...
@@ -211,7 +211,10 @@ public final class JumpProcessing {
...
@@ -211,7 +211,10 @@ public final class JumpProcessing {
public
static
void
addMissingJumpAfterInstructionSplit
(
Term
<
Blk
>
lastBlock
)
{
public
static
void
addMissingJumpAfterInstructionSplit
(
Term
<
Blk
>
lastBlock
)
{
lastBlock
.
getTerm
().
addMultipleDefs
(
PcodeBlockData
.
temporaryDefStorage
);
lastBlock
.
getTerm
().
addMultipleDefs
(
PcodeBlockData
.
temporaryDefStorage
);
addBranchToCurrentBlock
(
lastBlock
.
getTerm
(),
PcodeBlockData
.
instruction
.
getAddress
().
toString
(),
PcodeBlockData
.
instruction
.
getFallThrough
().
toString
());
addBranchToCurrentBlock
(
lastBlock
.
getTerm
(),
PcodeBlockData
.
instruction
.
getAddress
().
toString
(),
PcodeBlockData
.
instruction
.
getFallThrough
().
toString
());
PcodeBlockData
.
blocks
.
add
(
TermCreator
.
createBlkTerm
(
PcodeBlockData
.
instruction
.
getFallThrough
().
toString
(),
null
));
// If and only if the jump target is still part of the same Ghidra block, we need to start a new block term for it.
if
(
PcodeBlockData
.
instructionIndex
!=
PcodeBlockData
.
numberOfInstructionsInBlock
-
1
)
{
PcodeBlockData
.
blocks
.
add
(
TermCreator
.
createBlkTerm
(
PcodeBlockData
.
instruction
.
getFallThrough
().
toString
(),
null
));
}
PcodeBlockData
.
temporaryDefStorage
.
clear
();
PcodeBlockData
.
temporaryDefStorage
.
clear
();
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment