diff options
author | Marc Khouzam | 2010-05-20 19:32:28 +0000 |
---|---|---|
committer | Marc Khouzam | 2010-05-20 19:32:28 +0000 |
commit | c901f78d28f35ba7a684bea9796be7e0ae8ed854 (patch) | |
tree | 281e5705a4dcc64b8c28aefa2e2fbc78f72809c3 /dsf-gdb/org.eclipse.cdt.dsf.gdb | |
parent | d46eb7e4b7ca4ee508747f9ae05f04effb7e4d86 (diff) | |
download | org.eclipse.cdt-c901f78d28f35ba7a684bea9796be7e0ae8ed854.tar.gz org.eclipse.cdt-c901f78d28f35ba7a684bea9796be7e0ae8ed854.tar.xz org.eclipse.cdt-c901f78d28f35ba7a684bea9796be7e0ae8ed854.zip |
Bug 305385: Disabled use of 'info program' because the output is inconsistent.
Diffstat (limited to 'dsf-gdb/org.eclipse.cdt.dsf.gdb')
2 files changed, 46 insertions, 34 deletions
diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses.java index 7cecd9377c9..f8273c70a15 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses.java +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/gdb/service/GDBProcesses.java @@ -302,7 +302,14 @@ public class GDBProcesses extends MIProcesses { */ @DsfServiceEventHandler public void eventDispatched(MIStoppedEvent e) { - // Get the PID of the inferior through gdb (if we don't have it already) - fGdb.getInferiorProcess().update(); + +// Post-poned because 'info program' yields different result on different platforms. +// https://bugs.eclipse.org/bugs/show_bug.cgi?id=305385#c20 +// +// // Get the PID of the inferior through gdb (if we don't have it already) +// +// +// fGdb.getInferiorProcess().update(); + } } diff --git a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/MIInferiorProcess.java b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/MIInferiorProcess.java index aa2cb6d5d16..760c48a3e8a 100644 --- a/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/MIInferiorProcess.java +++ b/dsf-gdb/org.eclipse.cdt.dsf.gdb/src/org/eclipse/cdt/dsf/mi/service/command/MIInferiorProcess.java @@ -42,7 +42,6 @@ import org.eclipse.cdt.dsf.gdb.internal.GdbPlugin; import org.eclipse.cdt.dsf.mi.service.IMICommandControl; import org.eclipse.cdt.dsf.mi.service.MIProcesses.ContainerExitedDMEvent; import org.eclipse.cdt.dsf.mi.service.command.commands.CLICommand; -import org.eclipse.cdt.dsf.mi.service.command.output.CLIInfoProgramInfo; import org.eclipse.cdt.dsf.mi.service.command.output.MIConst; import org.eclipse.cdt.dsf.mi.service.command.output.MIExecAsyncOutput; import org.eclipse.cdt.dsf.mi.service.command.output.MIGDBShowExitCodeInfo; @@ -525,35 +524,41 @@ public class MIInferiorProcess extends Process else if ("error".equals(state)) { setState(State.STOPPED); }//$NON-NLS-1$ } - /** - * @since 3.0 - */ - @ConfinedToDsfExecutor("fSession#getExecutor") - public void update() { - // If we don't already know the PID of the inferior, ask GDB for it. - if (getPid() == null && fContainerDMContext != null && !fGiveUpOnPidQuery) { - getCommandControlService().queueCommand( - fCommandFactory.createCLIInfoProgram(fContainerDMContext), - new DataRequestMonitor<CLIInfoProgramInfo>(fSession.getExecutor(), null) { - @Override - protected void handleSuccess() { - if (getPid() == null) { // check again - Long pid = getData().getPID(); - if (pid != null) { - setPid(Long.toString(pid)); - } - else { - // We made the 'program info' request to - // GDB, it gave us an answer, but it either - // doesn't provide the process PID or we - // can't make it out. No point in trying - // again. - fGiveUpOnPidQuery = true; - assert false; // investigate why this is happening - } - } - } - }); - } - } +// +// Post-poned because 'info program' yields different result on different platforms. +// https://bugs.eclipse.org/bugs/show_bug.cgi?id=305385#c20 +// +// /** +// * @since 3.0 +// */ +// @ConfinedToDsfExecutor("fSession#getExecutor") +// public void update() { +// // If we don't already know the PID of the inferior, ask GDB for it. +// if (getPid() == null && fContainerDMContext != null && !fGiveUpOnPidQuery) { +// getCommandControlService().queueCommand( +// fCommandFactory.createCLIInfoProgram(fContainerDMContext), +// new DataRequestMonitor<CLIInfoProgramInfo>(fSession.getExecutor(), null) { +// @Override +// protected void handleSuccess() { +// if (getPid() == null) { // check again +// Long pid = getData().getPID(); +// if (pid != null) { +// setPid(Long.toString(pid)); +// } +// else { +// // We made the 'program info' request to +// // GDB, it gave us an answer, but it either +// // doesn't provide the process PID or we +// // can't make it out. No point in trying +// // again. +// fGiveUpOnPidQuery = true; +// assert false; // investigate why this is happening +// } +// } +// } +// }); +// } +// } +// + } |