Skip to main content
summaryrefslogtreecommitdiffstats
path: root/debug
diff options
context:
space:
mode:
authorAlain Magloire2002-09-11 15:12:11 +0000
committerAlain Magloire2002-09-11 15:12:11 +0000
commitcf07dedc007a201de0b03e6198fb975305aea992 (patch)
treea40fa4cbc402598cb4b6a315b005aa27d692322b /debug
parenta345a5476dbfe6a391f7e5538563c3f9104de697 (diff)
downloadorg.eclipse.cdt-cf07dedc007a201de0b03e6198fb975305aea992.tar.gz
org.eclipse.cdt-cf07dedc007a201de0b03e6198fb975305aea992.tar.xz
org.eclipse.cdt-cf07dedc007a201de0b03e6198fb975305aea992.zip
Bug fix the children where not register to the VariableManager
so the ChangeEvent was not issued.
Diffstat (limited to 'debug')
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Value.java10
-rw-r--r--debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java12
2 files changed, 19 insertions, 3 deletions
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Value.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Value.java
index ede41cbdd2c..5352cd8282b 100644
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Value.java
+++ b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/Value.java
@@ -101,7 +101,9 @@ public class Value extends CObject implements ICDIValue {
*/
public ICDIVariable[] getVariables() throws CDIException {
Variable[] variables = null;
- MISession mi = getCTarget().getCSession().getMISession();
+ CSession session = getCTarget().getCSession();
+ MISession mi = session.getMISession();
+ VariableManager mgr = (VariableManager)session.getVariableManager();
CommandFactory factory = mi.getCommandFactory();
MIVarListChildren var =
factory.createMIVarListChildren(variable.getMIVar().getVarName());
@@ -114,8 +116,10 @@ public class Value extends CObject implements ICDIValue {
MIVar[] vars = info.getMIVars();
variables = new Variable[vars.length];
for (int i = 0; i < vars.length; i++) {
- variables[i] =
- new Variable(variable.getStackFrame(), vars[i].getExp(), vars[i]);
+ //variables[i] = new Variable(variable.getStackFrame(), vars[i].getExp(), vars[i]);
+ variables[i] = mgr.createVariable(variable.getStackFrame(),
+ vars[i].getExp(), vars[i]);
+
}
} catch (MIException e) {
//throw new CDIException(e.getMessage());
diff --git a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
index fcfbed3d32e..97290852297 100644
--- a/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
+++ b/debug/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/VariableManager.java
@@ -210,6 +210,18 @@ public class VariableManager extends SessionObject implements ICDIExpressionMana
return var;
}
+ Variable createVariable(StackFrame stack, String name, MIVar miVar )
+ throws CDIException {
+ Element element = new Element();
+ element.miVar = miVar;
+ element.name = name;
+ element.stackframe = stack;
+ Variable var = new Variable(stack, name, miVar);
+ element.variable = var;
+ addElement(element);
+ return var;
+ }
+
ICDIArgument createArgument(StackFrame stack, String name) throws CDIException {
Element element = createElement(stack, name);

Back to the top