Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoreutarass2008-06-23 17:26:06 +0000
committereutarass2008-06-23 17:26:06 +0000
commitb975e7bbc93133f35a5bc31747e2c7e30f5c2d5d (patch)
treedc286d240675b2cdc3b16906ff47ae98fcdd3310 /plugins/org.eclipse.tm.tcf.debug.ui
parentc4534274267e6b8a0aa2a7d0f0f5e9348d04909d (diff)
downloadorg.eclipse.tcf-b975e7bbc93133f35a5bc31747e2c7e30f5c2d5d.tar.gz
org.eclipse.tcf-b975e7bbc93133f35a5bc31747e2c7e30f5c2d5d.tar.xz
org.eclipse.tcf-b975e7bbc93133f35a5bc31747e2c7e30f5c2d5d.zip
1. TCF Agent: implemented handling of DLLs and shared libraries for Windows and Linux.
2. context.h now defines a type ContextAddress to represent addresses in a context memory. 3. context.[hc]: in order to simplify context state logic, changed context_attach() function to be asynchronous
Diffstat (limited to 'plugins/org.eclipse.tm.tcf.debug.ui')
-rw-r--r--plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/launch/TCFSelfTest.java29
1 files changed, 19 insertions, 10 deletions
diff --git a/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/launch/TCFSelfTest.java b/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/launch/TCFSelfTest.java
index 5c1d74b17..7e7c36211 100644
--- a/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/launch/TCFSelfTest.java
+++ b/plugins/org.eclipse.tm.tcf.debug.ui/src/org/eclipse/tm/internal/tcf/debug/ui/launch/TCFSelfTest.java
@@ -298,20 +298,29 @@ class TCFSelfTest {
private void startProcess() {
if (cancel || cnt == 4) {
if (!map.isEmpty()) {
- Protocol.sync(new Runnable() {
+ new Thread() {
public void run() {
- sync_cnt++;
- if (map.isEmpty()) {
- exit(null);
- }
- else if (sync_cnt < 1000) {
- Protocol.sync(this);
+ try {
+ sleep(100);
}
- else {
- exit(new Error("Missing 'contextRemoved' event for " + map.keySet()));
+ catch (InterruptedException e) {
}
+ Protocol.invokeLater(new Runnable() {
+ public void run() {
+ sync_cnt++;
+ if (map.isEmpty()) {
+ exit(null);
+ }
+ else if (sync_cnt < 300) {
+ startProcess();
+ }
+ else {
+ exit(new Error("Missing 'contextRemoved' event for " + map.keySet()));
+ }
+ }
+ });
}
- });
+ }.start();
}
else {
exit(null);

Back to the top