diff options
author | Eugene Tarassov | 2016-03-09 20:06:59 +0000 |
---|---|---|
committer | Eugene Tarassov | 2016-03-09 20:06:59 +0000 |
commit | 6c424436a8410542b81c80d54efce8fa3952f62a (patch) | |
tree | b6fe50bf80fdcc5ac9a3ff73fb701306ffaca625 | |
parent | d1e9fe8fd903d54b20cdbdc6492317757008a6f7 (diff) | |
download | org.eclipse.tcf-6c424436a8410542b81c80d54efce8fa3952f62a.tar.gz org.eclipse.tcf-6c424436a8410542b81c80d54efce8fa3952f62a.tar.xz org.eclipse.tcf-6c424436a8410542b81c80d54efce8fa3952f62a.zip |
TCF Debugger: fixed: cannot write 0 to write-only register in the Registers view
-rw-r--r-- | plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java index 7a355b605..5f5a85806 100644 --- a/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java +++ b/plugins/org.eclipse.tcf.debug.ui/src/org/eclipse/tcf/internal/debug/ui/model/TCFNodeRegister.java @@ -701,12 +701,12 @@ public class TCFNodeRegister extends TCFNode implements IElementEditor, IWatchIn original_value = null; final TCFNodeRegister node = (TCFNodeRegister)element; try { - return original_value = new TCFTask<String>() { + original_value = new TCFTask<String>() { public void run() { if (!node.context.validate(this)) return; IRegisters.RegistersContext ctx = node.context.getData(); if (!ctx.isReadable()) { - done("0"); + done(""); return; } if (!node.value.validate(this)) return; @@ -723,6 +723,12 @@ public class TCFNodeRegister extends TCFNode implements IElementEditor, IWatchIn done(null); } }.get(1, TimeUnit.SECONDS); + if ("".equals(original_value)) { + /* Write only register */ + original_value = null; + return "0"; + } + return original_value; } catch (Exception e) { return null; |