Many typo's

These were found using the command below searching for duplicated words,
and manually going through the results to remove the false positives and
reword the true positives. Sometimes I removed the doubled word and
sometimes I replaced the duplicated word.

The grep command:
grep -nIEr '\b([a-zA-Z]+)[[:space:]*]+\1\b' ./Ghidra
This commit is contained in:
Luke Serné 2025-04-19 18:06:41 +02:00
parent b7e91e80a2
commit 8303061629
252 changed files with 312 additions and 314 deletions

View file

@ -68,7 +68,7 @@ public interface LocationTrackingSpecFactory extends ExtensionPoint {
List<LocationTrackingSpec> getSuggested(PluginTool tool);
/**
* Attempt to parse the given configuration name as as specification
* Attempt to parse the given configuration name as a specification
*
* @param name the configuration name, usually including a prefix unique to each factory
* @return the specification, or null if this factory cannot parse it

View file

@ -558,7 +558,7 @@ public interface LogicalBreakpoint {
}
/**
* Get the desired state were the the logical breakpoint to be toggled
* Get the desired state were the logical breakpoint to be toggled
*
* <p>
* The expected "action" when toggling a breakpoint may vary depending on whether or not the

View file

@ -134,7 +134,7 @@ I instead just use a fixed 32-bit int now.
# How-To?
For now, I'd say just the the gdb implementation as a template / guide.
For now, I'd say just take the gdb implementation as a template / guide.
Just beware, the whole thing is a bit unstable, so the code may change, but still, I don't expect it to change so drastically that integration work would be scrapped.
If you're writing Python, create a Python package following the template for gdb's.

View file

@ -376,7 +376,7 @@ class Trace(Generic[E]):
List[str], RemoteResult[Any, List[str]]]:
"""Set register values at the given time on.
values is a dictionary, where each key is a a register name, and
values is a dictionary, where each key is a register name, and
the value is a byte array. No matter the target architecture,
the value is given in big-endian byte order.
"""

View file

@ -289,7 +289,7 @@ public class DebuggerDisassemblyTest extends AbstractGhidraHeadedDebuggerTest {
assertMnemonic("JMP", instructions.getAt(0, tb.addr(0x00400000)));
/**
* Depending on preference for branch or fall-through, the disassembler may or may not
* proceed to the following instructions. I don't really care, since the test is the the
* proceed to the following instructions. I don't really care, since the test is that the
* JMP gets deleted after the update to PC.
*/
});
@ -324,7 +324,7 @@ public class DebuggerDisassemblyTest extends AbstractGhidraHeadedDebuggerTest {
assertMnemonic("JMP", instructions.getAt(0, tb.addr(0x00400000)));
/**
* Depending on preference for branch or fall-through, the disassembler may or may not
* proceed to the following instructions. I don't really care, since the test is the the
* proceed to the following instructions. I don't really care, since the test is that the
* JMP gets deleted after the update to PC.
*/
});
@ -374,7 +374,7 @@ public class DebuggerDisassemblyTest extends AbstractGhidraHeadedDebuggerTest {
assertMnemonic("JMP", instructions.getAt(0, tb.addr(0x00400000)));
/**
* Depending on preference for branch or fall-through, the disassembler may or may not
* proceed to the following instructions. I don't really care, since the test is the the
* proceed to the following instructions. I don't really care, since the test is that the
* JMP gets deleted after the update to PC.
*/
});

View file

@ -1467,13 +1467,13 @@ public class DBTraceProgramView implements TraceProgramView {
}
public void updateMemoryAddSpaceBlock(AddressSpace space) {
// Spaces not not time-bound. No visibility check.
// Spaces are not time-bound. No visibility check.
memory.updateAddSpaceBlock(space);
allAddressesValid = false;
}
public void updateMemoryDeleteSpaceBlock(AddressSpace space) {
// Spaces not not time-bound. No visibility check.
// Spaces are not time-bound. No visibility check.
memory.updateDeleteSpaceBlock(space);
allAddressesValid = false;
}

View file

