Git Product home page Git Product logo

Comments (20)

astrelsky avatar astrelsky commented on August 23, 2024

Hello when I run gradle -PGHIDRA_INSTALL_DIR=/op/ghidra buildExtension I get an infinite loop that full my memory and crash my computer.
Gradle saif that it can't find a suitable daemon.

Hmm. This seems more like an issue with gradle if it cannot find a suitable daemon. The mechanism being used for GHIDRA_INSTALL_DIR is the same as what is provided by ghidra's buildExtension.gradle and my modifications are only for running test and building documentation.

Is ghidra actually in the directory /op or did you intend to write /opt?

What version of gradle are you using?

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

yes sure the path is /opt, sorry its copy past.
Version of gradle:

-> $ gradle -v

------------------------------------------------------------
Gradle 6.3
------------------------------------------------------------

Build time:   2020-03-24 22:12:49 UTC
Revision:     <unknown>

Kotlin:       1.3.70
Groovy:       2.5.10
Ant:          Apache Ant(TM) version 1.10.7 compiled on September 1 2019
JVM:          13.0.2 (Oracle Corporation 13.0.2+8)
OS:           Linux 5.5.13-arch2-1 amd64

you are right, it's definitely gradle problem, when I do gradle init in a folder I got the same error.
Tried to remove everything what is is ~/.gradle same shit. Opened a case in gradle github.

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

now trying on a ubuntu VM, get this error:

 What went wrong:
A problem occurred evaluating root project 'Ghidra-Cpp-Class-Analyzer'.
> Could not find method runtimeOnly() for arguments [directory '/root/ghidra/Ghidra/Framework'] on root project 'Ghidra-Cpp-Class-Analyzer'.
root@ubuntu-xenial:~/Ghidra-Cpp-Class-Analyzer# ls /root/ghidra/Ghidra/Framework/
DB  Demangler  Docking  FileSystem  Generic  Graph  Help  Project  SoftwareModeling  Utility

Ups sorry I think the problem is there because this useless distribution is using gradle version 2.3, let me install 6.0 and come back
Same problem on this useless os:

root@ubuntu-xenial:~/Ghidra-Cpp-Class-Analyzer# /root/gradle-6.3/bin/gradle
root@ubuntu-xenial:~/Ghidra-Cpp-Class-Analyzer# /root/gradle-6.3/bin/gradle -PGHIDRA_INSTALL_DIR=/root/ghidra buildExtension
Welcome to Gradle 6.3!
Here are the highlights of this release:
- Java 14 support
- Improved error messages for unexpected failures
For more details see https://docs.gradle.org/6.3/release-notes.html
Starting a Gradle Daemon (subsequent builds will be faster)
Starting a Gradle Daemon, 1 busy Daemon could not be reused, use --status for details
Starting a Gradle Daemon, 2 busy Daemons could not be reused, use --status for details
Starting a Gradle Daemon, 3 busy Daemons could not be reused, use --status for details
Starting a Gradle Daemon, 4 busy Daemons could not be reused, use --status for details
Starting a Gradle Daemon, 5 busy Daemons could not be reused, use --status for details
Starting a Gradle Daemon, 6 busy Daemons could not be reused, use --status for details
Starting a Gradle Daemon, 7 busy Daemons could not be reused, use --status for details
Starting a Gradle Daemon, 8 busy Daemons could not be reused, use --status for details
Starting a Gradle Daemon, 9 busy Daemons could not be reused, use --status for details

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

Im' fed off , can you share release for latest ghidra/java please ?

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

Im' fed off , can you share release for latest ghidra/java please ?

Yes no problem. I will do so later today. Are you looking for one of the latest 9.1 ghidra release or the current development version of ghidra 9.2? (NationalSecurityAgency/ghidra@bcb825f)

Please keep in mind that we may be in different time-zones so responses may be delayed.

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

yes no problem for timezone. It's ok I made the compilation works on ubuntu 18 only. But when I want to install for latest ghidra: https://ghidra-sre.org/ghidra_9.1.2_PUBLIC_20200212.zip then I get Extension version for ghidra-cpp-clas-anal is incompatible with Ghidra.

EDIT: It's ok i fixed it modifying the extension.properties and fixiing the 9.1.2 in 9.1

but now I get trouble finding documentation on how to run your plugin. you mention in the "documentation": To use simply add the ghidra_scripts folder into Ghidra's scripts path, run the GccRtti analyzer and then run parse_vtable_db.py. For best results run the parser before running the C++ Class Analyzer. but there is no "GccRTTI analyzer" in the scripts folder. I found:

ClassReferences.java DynamicCaster.java parse_vtable_db.py vtable_dumper.py

For example. if I run vtable_dumper.py I get this:

