GP-2662 - Paste hex in search memory window

This commit is contained in:
dragonmacher 2022-09-29 19:30:45 -04:00
parent 79e239f690
commit e3ed010914
2 changed files with 24 additions and 24 deletions

View file

@ -580,8 +580,8 @@ class MemSearchDialog extends DialogComponentProvider {
memoryBlockGroup.add(loadedBlocks);
memoryBlockGroup.add(allBlocks);
loadedBlocks.setToolTipText(HTMLUtilities.toHTML(
"Only searches memory blocks that are loaded in a running executable.\n " +
loadedBlocks.setToolTipText(HTMLUtilities
.toHTML("Only searches memory blocks that are loaded in a running executable.\n " +
"Ghidra now includes memory blocks for other data such as section headers.\n" +
"This option exludes these OTHER (non loaded) blocks."));
allBlocks.setToolTipText(
@ -793,7 +793,8 @@ class MemSearchDialog extends DialogComponentProvider {
}
private String removeNumberBasePrefixAndSuffix(String str) {
if (!(currentFormat instanceof HexSearchFormat || currentFormat instanceof BinarySearchFormat)) {
if (!(currentFormat instanceof HexSearchFormat ||
currentFormat instanceof BinarySearchFormat)) {
return str;
}
@ -802,12 +803,15 @@ class MemSearchDialog extends DialogComponentProvider {
if (currentFormat instanceof HexSearchFormat) {
if (lowercase.startsWith("0x")) {
numMaybe = numMaybe.substring(2);
} else if (lowercase.startsWith("$")) {
}
else if (lowercase.startsWith("$")) {
numMaybe = numMaybe.substring(1);
} else if (lowercase.endsWith("h")) {
}
else if (lowercase.endsWith("h")) {
numMaybe = numMaybe.substring(0, numMaybe.length() - 1);
}
} else {
}
else {
if (lowercase.startsWith("0b")) {
numMaybe = numMaybe.substring(2);
}

View file

@ -15,8 +15,7 @@
*/
package ghidra.app.plugin.core.searchmem;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.*;
import java.awt.Container;
import java.awt.Window;
@ -99,8 +98,7 @@ public class MnemonicSearchPluginTest extends AbstractGhidraHeadedIntegrationTes
performAction(searchMnemonicOperandsNoConstAction, cb.getProvider(), true);
MemSearchDialog dialog =
waitForDialogComponent(tool.getToolFrame(), MemSearchDialog.class, 2000);
MemSearchDialog dialog = waitForDialogComponent(MemSearchDialog.class);
assertNotNull(dialog);
Container component = dialog.getComponent();
@ -121,8 +119,7 @@ public class MnemonicSearchPluginTest extends AbstractGhidraHeadedIntegrationTes
performAction(searchMnemonicNoOperandsNoConstAction, cb.getProvider(), true);
MemSearchDialog dialog =
waitForDialogComponent(tool.getToolFrame(), MemSearchDialog.class, 2000);
MemSearchDialog dialog = waitForDialogComponent(MemSearchDialog.class);
assertNotNull(dialog);
Container component = dialog.getComponent();
@ -143,8 +140,7 @@ public class MnemonicSearchPluginTest extends AbstractGhidraHeadedIntegrationTes
performAction(searchMnemonicOperandsConstAction, cb.getProvider(), true);
MemSearchDialog dialog =
waitForDialogComponent(tool.getToolFrame(), MemSearchDialog.class, 2000);
MemSearchDialog dialog = waitForDialogComponent(MemSearchDialog.class);
assertNotNull(dialog);
Container component = dialog.getComponent();
@ -181,7 +177,7 @@ public class MnemonicSearchPluginTest extends AbstractGhidraHeadedIntegrationTes
// Here's the main assert: If the code recognizes that we have multiple selection, the
// MemSearchDialog will NOT be displayed (an error message pops up instead). So verify that
// the dialog is null and we're ok.
Window errorDialog = waitForWindow("Mnemonic Search Error", 2000);
Window errorDialog = waitForWindow("Mnemonic Search Error");
assertNotNull(errorDialog);
errorDialog.setVisible(false);
}