@ -46,7 +46,7 @@ public class XmlTargetObjectSchemaTest {
<schema name="down1">
<attribute schema="VOID" fixed="yes" hidden="yes" />
</schema>
</context>"""; // Cannot have final final new-line or serialize test will fail
</context>"""; // Cannot have a final new-line or serialize test will fail
protected static final DefaultSchemaContext CTX = new DefaultSchemaContext();
protected static final SchemaName NAME_ROOT = new SchemaName("root");

View file

@ -63,7 +63,7 @@
"filename">localhost</CODE> is running both a Ghidra Server and a BSim PostgreSQL database
server. On the Ghidra Server, a repository named <CODE class="filename">repo</CODE> has
been created. On the BSim server, a database named <CODE class="filename">repo</CODE> has
also been created. See See <A class="xref" href=
also been created. See <A class="xref" href=
"CommandLineReference.html#BSimCommand">Command-Line Utility Reference</A> for more
details on use of <STRONG>bsim</STRONG> command and other supported BSim databases.</P>

View file

@ -24,7 +24,7 @@ import java.io.IOException;
import java.io.Writer;
/**
* A user-defined category associated associated with an executable
* A user-defined category associated with an executable
* Specified by a -type- and then the particular -category- (within the type) that
* the executable belongs to.
*

View file

@ -113,7 +113,7 @@
<A name="Show_Xrefs"></A>
<P>In the XRef field, sometimes there are too many addresses to display so the the field will
<P>In the XRef field, sometimes there are too many addresses to display so the field will
display "[more]" to indicate that one or more cross-reference addresses are not shown.</P>
<BLOCKQUOTE>

View file

@ -897,7 +897,7 @@
contains the prefix to use for local labels.</P>
<P><B>Enable Word Wrapping -</B> Option to wrap strings in operand lines that are too long
to fit in the operand field. Note that that word wrapping can only occur where spaces exist
to fit in the operand field. Note that word wrapping can only occur where spaces exist
in the string.<BR>
</P>

View file

@ -421,7 +421,7 @@
must be used to precisely place a bitfield component. Adding a bitfield component via the
structure table view via datatype text entry (e.g., char:1) provides only rough placement for non-packed
structures since additional bytes will be introduced.
The BitField Editor may be displayed using the the Add Bitfield and
The BitField Editor may be displayed using the Add Bitfield and
Edit Bitfield popup menu actions on a selected structure component. The datatype text entry approach
must be used for all unions and packed structures.</li>
</ul>

View file

@ -1133,7 +1133,7 @@
<BLOCKQUOTE>
<P>On occasion there may be the need to add stipulate additional attributes on a pointer
type to stipulate how the associated pointer should be interpreted or processed during analysis.
Such pointer attributes may only be specified when such a pointer in in the form of a Typedef
Such pointer attributes may only be specified when such a pointer in the form of a Typedef
which enables the datatype to preserve these attributes during type resolution and propagation.
This includes preservation of such Typedef Settings within a data type archive, and through
merge processing, which normal Data Settings do not support.</P>

View file

@ -142,7 +142,7 @@
</TD>
<TD style="vertical-align: top;">- Indicates the archive has datatypes from a
source archive that has been been modified. An update is needed.</TD>
source archive that has been modified. An update is needed.</TD>
</TR>
<TR valign="top">
@ -519,7 +519,7 @@
<H3><A name="Copy"></A>Copy</H3>
<BLOCKQUOTE>
<P>The <I><B>Copy</B></I> action can be be used to
<P>The <I><B>Copy</B></I> action can be used to
<A href="data_type_manager_description.htm#CopyDataType">copy
selected data types</A> and/or
<A href="data_type_manager_description.htm#CopyCategory">copy selected categories</A>.
@ -533,7 +533,7 @@
<H3><A name="Cut"></A>Cut</H3>
<BLOCKQUOTE>
<P>The <I><B>Cut</B></I> action can be be used to
<P>The <I><B>Cut</B></I> action can be used to
<A href="data_type_manager_description.htm#MoveDataType">move selected
data types</A> and/or
<A href="data_type_manager_description.htm#MoveCategory">move selected categories</A>. The

View file

@ -105,10 +105,10 @@
<BLOCKQUOTE>
<UL>
<LI><B>Format</B> - This field is a drop-down list containing all the valid <A href=
"#Exporter_Formats">export file formats</A> that could be used to to export the
"#Exporter_Formats">export file formats</A> that could be used to export the
program. By default, the last used format will be auto-selected.</LI>
<LI><B>Output File</B> - This field specifies the the output file for the export. By
<LI><B>Output File</B> - This field specifies the output file for the export. By
default, the output file's name will be the name of the program and the output folder
will be the user's home folder or the last folder used for an export if an export has
been performed in the current session. Use the "..." button to bring up a file chooser

View file

@ -40,7 +40,7 @@
Address</I> field is disabled. If an instruction has no default fallthrough (e.g., "jump"),
the Fallthrough Address field is empty. Choose the <B>User</B> button to enter a new
fallthrough address. When the <B>User</B> button is selected, the <I>Fallthrough</I>
<I>Address</I> field is updated as you move the cursor in the the Code Browser.</P>
<I>Address</I> field is updated as you move the cursor in the Code Browser.</P>
<P>Select the Home button to navigate the Code Browser back to this address. The home panel
shows the address and the instruction when you selected the <B>Set</B> option.</P>

View file

@ -108,7 +108,7 @@
<OL>
<LI>Connect the tools in one direction as described above.</LI>
<LI>Select Tool B as the event producer and and Tool A as the event consumer.</LI>
<LI>Select Tool B as the event producer and Tool A as the event consumer.</LI>
<LI>Select the check box for the event of interest in the <I>Event Names</I> list.</LI>
</OL>
@ -174,7 +174,7 @@
<OL>
<LI>Disconnect the tools in one direction as described above.</LI>
<LI>Select Tool B as the event producer and and Tool A as the event consumer.</LI>
<LI>Select Tool B as the event producer and Tool A as the event consumer.</LI>
<LI>Turn off the check box for the event of interest in the <I>Event Names</I> list.</LI>
</OL>

View file

@ -530,7 +530,7 @@
<TD width="40%"><A name="HijackedFile"></A>The private file "Example" exists on your
computer, but another user added "Example" to version control, which
caused the private file to appear as <I>hijacked</I>, (i.e., the file can be saved "as
is" using "<B>Save As</B>" since you do not have the the file checked out that is on
is" using "<B>Save As</B>" since you do not have the file checked out that is on
the Ghidra Server.) Hijacked files may also result from a checkout that was <A href=
"help/topics/VersionControl/project_repository.htm#TerminateCheckout">terminated</A>. The
<I>shared</I> version of "Example" will not be visible in your project until you

View file

@ -256,7 +256,7 @@
<BLOCKQUOTE>
<UL>
<LI><B>Format</B> - This field is a drop-down list containing all the valid <A href=
"#Supported_Formats">file formats</A> that could be used to to import the file.
"#Supported_Formats">file formats</A> that could be used to import the file.
Typically, there are two options available. One for the actual format of the file (if
Ghidra could detect it) and other is the <B>Raw Binary</B> format, which is always an
option regardless of the actual file format and it will simply import the bytes in the
@ -276,7 +276,7 @@
<LI><B>Program Name</B> - This field specifies the name for the newly imported program.
By default, it will be the name of the imported file with any format specific extenstion
removed (e.g., .xml, .gzf). Path information at the beginning of the this field
removed (e.g., .xml, .gzf). Path information at the beginning of this field
will be used to create a destination folder in the current project under the root folder
specified by the <B>Destination Folder</B> field.</LI><BR>
@ -714,7 +714,7 @@
<BLOCKQUOTE>
<P>The Library Search Path dialog is used to specify the directories, container files,
and/or FSRLs that Ghidra should use to resolve external libraries (e.g.; *.dll, *.so) while
importing. A "." can be added to specify the the program's import location. FSRLs can be
importing. A "." can be added to specify the program's import location. FSRLs can be
added via the
<A href="help/topics/FileSystemBrowserPlugin/FileSystemBrowserPlugin.html#FSB_Add_Library_Search_Path">File System Browser context menu</A>.
</P>

View file

@ -56,7 +56,7 @@ data tree, and setlect <span style="font-weight: bold;">Set Language...</span>
from the popup menu.&nbsp; Since setting the language is such a major
change, the following warning will appear.</p>
<p align="center"><img alt="" src="images/Warning.png"></p>
<p align="left">Alternatively, if your file is versioned, you you
<p align="left">Alternatively, if your file is versioned, you
should check-in any recent changes prior to performing this
operation.&nbsp; If you press the "OK" button, the Select Language
dialog will be displayed:</p>

View file

@ -953,7 +953,7 @@
</UL>
<P><B><A name="Start_Symbols"></A>Start Symbols</B> - A comma separated list of symbol
names to be be used as the starting location for the program if the "Preferred Symbol Name"
names to be used as the starting location for the program if the "Preferred Symbol Name"
option is selected above. The first matching symbol found will be used as the starting
location for newly opened programs.</P>

View file

@ -844,7 +844,7 @@ c<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<P>When adding a <I>Stack</I> or <I>Register</I> reference, a corresponding parameter or
variable may be created. &nbsp;If a local variable is created, the first-use-offset of the
variable will correspond to the source instruction location. &nbsp;For this reason, it is
recommended that the first reference to a variable be created on the the first "assignment"
recommended that the first reference to a variable be created on the first "assignment"
instruction. &nbsp;If a newly created variable is unwanted, it may be deleted by clicking on it
within the Listing and hitting the "<I>Delete</I>" key. &nbsp;Keep in mind that when a variable
is deleted, any explicit bindings to that variable will be cleared.<BR>
@ -1085,7 +1085,7 @@ c<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<P>When adding a <I>Stack</I> or <I>Register</I> reference, a corresponding parameter or
variable may be created. &nbsp;If a local variable is created, the first-use-offset of the
variable will correspond to the source instruction location. &nbsp;For this reason, it is
recommended that the first reference to a variable be created on the the first "assignment"
recommended that the first reference to a variable be created on the first "assignment"
instruction. &nbsp;If a newly created variable is unwanted, it may be deleted by clicking on it
within the Listing and hitting the "<I>Delete</I>" key. &nbsp;Keep in mind that when a variable
is deleted, any explicit bindings to that variable will be cleared.<BR>

View file

@ -275,7 +275,7 @@
<BLOCKQUOTE>
<P>Press the <IMG alt="" src="icon.base.plugin.quickfix.done"> toolbar button or use the
popup action <B>Execute Selected Action(s)</B> to apply just the selected entries in
the table. If only one item is selected when this this is done, the selected item will
the table. If only one item is selected when this is done, the selected item will
move to the next item in the table to facilitate a one at a time workflow.</P>
</BLOCKQUOTE>

View file

@ -338,7 +338,7 @@
<BLOCKQUOTE>
<P>This action searches forward in memory, starting at the address just after the current
cursor location. It will continue until a match is found or the highest address in the
search space is reached. It does not "wrap". If a match is found, it it is added to the
search space is reached. It does not "wrap". If a match is found, it is added to the
current table of results.</P>
</BLOCKQUOTE><A name="Search_Previous"></A>
@ -347,7 +347,7 @@
<BLOCKQUOTE>
<P>This action searches backwards in memory, starting at the address just before the
current cursor location. It will continue until a match is found or the lowest address in
the search space is reached. It does not "wrap". If a match is found, it it is added to
the search space is reached. It does not "wrap". If a match is found, it is added to
the current table of results.</P>
</BLOCKQUOTE><A name="Refresh_Values"></A>

View file

@ -117,7 +117,7 @@
<LI>Select the <B>Make Table</B> button.</LI>
<LI>An address table gets created at the location you chose, containing defined addresses
which now point to to the address created. These addresses now contain XREFs to the table
which now point to the address created. These addresses now contain XREFs to the table
entries. If an index to the table exists immediately after the table, it will get created
as an array of bytes, as well.</LI>
</OL>

View file

@ -20,7 +20,7 @@
various parts of the listing such as comments, labels, mnemonics, and operands.&nbsp; The
<I><A href="SearchAndReplace.htm">Search and Replace</A></I> features allows for globally
searching and replacing names or comments on many different types of program elements such as
Labels, Functions, Datatypes, Enum Values, and and many others. The
Labels, Functions, Datatypes, Enum Values, and many others. The
<I><A href="Search_for_Strings.htm">Search For Strings</A></I> feature
automatically finds potential ascii strings within the program memory.</P>

View file

@ -331,7 +331,7 @@
<H3><A name="Go_To_External_Location"></A>Navigating to External Locations</H3>
<BLOCKQUOTE>
<P>If you select an external symbol (under the <I>Externals</I> folder in the the symbol
<P>If you select an external symbol (under the <I>Externals</I> folder in the symbol
tree), you will navigate to an external <I>reference</I> <I>source</I> which has a
<I>destination</I> corresponding to the external symbol (i.e., where it is being called
from). To actually <B>go to</B> the external location, right mouse click on the external

View file

@ -77,7 +77,7 @@
<H3><A name="PluginDialog"></A>Configure Plugins Dialog</H3>
<BLOCKQUOTE>
<P>Selecting the <I>Configure</I> link for a package will bring up the the <I>Configure
<P>Selecting the <I>Configure</I> link for a package will bring up the <I>Configure
Plugins Dialog</I>.</P>
</BLOCKQUOTE>

View file

@ -135,7 +135,7 @@
<P><IMG alt="" src="help/shared/note.png" border="0"> A normal checkout is indicated by a
checkmark with a green background<IMG alt="" src="images/check.png" border="0">, while an
exclusive checkout is is indicated by checkmark with a blue background<IMG alt="" src=
exclusive checkout is indicated by checkmark with a blue background<IMG alt="" src=
"images/checkex.png" border="0">. A checkmark with a red background<IMG alt="" src=
"images/checkNotLatest.gif" border="0"> indicates that a newer version has been checked-in
by another user.</P>
@ -150,7 +150,7 @@
"0">&nbsp;</H3>
<BLOCKQUOTE>
<P>To check out a file, select the file in the Ghidra Project Window. You can either either
<P>To check out a file, select the file in the Ghidra Project Window. You can either
click on the check out icon <IMG alt="" src="images/vcCheckOut.png" border="0"> on the tool
bar, or right mouse click on the file and choose the <B>Check Out...</B>
option.&nbsp;&nbsp;&nbsp;</P>

View file

@ -44,7 +44,7 @@
<li>Has Encoding Error - boolean flag that indicates the string had byte(s) that could not be converted by the character set.
This is usually caused by having the wrong character set or if the string isn't really a string.</li>
<li>Charset - name of the character set that this string is encoded in.</li>
<li>Unicode Script - a list of the the scripts (alphabets) used in the string.</li>
<li>Unicode Script - a list of the scripts (alphabets) used in the string.</li>
</ul>
<p>The <b>Is Ascii</b>, <b>Has Encoding Error</b>, <b>Unicode Script</b>, and <b>Charset</b> columns are not visible by default. To display
them in the table, right click on the column header row and select

View file

@ -35,7 +35,7 @@ public abstract class AbstractCreateStructureCmd implements Command<Program> {
private Address structureAddress;
/**
* Initializes the this class to create a structure with the given name
* Initializes this class to create a structure with the given name
* and address when the {@link #applyTo(Program)} is called.
*
* @param name The name of the structure to create.

View file

@ -693,7 +693,7 @@ abstract class AbstractFunctionMerger implements ListingMergeConstants {
}
// NOTE: Parameter level merging gets really complex when the presence of auto-params are inconsistent
// between between two functions treat as a signature difference when this occurs
// between two functions. Treat this as a signature difference when this occurs.
for (int i = 0; i < f1Parms.length; i++) {
if (f1Parms[i].isAutoParameter() != f2Parms[i].isAutoParameter() ||

View file

@ -140,7 +140,7 @@ public class VariousChoicesPanel extends ConflictPanel {
* Adds a row to the table that doesn't provide any choices.
* Instead this row just provides information.
*
* @param title title the is placed at the beginning of the row
* @param title title that is placed at the beginning of the row
* @param info the text for each table column in the row
* @param underline true indicates each info string should be underlined
* when it appears. (Underlining is done on the header row (row 0) of the table.
@ -170,7 +170,7 @@ public class VariousChoicesPanel extends ConflictPanel {
* Adds radiobutton choices as a row of the table.
* Radiobuttons allow you to select only one choice in the row.
*
* @param title title the is placed at the beginning of the row
* @param title title that is placed at the beginning of the row
* @param choices the text for each choice in the row
* @param listener listener that gets notified whenever the state of
* one of the radiobuttons in this row changes.
@ -222,7 +222,7 @@ public class VariousChoicesPanel extends ConflictPanel {
* Adds checkbox choices as a row of the table.
* Check boxes allow you to select one or more choices in the row.
*
* @param title title the is placed at the beginning of the row
* @param title title that is placed at the beginning of the row
* @param choices the text for each choice in the row
* @param listener listener that gets notified whenever the state of
* one of the checkboxes in this row changes.

View file

@ -79,7 +79,7 @@ public class ProgramTreeMergeManager implements MergeResolver {
* @param myProgram source of changes to apply to the destination
* program
* @param originalProgram program that was originally checked out
* @param latestProgram program that that is the latest version; the
* @param latestProgram program that is the latest version; the
* resultProgram and latestProgram start out as being identical
* @param latestChangeSet change set of the destination program
* @param myChangeSet change set for the source program

View file

@ -126,7 +126,7 @@ public class ConstantPropagationAnalyzer extends AbstractAnalyzer {
}
/**
* Called to to register a more specific analyzer.
* Called to register a more specific analyzer.
*
* @param processorName
*/

View file

@ -1107,7 +1107,7 @@ public class OperandReferenceAnalyzer extends AbstractAnalyzer {
/**
* Returns the length of the Unicode string found at address.
*
* @return length of string in in words (two byte unicode characters).
* @return length of string in words (two byte unicode characters).
*/
private int checkUnicodeString(Memory mem, Address adref) {
int len = getWStrLen(mem, adref); // returns -1 for bad

View file

@ -109,8 +109,8 @@ class RegisterContextBuilder {
* @param instr first instruction of range
* @param valueFrom point from which existing register value should
* be read from program context.
* @param overwrite this method will take not action and return false if
* this parameter is false and and a context value has previously been set,
* @param overwrite this method will take no action and return false if
* this parameter is false and a context value has previously been set,
* otherwise an attempt will be made to overwrite the current value state.
* @return true if value was set, otherwise false.
*/

View file

@ -891,7 +891,7 @@ class RustType implements SymbolNode {
}
/**
* Parses and represents a a rust symbol const node
* Parses and represents a rust symbol const node
*/
class RustConst implements SymbolNode {
String name;

View file

@ -119,7 +119,7 @@ public abstract class CallNode extends GTreeSlowLoadingNode {
Function function = nodeToAdd.getRemoteFunction();
List<GTreeNode> nodes = nodesByFunction.get(function);
if (nodes.isEmpty()) {
nodes.add(nodeToAdd); // can can always add new nodes when the list is empty
nodes.add(nodeToAdd); // we can always add new nodes when the list is empty
return;
}

View file

@ -25,7 +25,7 @@ import ghidra.util.ColorUtils;
/**
* Class for blending two {@link ListingBackgroundColorModel}s. If neither model has a color
* different from its default, then the primary's color is returned. If only one model
* has a color different from its default, that that color is returned. If they both have
* has a color different from its default, then that color is returned. If they both have
* colors different, the color returned is a blend of the two colors.
*/

View file

@ -56,7 +56,7 @@ public class ProgramLocator {
}
/**
* Creates a {@link DomainFile} based based ProgramLocator for the current version of a Program.
* Creates a {@link DomainFile}-based ProgramLocator for the current version of a Program.
* @param domainFile the DomainFile for a program
*/
public ProgramLocator(DomainFile domainFile) {
@ -64,7 +64,7 @@ public class ProgramLocator {
}
/**
* Creates a {@link DomainFile} based based ProgramLocator for a specific Program version.
* Creates a {@link DomainFile}-based ProgramLocator for a specific Program version.
* @param domainFile the DomainFile for a program
* @param version the specific version of the program
*/

View file

@ -39,14 +39,14 @@ import ghidra.util.UserSearchUtils;
import ghidra.util.task.TaskMonitor;
/**
* This class attempts to search for text as it is rendered on the screen. This in in
* This class attempts to search for text as it is rendered on the screen. This is in
* contrast to the Program Database Searcher which searches the database. This is
* needed because some information on the screen is rendered "on the fly" and not
* stored in the database. This searcher is much slower, but delivers
* results that are in-line with what the user sees.
* <p>
* The search is performed in two steps. First it uses Instruction and Data iterators to
* find possible addresses where where information would be rendered. Then for each of those
* find possible addresses where information would be rendered. Then for each of those
* addresses, it uses the code browsers rendering engine to produce a textual representation
* for that address. The textual representation also maintains information about the field
* that generated it so that the search can be constrained to specific fields such as the

View file

@ -171,7 +171,7 @@ public class ClassCategoryNode extends SymbolCategoryNode {
return;
}
// start with the the top-level class node and walk the namespace path to find the
// start with the top-level class node and walk the namespace path to find the
// parent for the given symbol
GTreeNode classNode = entry.getKey();
List<Namespace> parentPath = entry.getValue();
@ -205,7 +205,7 @@ public class ClassCategoryNode extends SymbolCategoryNode {
Set<Entry<GTreeNode, List<Namespace>>> entries = classNodes.entrySet();
for (Entry<GTreeNode, List<Namespace>> entry : entries) {
// start with the the top-level class node and walk the namespace path to find the
// start with the top-level class node and walk the namespace path to find the
// parent for the given symbol
GTreeNode classNode = entry.getKey();
List<Namespace> parentPath = entry.getValue();
@ -237,7 +237,7 @@ public class ClassCategoryNode extends SymbolCategoryNode {
In this tree, the Label2 symbol is in the tree twice. The mapping created by this method
will have have as keys both Class1 and Class2. Class1 will be mapped to Class1/BarNs/Class2
will have as keys both Class1 and Class2. Class1 will be mapped to Class1/BarNs/Class2
and Class2 will be mapped to Class2 (since it only has one namespace element).
This code is needed because this Classes category node will duplicate class nodes. It puts

View file

@ -119,7 +119,7 @@ class RuntimeInfoProvider extends ReusableDialogComponentProvider {
/**
* Adds an "application layout" panel to the tabbed pane.
* <p>
* The goal of this panel is to display information information about the application such as
* The goal of this panel is to display information about the application such as
* what directories it is using on disk, what its PID is, etc.
*/
private void addApplicationLayout() {

View file

@ -800,7 +800,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* <p>
* The script being run uses the given {@link GhidraState} (e.g., script variables)
* Any changes to the state by the script being run will be reflected in the given state
* object. If the given object is the current state, the this scripts state may be changed
* object. If the given object is the current state, this scripts state may be changed
* by the called script.
*
* @param scriptName the name of the script to run
@ -822,7 +822,7 @@ public abstract class GhidraScript extends FlatProgramAPI {
* <p>
* The script being run uses the given {@link GhidraState} (e.g., script variables)
* Any changes to the state by the script being run will be reflected in the given state
* object. If the given object is the current state, the this scripts state may be changed
* object. If the given object is the current state, this scripts state may be changed
* by the called script.
*
* @param scriptName the name of the script to run

View file

@ -45,7 +45,7 @@ public interface MarkerSet extends Comparable<MarkerSet> {
public void add(AddressRange range);
/**
* Sets the AddressSetCollection to be used for this this marker set.
* Sets the AddressSetCollection to be used for this marker set.
*
* <p><strong>Warning!</strong>
* Using this method will cause this MarkerSet to directly use the given AddressSetCollection.

View file

@ -62,7 +62,7 @@ public interface VSCodeIntegrationService {
public void createVSCodeModuleProject(File projectDir) throws IOException;
/**
* Adds the given project directory to the the given Visual Studio Code workspace file
* Adds the given project directory to the given Visual Studio Code workspace file
* A new workspace will be created if it doesn't already exist
*
* @param workspaceFile The location of the workspace file

View file

@ -451,7 +451,7 @@ public class AddressInput extends JPanel implements FocusableEditor {
}
private String removeLeadingZeros(String addressString) {
// if it has a colon, then is is a segmented address, don't mess with it.
// if it has a colon, then it is a segmented address, don't mess with it.
if (addressString.indexOf(":") >= 0) {
return addressString;
}

View file

@ -53,7 +53,7 @@ public class CoffArchiveMemberHeader implements StructConverter {
/**
* Reads a COFF archive member header from the specified {@link BinaryReader reader},
* leaving the file position at the start of the this member's payload.
* leaving the file position at the start of this member's payload.
* <p>
* The archive member's name is fixed up using the specified {@link LongNamesMember longNames}
* object.

View file

@ -33,7 +33,7 @@ public class DWARFLocationListHeader extends DWARFIndirectTableHeader {
// address_size : 1 byte
// segment_selector_size : 1 byte
// offset entry count: 4 bytes
// offsets : array of elements are are dwarf_format_int sized
// offsets : array of elements that are dwarf_format_int sized
long startOffset = reader.getPointerIndex();
DWARFLengthValue lengthInfo = DWARFLengthValue.read(reader, defaultIntSize);

View file

@ -33,7 +33,7 @@ public class DWARFRangeListHeader extends DWARFIndirectTableHeader {
// address_size : 1 byte
// segment_selector_size : 1 byte
// offset entry count: 4 bytes
// offsets : array of elements are are dwarf_format_int sized
// offsets : array of elements that are dwarf_format_int sized
long startOffset = reader.getPointerIndex();
DWARFLengthValue lengthInfo = DWARFLengthValue.read(reader, defaultIntSize);

View file

@ -45,7 +45,7 @@ public class DWARFStringOffsetTableHeader extends DWARFIndirectTableHeader {
// length : dwarf_length
// version : 2 bytes
// padding : 2 bytes
// offsets : array of elements are are dwarf_format_int sized
// offsets : array of elements that are dwarf_format_int sized
long startOffset = reader.getPointerIndex();
DWARFLengthValue lengthInfo = DWARFLengthValue.read(reader, defaultIntSize);

View file

@ -57,7 +57,7 @@ public class DWARFUtil {
* Returns the field name of a final static variable in class <code>clazz</code>
* which holds a specific value.
* <p>
* Can be thought of as an enum numeric value to to name lookup.
* Can be thought of as an enum numeric value to do a name lookup.
*
* @param clazz
* @param value

View file

@ -224,8 +224,8 @@ public interface ElfLoadHelper {
* performed during the ELF import processing. A relocation type of 0 and a status of
* {@link Status#APPLIED_OTHER} will be applied to the relocation entry.
* NOTE: The number of recorded original FileBytes currently ignores the specified length.
* However, the length is still used to verify that that the intended modification region
* dose not intersect another relocation.
* However, the length is still used to verify that the intended modification region
* does not intersect another relocation.
* @param address relocation address
* @param length number of bytes affected
* @return true if recorded successfully, or false if conflict with existing relocation

View file

@ -96,7 +96,7 @@ public class ElfRelocation implements StructConverter {
* @param reader binary reader positioned at start of relocation entry.
* @param elfHeader ELF header
* @param relocationIndex index of entry in relocation table
* @param withAddend true if if RELA entry with addend, else false
* @param withAddend true if it's a RELA entry with addend, else false
* @return ELF relocation object
* @throws IOException if an IO or parse error occurs
*/
@ -113,7 +113,7 @@ public class ElfRelocation implements StructConverter {
* relocation entry
* @param elfHeader ELF header
* @param relocationIndex index of entry in relocation table
* @param withAddend true if if RELA entry with addend, else false
* @param withAddend true if it's a RELA entry with addend, else false
* @param r_offset The offset for the entry
* @param r_info The info value for the entry
* @param r_addend The signed-addend for the entry (32-bit addends should be signed-extended to 64-bits)
@ -172,7 +172,7 @@ public class ElfRelocation implements StructConverter {
* a representative instance will be generated with all fields set to 0.
* @param elfHeader ELF header
* @param relocationTableIndex index of relocation within relocation table
* @param withAddend true if if RELA entry with addend, else false
* @param withAddend true if it's a RELA entry with addend, else false
* @throws IOException if an IO or parse error occurs
*/
protected void initElfRelocation(BinaryReader reader, ElfHeader elfHeader,
@ -189,7 +189,7 @@ public class ElfRelocation implements StructConverter {
* Initialize ELF relocation entry using data provided via the parameters.
* @param elfHeader ELF header
* @param relocationTableIndex index of relocation within relocation table
* @param withAddend true if if RELA entry with addend, else false
* @param withAddend true if it's a RELA entry with addend, else false
* @param offset The offset for the entry (r_offset)
* @param info The info value for the entry (r_info)
* @param addend The signed-addend (r_addend) for the entry (32-bit addends should

View file

@ -28,7 +28,7 @@ public final class LoadCommandTypes {
* After MacOS X 10.1 when a new load command is added that is required to be
* understood by the dynamic linker for the image to execute properly the
* LC_REQ_DYLD bit will be or'ed into the load command constant. If the dynamic
* linker sees such a load command it it does not understand will issue a
* linker sees such a load command that it does not understand, it will issue a
* "unknown load command required for execution" error and refuse to use the
* image. Other load commands without this bit that are not understood will
* simply be ignored.

View file

@ -1096,7 +1096,7 @@ public class DyldCacheHeader implements StructConverter {
/**
* Gets the {@link DyldCacheLocalSymbolsInfo}.
*
* @return The {@link DyldCacheLocalSymbolsInfo}. Could be be null if it didn't parse.
* @return The {@link DyldCacheLocalSymbolsInfo}. Could be null if it didn't parse.
*/
public DyldCacheLocalSymbolsInfo getLocalSymbolsInfo() {
return localSymbolsInfo;

View file

@ -114,7 +114,7 @@ public class LibObjcOptimization implements StructConverter {
}
/**
* Marks up up this structure in memory
* Marks up this structure in memory
*
* @param program The {@link Program}
* @param space The {@link AddressSpace}

View file

@ -190,8 +190,8 @@ class ReferenceLineDispenser extends AbstractLineDispenser {
buf.append(prefix);
}
}
//if we already appended a ref the line
//and we are are about to append one more,
//if we already appended a ref to the line
//and we are about to append one more,
//then we need the delim
if (refsInCurrLine > 0) {
buf.append(XREFS_DELIM);

View file

@ -114,7 +114,7 @@ public class LibrarySearchPathManager {
}
/**
* Adds the specified library search path path to the end of the path search list
* Adds the specified library search path {@code path} to the end of the path search list
*
* @param path the library search path to add
* @return true if the path was appended, false if the path was a duplicate

View file

@ -376,7 +376,7 @@ public abstract class AbstractProgramLoader implements Loader {
return fsrl.getName();
}
// If the ByteProvider dosn't have have an FSRL, use the given domainFileName
// If the ByteProvider doesn't have an FSRL, use the given domainFileName
return domainFileName;
}

View file

@ -53,7 +53,7 @@ public class LoadResults<T extends DomainObject> implements Iterable<Loaded<T>>
}
/**
* Creates a a new {@link LoadResults} that contains a new {@link Loaded}
* Creates a new {@link LoadResults} that contains a new {@link Loaded}
* {@link DomainObject} created from the given parameters. This new {@link Loaded}
* {@link DomainObject} is assumed to be the {@link #getPrimary() primary} {@link Loaded}
* {@link DomainObject}.

View file

@ -832,7 +832,7 @@ public class PeLoader extends AbstractPeDebugLoader {
private Address getILEntryPoint(OptionalHeader optionalHeader) {
// Check to see if this binary has a COMDescriptorDataDirectory in it. If so,
// it might be a .NET binary, and if it is and only has a managed code entry point
// the value at entry is actually a table index and and row index that we parse in
// the value at entry is actually a table index and a row index that we parse in
// the ImageCor20Header class. Use that to create the entry label instead later.
DataDirectory[] dataDirectories = optionalHeader.getDataDirectories();

View file

@ -69,7 +69,7 @@ public class BrowserCodeUnitFormat extends CodeUnitFormat {
/**
* Add a change listener to the underlying format options. When a format change
* occurs the listener may wish to trigger a refresh of of any formatted code units.
* occurs the listener may wish to trigger a refresh of any formatted code units.
* @param listener change listener
*/
public void addChangeListener(ChangeListener listener) {

View file

@ -38,7 +38,7 @@ import ghidra.program.util.ProgramLocation;
/**
* Generates a text label that lists the function tags for each {@link Function}. The
* label will will appear as part of the FUNCTION group in the field map.
* label will appear as part of the FUNCTION group in the field map.
*/
public class FunctionTagFieldFactory extends FieldFactory {

View file

@ -36,7 +36,7 @@ import ghidra.program.util.ProgramLocation;
/**
* Generates a text label on each {@link CodeUnit} that marks the start of a memory block. The
* label will will appear as part of the PLATE group in the field map.
* label will appear as part of the PLATE group in the field map.
*/
public class MemoryBlockStartFieldFactory extends FieldFactory {

View file

@ -80,7 +80,7 @@ public class MultiListingLayoutModel implements ListingModelListener, FormatMode
/**
* Returns the ListingLayoutModel for the i'th program.
* @param index the index of program for which to return a listing model
* @return the the ListingLayoutModel for the i'th program.
* @return the ListingLayoutModel for the i'th program.
*/
public ListingModel getAlignedModel(int index) {
return alignedModels[index];

View file

@ -34,7 +34,7 @@ public interface TableDataLoader<T> {
/**
* Loads data into the given accumulator
* @param accumulator the the accumulator for storing table data
* @param accumulator the accumulator for storing table data
* @param monitor the {@link TaskMonitor}
* @throws CancelledException if the operation is cancelled
*/

View file

@ -25,7 +25,7 @@ import ghidra.formats.gfilesystem.crypto.PasswordDialog.RESULT_STATE;
import ghidra.framework.generic.auth.Password;
/**
* Pops up up a GUI dialog prompting the user to enter a password for the specified file.
* Pops up a GUI dialog prompting the user to enter a password for the specified file.
* <p>
* The dialog is presented to the user when the iterator's hasNext() is called.
* <p>

View file

@ -26,7 +26,7 @@ public class GhidraProgramUtilities {
/**
* Returns the current program for the given tool or null if no program is open.
* @param tool the tool get get the current program for
* @param tool the tool get the current program for
* @return the current program for the given tool or null if no program is open
*/
public static Program getCurrentProgram(PluginTool tool) {

View file

@ -410,7 +410,7 @@ public class ProgramDiff {
* program1 and program2.
* @return the initialized memory addresses in common between
* program1 and program2.
* The addresses in the this set are derived from program1.
* The addresses in this set are derived from program1.
*/
public AddressSet getInitializedInCommon() {
return pgmMemComp.getInitializedAddressesInCommon();

View file

@ -424,7 +424,7 @@ public class ProgramMemoryUtil {
* Direct references are only found at addresses that match the indicated alignment.
* @param program the program whose memory is to be checked.
* @param alignment direct references are to only be found at the indicated alignment in memory.
* @param codeUnit the code unit to to search for references to.
* @param codeUnit the code unit to search for references.
* @param monitor a task monitor for progress or to allow canceling.
* @return list of addresses referring directly to the toAddress.
*/

View file

@ -124,7 +124,7 @@ public abstract class AbstractSelectionNavigationAction extends ToggleDockingAct
private void initialize() {
// We want to load our state after we have been associated with a DockingWindowManager.
// If the table is displayable, then we are are properly setup...
// If the table is displayable, then we are properly setup...
if (table.isDisplayable()) {
restoreState();
return;

View file

@ -32,7 +32,7 @@ import docking.widgets.table.*;
* and Addresses.
* <p>
* This interface is an ExtensionPoint so that once created, they will be ingested automatically
* by Ghidra. Once discovered, these mappers will be used to provide dynamic columns to to
* by Ghidra. Once discovered, these mappers will be used to provide dynamic columns to
* tables with row types that match <code>ROW_TYPE</code>.
* <p>
* This column is an extension of {@link TableRowMapper} that has knowledge of

View file

@ -71,7 +71,7 @@ public class LocationReferencesPlugin1Test extends AbstractLocationReferencesTes
Address otherAddress = addr(0x01008014); // 0x1 ONE; this also has references
assertTrue(applyCmd(program, new CreateDataCmd(otherAddress, enoom)));
// this is the address will will use to search
// this is the address we will use to search
Address address = addr(0x01008019); // 0x0 ZERO
assertTrue(applyCmd(program, new CreateDataCmd(address, enoom)));

View file

@ -242,7 +242,7 @@ public class SearchTextPlugin1Test extends AbstractGhidraHeadedIntegrationTest {
@Test
public void testSearchStringEntry() throws Exception {
// verify that a string string must be entered
// verify that a string must be entered
SearchTextDialog dialog = getDialog();

View file

@ -759,7 +759,7 @@ public class SymbolTreePlugin1Test extends AbstractGhidraHeadedIntegrationTest {
//
// This tests a particular edge case where adding a function inside of a class would cause
// the tree to throw an exception to to an improper child node lookup. This test was
// the tree to throw an exception due to an improper child node lookup. This test was
// triggering the exception before the fix.
//
showSymbolTree();

View file

@ -595,7 +595,7 @@ public class DataTypeSelectionDialogTest extends AbstractGhidraHeadedIntegration
// We are trying to test that the user can type the name of a type (not pick it from the
// list) that exists in an open archive *that is not set on the dialog*. The intent is
// that if we have to parse the text provided by the user, that we don't automatically
// pick one when it is an an archive that we didn't specify (like the program archive).
// pick one when it is an archive that we didn't specify (like the program archive).
//
// To test this, start with 3 types in a file archive: foo and a typedef to foo
// (foo_typedef) and a pointer to the typedef.

View file

@ -182,7 +182,7 @@ int (__stdcall * GetSectionBlock) (
#pragma region Input compatibility macros
// nothing will parse after this line if the this fails
// nothing will parse after this line if this fails
#pragma test for, pragma, with, commas outside parens
#pragma region System Family (kernel drivers) with Desktop Family for compat

View file

@ -318,7 +318,7 @@
<BLOCKQUOTE>
<P>This will merge the selected sequences into one sequence. For a given bit
position in the merged sequence, if all selected sequences agree on that position
the the merge will contain that value, otherwise it will contain a dit in that
the merge will contain that value, otherwise it will contain a dit in that
position.</P>
</BLOCKQUOTE>

View file

@ -39,7 +39,7 @@ public class FunctionStartFuncAnalyzer extends FunctionStartAnalyzer {
throws CancelledException {
// check that the check function later property has been set at the functions start
// before passing the cut down address set to the real search algorithm to to the correct action
// before passing the cut down address set to the real search algorithm to take the correct action
AddressSet potentialPreMatches =
getOrCreatePotentialMatchPropertyMap(program).getAddressSet();
set = set.intersect(potentialPreMatches);

View file

@ -286,7 +286,7 @@ public class MemoryByteBlock implements ByteBlock {
* it should return 0. A natural alignment only exists if there is some underlying indexing
* structure that isn't based at 0. For example, if the underlying structure is address based
* and the starting address is not 0, then the natural alignment is the address offset mod the
* radix (if the starting address is 10 and the radix is 4, then then the alignment is 2)).
* radix (if the starting address is 10 and the radix is 4, then the alignment is 2)).
*/
@Override
public int getAlignment(int radix) {

View file

@ -151,7 +151,7 @@ public interface ByteBlock {
* there is some underlying indexing structure that isn't based at 0. For example,
* if the underlying structure is address based and the starting address is not 0,
* then the natural alignment is the address offset mod the radix (if the starting
* address is 10 and the radix is 4, then then the alignment is 2)).
* address is 10 and the radix is 4, then the alignment is 2)).
*/
public int getAlignment(int radix);
}

View file

@ -692,7 +692,7 @@ public class Pinning {
}
/**
* Determine if a token should be be filtered from match display.
* Determine if a token should be filtered from match display.
* Some tokens like "," and " " may be attached to matchable operations but can
* clutter the display if they are highlighted for a match.
* @param token is the specific token to check

View file

@ -136,7 +136,7 @@ public:
/// \brief A group of actions (generally) applied in sequence
///
/// This is a a list of Action objects, which are usually applied in sequence.
/// This is a list of Action objects, which are usually applied in sequence.
/// But the behavior properties of each individual Action may affect this.
/// Properties (like rule_repeatapply) may be put directly to this group
/// that also affect how the Actions are applied.

View file

@ -16,7 +16,7 @@
/// \file address.hh
/// \brief Classes for specifying addresses and other low-level constants
///
/// All addresses are absolute and there are are no registers in CPUI. However,
/// All addresses are absolute and there are no registers in CPUI. However,
/// all addresses are prefixed with an "immutable" pointer, which can
/// specify a separate RAM space, a register space, an i/o space etc. Thus
/// a translation from a real machine language will typically simulate registers

View file

@ -1166,7 +1166,7 @@ ProtoModel *Architecture::createUnknownModel(const string &modelName)
return model;
}
/// This looks for the \<processor_spec> tag and and sets configuration
/// This looks for the \<processor_spec> tag and sets configuration
/// parameters based on it.
/// \param store is the document store holding the tag
void Architecture::parseProcessorConfig(DocumentStorage &store)

View file

@ -398,7 +398,7 @@ bool FlowBlock::dominates(const FlowBlock *subBlock) const
/// We assume the given block has 2 out-edges and that \b this block is immediately reached by
/// one of these two edges. Some condition holds when traversing the out-edge to \b this, and the complement
/// of the condition holds for traversing the other out-edge. We verify that the condition holds for
/// this entire block. More specifically, we check that that there is no path to \b this through the
/// this entire block. More specifically, we check that there is no path to \b this through the
/// sibling edge, where the complement of the condition holds (unless we loop back through the conditional block).
/// \param cond is the conditional block with 2 out-edges
/// \return \b true if the condition holds for this block
@ -3479,7 +3479,7 @@ void BlockSwitch::addCase(FlowBlock *switchbl,FlowBlock *bl,uint4 gt)
void BlockSwitch::grabCaseBasic(FlowBlock *switchbl,const vector<FlowBlock *> &cs)
{
vector<int4> casemap(switchbl->sizeOut(),-1); // Map from from switchtarget's outindex to position in caseblocks
vector<int4> casemap(switchbl->sizeOut(),-1); // Map from switchtarget's outindex to position in caseblocks
caseblocks.clear();
for(int4 i=1;i<cs.size();++i) {
FlowBlock *casebl = cs[i];

View file

@ -163,7 +163,7 @@ class TraceDAG {
FlowBlock *finishblock; ///< Designated exit block for the DAG (or null)
void removeTrace(BlockTrace *trace); ///< Remove the indicated BlockTrace
void processExitConflict(list<BadEdgeScore>::iterator start,list<BadEdgeScore>::iterator end);
BlockTrace *selectBadEdge(void); ///< Select the the most likely unstructured edge from active BlockTraces
BlockTrace *selectBadEdge(void); ///< Select the most likely unstructured edge from active BlockTraces
void insertActive(BlockTrace *trace); ///< Move a BlockTrace into the \e active category
void removeActive(BlockTrace *trace); ///< Remove a BlockTrace from the \e active category
bool checkOpen(BlockTrace *trace); ///< Check if we can push the given BlockTrace into its next node

View file

@ -177,8 +177,8 @@ uint4 ArraySequence::selectStringCopyFunction(int4 &index)
/// \brief Set-up for recovering COPY ops into a memory range, given a Symbol and an Address being COPYed into
///
/// The SymbolEntry and Address are passed in, with an expected data-type. Check if there is an array
/// of the data-type within the Symbol, and if so, initialize the memory range for the the sequence.
/// Follow on with gathering PcodeOps and testing if the sequence is viable. If not, the the size the memory
/// of the data-type within the Symbol, and if so, initialize the memory range for the sequence.
/// Follow on with gathering PcodeOps and testing if the sequence is viable. If not, the size of the memory
/// range will be set to zero.
/// \param fdata is the function containing the root COPY
/// \param ct is the specific data-type for which there should be an array

View file

@ -61,7 +61,7 @@ SymbolEntry::SymbolEntry(Symbol *sym)
/// is set to \e invalid, and the \b hash becomes the primary location information.
/// \param sym is the underlying Symbol
/// \param exfl are the Varnode flags associated with the storage location
/// \param h is the the hash
/// \param h is the hash
/// \param off if the offset into the Symbol for this (piece of) storage
/// \param sz is the size in bytes of this (piece of) storage
/// \param rnglist is the set of code addresses where \b this SymbolEntry represents the Symbol

View file

@ -713,7 +713,7 @@ public:
/// \brief Restore attributes for \b this from a parent element that is not a Scope
///
/// Attributes are read from the (already opened) element, prior to reading reading the
/// Attributes are read from the (already opened) element, prior to reading the
/// \<scope> element specific to \b this Scope
/// \param decoder is the stream decoder
virtual void decodeWrappingAttributes(Decoder &decoder) {}

View file

@ -206,7 +206,7 @@ bool ParamEntry::containedBy(const Address &addr,int4 sz) const
return (entryoff <= rangeoff);
}
/// If \b this a a \e join, each piece is tested for intersection.
/// If \b this is a \e join, each piece is tested for intersection.
/// Otherwise, \b this, considered as a single memory, is tested for intersection.
/// \param addr is the starting address of the given memory range to test against
/// \param sz is the number of bytes in the given memory range

View file

@ -1724,7 +1724,7 @@ void Funcdata::prepareThisPointer(void)
return; // Data-type will be obtained directly from symbol
}
// Its possible that a recommendation for the "this" pointer has already been been collected.
// It's possible that a recommendation for the "this" pointer has already been collected.
// Currently the only type recommendations are for the "this" pointer. If there any, it is for "this"
if (localmap->hasTypeRecommendations())
return;

View file

@ -1083,7 +1083,7 @@ bool Heritage::discoverIndexedStackPointers(AddrSpace *spc,vector<PcodeOp *> &fr
// If there were no traversals (of non-constant ADD or MULTIEQUAL) then the
// pointer is equal to the stackpointer plus a constant (through an indirect is possible)
// This will likely get resolved in the next heritage pass, but we leave the
// spacebaseptr mark on, so that that the indirects don't get removed
// spacebaseptr mark on, so the indirects don't get removed
fd->opMarkSpacebasePtr(op);
}
}

View file

@ -801,7 +801,7 @@ void Merge::collectInputs(HighVariable *high,vector<PcodeOpNode> &oplist,PcodeOp
}
}
/// \brief Snip instances of the output of an INDIRECT that are also inputs to to the underlying PcodeOp
/// \brief Snip instances of the output of an INDIRECT that are also inputs to the underlying PcodeOp
///
/// Examine the output HighVariable for the given INDIRECT op. Varnode instances (or pieces) that are also
/// inputs to the underlying PcodeOp causing the INDIRECT are snipped by creating a new COPY op from the

View file

@ -440,7 +440,7 @@ public:
/// \brief Set a pending print callback
///
/// The callback will be issued prior to the the next call to tagLine() unless
/// The callback will be issued prior to the next call to tagLine() unless
/// a the method cancelPendingPrint() is called first.
/// \param pend is the callback to be issued
void setPendingPrint(PendPrint *pend) { pendPrint = pend; }

View file

@ -361,7 +361,7 @@ public:
///
/// When a variable has TypePointerRel as its data-type, PTRSUB acts relative to the \e parent
/// data-type. We print a specific token to indicate this relative shift is happening.
/// \param op is is the PTRSUB op
/// \param op is the PTRSUB op
inline void PrintC::pushTypePointerRel(const PcodeOp *op)
{

View file

@ -200,7 +200,7 @@ CircleRange::CircleRange(bool val)
/// A size specifies the number of bytes (*8 to get number of bits) in the mask.
/// The stride is assumed to be 1.
/// \param val is is the single value
/// \param val is the single value
/// \param size is the size of the mask in bytes
CircleRange::CircleRange(uintb val,int4 size)
@ -228,7 +228,7 @@ void CircleRange::setRange(uintb lft,uintb rgt,int4 size,int4 stp)
/// A size specifies the number of bytes (*8 to get number of bits) in the mask.
/// The stride is assumed to be 1.
/// \param val is is the single value
/// \param val is the single value
/// \param size is the size of the mask in bytes
void CircleRange::setRange(uintb val,int4 size)

View file

@ -6176,7 +6176,7 @@ bool AddTreeState::checkTerm(Varnode *vn,uint8 treeCoeff)
/// Recursively walk the sub-tree from the given root.
/// Terms that are a \e multiple of the base data-type size are accumulated either in
/// the the sum of constant multiples or the container of non-constant multiples.
/// the sum of constant multiples or the container of non-constant multiples.
/// Terms that are a \e non-multiple are accumulated either in the sum of constant
/// non-multiples or the container of non-constant non-multiples. The constant
/// non-multiples are counted twice, once in the sum, and once in the container.

Some files were not shown because too many files have changed in this diff Show more