vtable_dumper.py> Running...
Traceback (most recent call last):
  File "/opt/ghidra/Ghidra/Extensions/Ghidra-Cpp-Class-Analyzer/ghidra_scripts/vtable_dumper.py", line 88, in <module>
    types = get_types(symbol_table)
  File "/opt/ghidra/Ghidra/Extensions/Ghidra-Cpp-Class-Analyzer/ghidra_scripts/vtable_dumper.py", line 41, in get_types
    return getClassTypeInfoList(currentProgram)
TypeError: getClassTypeInfoList(): expected 2 args; got 1

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

yes no problem for timezone. It's ok I made the compilation works on ubuntu 18 only. But when I want to install for latest ghidra: https://ghidra-sre.org/ghidra_9.1.2_PUBLIC_20200212.zip then I get Extension version for ghidra-cpp-clas-anal is incompatible with Ghidra.

EDIT: It's ok i fixed it modifying the extension.properties and fixiing the 9.1.2 in 9.1

but now I get trouble finding documentation on how to run your plugin. you mention in the "documentation": To use simply add the ghidra_scripts folder into Ghidra's scripts path, run the GccRtti analyzer and then run parse_vtable_db.py. For best results run the parser before running the C++ Class Analyzer. but there is no "GccRTTI analyzer" in the scripts folder. I found:

ClassReferences.java DynamicCaster.java parse_vtable_db.py vtable_dumper.py

For example. if I run vtable_dumper.py I get this:

vtable_dumper.py> Running...
Traceback (most recent call last):
  File "/opt/ghidra/Ghidra/Extensions/Ghidra-Cpp-Class-Analyzer/ghidra_scripts/vtable_dumper.py", line 88, in <module>
    types = get_types(symbol_table)
  File "/opt/ghidra/Ghidra/Extensions/Ghidra-Cpp-Class-Analyzer/ghidra_scripts/vtable_dumper.py", line 41, in get_types
    return getClassTypeInfoList(currentProgram)
TypeError: getClassTypeInfoList(): expected 2 args; got 1

The version number is strange. It gets automatically set to the version of ghidra in GHIDRA_INSTALL_DIR when I build the extension. For reference what did you set the value to?

The GccRTTIAnalyzer and Class Analyzers will appear among the rest of the analyzers under
Analysis->Auto Analyze

I just fixed the missing argument in vtable_dumper.py in 2c8427e thank you.

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

Ok. What is the exact procedure to run your tool ? the documentation is not clear to me. Do I need to run dumper before /or after etc ? Can you make a clear how to step ? Like 1. Run the auto analysis, 2. Run dumper 3. etc ? thanks for your plugin

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

Ok. What is the exact procedure to run your tool ? the documentation is not clear to me. Do I need to run dumper before /or after etc ? Can you make a clear how to step ? Like 1. Run the auto analysis, 2. Run dumper 3. etc ? thanks for your plugin

  1. Run GCC RTTI Analyzer/Windows RTTI Analyzer
  2. If Gcc compiled binary and the binary has been stripped, run the parse_vtable_db script. Otherwise continue to step 3.
  3. Run GCC C++ Class Analyzer/Windows C++ Class Analyzer
  4. Report any problems.

If you happen to have a copy of the exact libraries the binary is linking against then you can run the dumping scripts on the libraries. The gdt and json files I distribute with the releases were created from libstdc++.so. Unfortunately I have been unable to track down the corresponding library for Visual Studio compiled binaries so there is only one available for gcc/clang.

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

ok on my way doing it. It's normal that Locating Type information take a lot of time ?

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

ok on my way doing it. It's normal that Locating Type information take a lot of time ?

Yes

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

like a whole night for a small DLL ? and if something break it's possible to continue from where it left ? it seems to be blocked at 79% is there a way to know if it's break ?

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

like a whole night for a small DLL ? and if something break it's possible to continue from where it left ? it seems to be blocked at 79% is there a way to know if it's break ?

No that's not normal. Which analyzer is stuck?

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

get this:

An unexpected error occurred while processing the command: Auto Analysis
java.lang.OutOfMemoryError: Java heap space
	at ghidra.program.model.data.DataTypeImpl.<init>(DataTypeImpl.java:50)
	at ghidra.program.model.data.GenericDataType.<init>(GenericDataType.java:40)
	at ghidra.program.model.data.CompositeDataTypeImpl.<init>(CompositeDataTypeImpl.java:52)
	at ghidra.program.model.data.StructureDataType.<init>(StructureDataType.java:89)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:671)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)

---------------------------------------------------
Build Date: 2020-Feb-20 2210 UTC
Ghidra Version: 9.1
Java Home: /usr/lib/jvm/java-11-openjdk
JVM Version: Oracle Corporation 11.0.6
OS: Linux 5.6.2-arch1-2 amd64
Workstation: localhost.localdomain

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

