Merge remote-tracking branch 'origin/patch'

This commit is contained in:
ghidra1 2022-01-28 23:50:16 -05:00
commit 35d30b971c
5 changed files with 29 additions and 17 deletions

View file

@ -378,6 +378,7 @@ public class TableChooserDialog extends DialogComponentProvider
return rowObjects;
}
@Override
public void dispose() {
table.dispose();
workers.forEach(w -> w.cancel(true));
@ -421,24 +422,30 @@ public class TableChooserDialog extends DialogComponentProvider
@Override
public Component getTableCellRendererComponent(GTableCellRenderingData data) {
Component superRenderer;
if (delegate instanceof GTableCellRenderer) {
superRenderer = super.getTableCellRendererComponent(data);
Component renderer;
if (delegate == null) {
renderer = super.getTableCellRendererComponent(data);
}
else {
superRenderer = super.getTableCellRendererComponent(data.getTable(),
data.getValue(), data.isSelected(), data.hasFocus(), data.getRowViewIndex(),
data.getColumnViewIndex());
if (delegate instanceof GTableCellRenderer) {
renderer =
((GTableCellRenderer) delegate).getTableCellRendererComponent(data);
}
else {
renderer = delegate.getTableCellRendererComponent(data.getTable(),
data.getValue(), data.isSelected(), data.hasFocus(), data.getRowViewIndex(),
data.getColumnViewIndex());
}
}
AddressableRowObject ro = (AddressableRowObject) data.getRowObject();
if (sharedPending.contains(ro)) {
superRenderer.setBackground(pendingColor);
superRenderer.setForeground(data.getTable().getSelectionForeground());
superRenderer.setForeground(Color.BLACK);
renderer.setBackground(pendingColor);
renderer.setForeground(data.getTable().getSelectionForeground());
renderer.setForeground(Color.BLACK);
}
return superRenderer;
return renderer;
}
void setDelegate(TableCellRenderer delegate) {

View file

@ -431,6 +431,9 @@ public class FileHeader implements StructConverter {
long oldIndex = reader.getPointerIndex();
int tmpIndex = getPointerToSymbolTable();
if (tmpIndex == 0) {
return;
}
if (!ntHeader.checkRVA(tmpIndex)) {
Msg.error(this, "Invalid file index " + Integer.toHexString(tmpIndex));
return;

View file

@ -38,6 +38,8 @@ public class HorizontalRuleAction extends DockingAction {
super("HorizontalRuleAction: " + ++idCount, owner, false);
setEnabled(false);
markHelpUnnecessary();
// The menu name is both names, one over the other, in a small, light grayish font.
setMenuBarData(new MenuData(new String[] { "<HTML><CENTER><FONT SIZE=2 COLOR=SILVER>" +
fixupFirstAmp(

View file

@ -51,7 +51,7 @@ public class BytesTableColumn extends ProgramLocationTableColumnExtensionPoint<A
{ BYTE_COUNT, MEMORY_OFFSET, ENDIANESS, FORMAT };
private final GColumnRenderer<Byte[]> monospacedRenderer =
new AbstractGColumnRenderer<Byte[]>() {
new AbstractGColumnRenderer<>() {
@Override
protected void configureFont(JTable table, TableModel model, int column) {
setFont(getFixedWidthFont());
@ -75,7 +75,7 @@ public class BytesTableColumn extends ProgramLocationTableColumnExtensionPoint<A
return bytesToString(bytes);
}
StringBuffer buffer = new StringBuffer();
StringBuilder buffer = new StringBuilder();
for (int i = startIx; i != endIx; i += inc) {
if (buffer.length() != 0) {
buffer.append(' ');
@ -86,7 +86,7 @@ public class BytesTableColumn extends ProgramLocationTableColumnExtensionPoint<A
}
private String bytesToString(Byte[] bytes) {
StringBuffer buf = new StringBuffer();
StringBuilder buf = new StringBuilder();
for (byte b : bytes) {
char c = (char) (b & 0xff);
if (c > 32 && c < 128) {

View file

@ -200,12 +200,12 @@ class HelpViewSearcher {
private JEditorPane getHTMLEditorPane(JHelpContentViewer contentViewer) {
//
// Intimate Knowledge - construction of the viewer:
//
//
// -BorderLayout
// -JScrollPane
// -Viewport
// -JHEditorPane extends JEditorPane
//
//
//
Component[] components = contentViewer.getComponents();
JScrollPane scrollPane = (JScrollPane) components[0];
@ -218,12 +218,12 @@ class HelpViewSearcher {
}
private void clearHighlights() {
((TextHelpModel) helpModel).setHighlights(new DefaultHighlight[0]);
((TextHelpModel) helpModel).removeAllHighlights();
}
//==================================================================================================
// Inner Classes
//==================================================================================================
//==================================================================================================
private class FindDialogAction extends AbstractAction {