Merge remote-tracking branch 'origin/patch'

This commit is contained in:
Ryan Kurtz 2019-11-01 13:58:56 -04:00
commit 86790ca592
3 changed files with 11 additions and 5 deletions

View File

@ -24,5 +24,5 @@
<listAttribute key="org.eclipse.jdt.launching.MODULEPATH"/>
<stringAttribute key="org.eclipse.jdt.launching.PROGRAM_ARGUMENTS" value="ghidra.GhidraRun"/>
<stringAttribute key="org.eclipse.jdt.launching.PROJECT_ATTR" value="Framework Utility"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-XX:+IgnoreUnrecognizedVMOptions -Djava.system.class.loader=ghidra.GhidraClassLoader -Dfile.encoding=UTF8 -Duser.country=US -Duser.language=en -Dsun.java2d.pmoffscreen=false -Dsun.java2d.xrender=true -Dsun.java2d.d3d=false -Xdock:name=&quot;Ghidra&quot; -Dvisualvm.display.name=Ghidra"/>
<stringAttribute key="org.eclipse.jdt.launching.VM_ARGUMENTS" value="-XX:+IgnoreUnrecognizedVMOptions -Djava.system.class.loader=ghidra.GhidraClassLoader -Dfile.encoding=UTF8 -Duser.country=US -Duser.language=en -Dsun.java2d.pmoffscreen=false -Dsun.java2d.xrender=true -Dsun.java2d.d3d=false -Xdock:name=&quot;Ghidra&quot; -Dvisualvm.display.name=Ghidra -Dpython.console.encoding=UTF-8"/>
</launchConfiguration>

View File

@ -171,12 +171,15 @@ public class InterpreterComponentProvider extends ComponentProviderAdapter
@Override
public void componentActivated() {
// Call the callbacks
firstActivationCallbacks.forEach(l -> l.call());
// Since we only care about the first activation, clear the list
// of callbacks so future activations don't trigger anything.
// Since we only care about the first activation, clear the list of callbacks so future
// activations don't trigger anything. First save them off to a local list so when we
// process them we aren't affected by concurrent modification due to reentrance.
List<Callback> callbacks = new ArrayList<>(firstActivationCallbacks);
firstActivationCallbacks.clear();
// Call the callbacks
callbacks.forEach(l -> l.call());
}
@Override

View File

@ -46,6 +46,9 @@ VMARGS=-Dcpu.core.override=
# Default font size for many java swing elements.
VMARGS=-Dfont.size.override=
# Set Jython console encoding (prevents a console error)
VMARGS=-Dpython.console.encoding=UTF-8
# Eclipse on macOS can have file locking issues if the user home directory is networked. Therefore,
# we will disable file locking by default for macOS. Comment the following line out if Eclipse file
# locking is needed and known to work.