get this:

An unexpected error occurred while processing the command: Auto Analysis
java.lang.OutOfMemoryError: Java heap space
	at ghidra.program.model.data.DataTypeImpl.<init>(DataTypeImpl.java:50)
	at ghidra.program.model.data.GenericDataType.<init>(GenericDataType.java:40)
	at ghidra.program.model.data.CompositeDataTypeImpl.<init>(CompositeDataTypeImpl.java:52)
	at ghidra.program.model.data.StructureDataType.<init>(StructureDataType.java:89)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:671)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)

---------------------------------------------------
Build Date: 2020-Feb-20 2210 UTC
Ghidra Version: 9.1
Java Home: /usr/lib/jvm/java-11-openjdk
JVM Version: Oracle Corporation 11.0.6
OS: Linux 5.6.2-arch1-2 amd64
Workstation: localhost.localdomain

I see. That's the same as what is being encountered in #13 . The stack trace is helpful though as it appears there is some infinite recursion somewhere in the AbstractCppClassBuilder or the Gcc/Windows CppClassBuilder. I'll try to look into it this weekend if time allows.

May I have a copy of your application.log? It should be in ~/.ghidra/$ghidra_version. It is ok if you edit the log as it will contain file names and things you may wish to alter.

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024
2020-04-10 08:48:52 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:49:17 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:49:44 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:50:09 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:52:39 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:53:44 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:54:36 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:56:00 ERROR (RunManager$RunnerJob) Unexpected error processing runnable: Decompiler java.lang.RuntimeException: Timed-out waiting to run a Swing task--potential deadlock!
	at ghidra.util.Swing.runNow(Swing.java:180)
	at ghidra.util.SystemUtilities.runSwingNow(SystemUtilities.java:253)
	at ghidra.util.task.RunManager$RunnerJob.doExecute(RunManager.java:340)
	at ghidra.util.task.RunManager$RunnerJob.run(RunManager.java:309)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:133)
	at ghidra.util.worker.AbstractWorker$JobCallback.process(AbstractWorker.java:123)
	at generic.concurrent.ConcurrentQ$CallbackCallable.call(ConcurrentQ.java:655)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at generic.concurrent.FutureTaskMonitor.run(FutureTaskMonitor.java:75)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: ghidra.util.exception.UnableToSwingException: Timed-out waiting for Swing thread lock in 20 SECONDS
	at ghidra.util.Swing.waitFor(Swing.java:259)
	at ghidra.util.Swing.runNow(Swing.java:238)
	at ghidra.util.Swing.runNow(Swing.java:166)
	... 11 more
 
2020-04-10 08:58:15 ERROR (BackgroundCommandTask) Command Failure: An unexpected error occurred while processing the command: Auto Analysis java.lang.OutOfMemoryError: Java heap space
	at ghidra.program.model.data.DataTypeImpl.<init>(DataTypeImpl.java:50)
	at ghidra.program.model.data.GenericDataType.<init>(GenericDataType.java:40)
	at ghidra.program.model.data.CompositeDataTypeImpl.<init>(CompositeDataTypeImpl.java:52)
	at ghidra.program.model.data.StructureDataType.<init>(StructureDataType.java:89)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:671)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
	at ghidra.program.model.data.StructureDataType.doReplaceWithUnaligned(StructureDataType.java:984)
	at ghidra.program.model.data.StructureDataType.replaceWith(StructureDataType.java:946)
	at ghidra.program.database.data.StructureDB.clone(StructureDB.java:673)
	at ghidra.program.model.data.UnionDataType.doAdd(UnionDataType.java:134)
	at ghidra.program.model.data.UnionDataType.replaceWith(UnionDataType.java:479)
	at ghidra.program.database.data.UnionDB.clone(UnionDB.java:363)
 
2020-04-10 08:58:15 ERROR (ToolTaskManager) Auto Analysis Failed: Unspecified error occurred.  

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

did you where able to see why it fail ?

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

did you where able to see why it fail ?

I can't say for sure but even though none of my classes are in the stack tract this is likely my fault. A large commit should be coming within the next few weeks that has DB classes for ClassTypeInfo and Vtable to work with ghidra's database system. I'm using this opportunity to clean up some things and fix potential issues. Hopefully whatever caused this will get resolved by it.

from ghidra-cpp-class-analyzer.

dummys avatar dummys commented on August 23, 2024

oh cool, waiting for it to test then :D thanks for hard work

from ghidra-cpp-class-analyzer.

astrelsky avatar astrelsky commented on August 23, 2024

I believe I have fixed the recursion issue. The fix will be present when version 2.0 is released.

from ghidra-cpp-class-analyzer.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.