1
0
Fork 0
mirror of https://github.com/eclipse-cdt/cdt synced 2025-04-23 14:42:11 +02:00

Bug 370462: Improving the debug preferences - add support for different charsets and unify DSF and CDI debug preferences. Update to DSF-GDB to avoid API change.

This commit is contained in:
Marc Khouzam 2012-03-05 16:11:55 -05:00
parent c61ae8a137
commit 23a8adbdb7
12 changed files with 151 additions and 90 deletions

View file

@ -17,6 +17,7 @@ import java.nio.charset.Charset;
import org.eclipse.cdt.debug.core.CDebugCorePlugin; import org.eclipse.cdt.debug.core.CDebugCorePlugin;
import org.eclipse.cdt.debug.core.ICDebugConstants; import org.eclipse.cdt.debug.core.ICDebugConstants;
import org.eclipse.cdt.debug.core.cdi.ICDIFormat; import org.eclipse.cdt.debug.core.cdi.ICDIFormat;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer; import org.eclipse.core.runtime.preferences.AbstractPreferenceInitializer;
/** /**
@ -41,7 +42,7 @@ public class CDebugCorePreferenceInitializer extends AbstractPreferenceInitializ
CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT, ICDIFormat.NATURAL ); CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_DEFAULT_EXPRESSION_FORMAT, ICDIFormat.NATURAL );
CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT, ICDIFormat.NATURAL ); CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_DEFAULT_REGISTER_FORMAT, ICDIFormat.NATURAL );
CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_CHARSET, Charset.defaultCharset().name() ); CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_CHARSET, Charset.defaultCharset().name() );
if (System.getProperty("os.name").toLowerCase().startsWith("windows")) //$NON-NLS-1$ //$NON-NLS-2$ if (Platform.getOS().equals(Platform.OS_WIN32))
CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_WIDE_CHARSET, "UTF-16"); //$NON-NLS-1$ CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_WIDE_CHARSET, "UTF-16"); //$NON-NLS-1$
else else
CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_WIDE_CHARSET, "UTF-32"); //$NON-NLS-1$ CDebugCorePlugin.getDefault().getPluginPreferences().setDefault( ICDebugConstants.PREF_WIDE_CHARSET, "UTF-32"); //$NON-NLS-1$

View file

@ -19,10 +19,8 @@ package org.eclipse.cdt.dsf.gdb.launching;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.eclipse.cdt.debug.core.CDebugCorePlugin;
import org.eclipse.cdt.debug.core.CDebugUtils; import org.eclipse.cdt.debug.core.CDebugUtils;
import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants; import org.eclipse.cdt.debug.core.ICDTLaunchConfigurationConstants;
import org.eclipse.cdt.debug.core.ICDebugConstants;
import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector; import org.eclipse.cdt.debug.internal.core.sourcelookup.CSourceLookupDirector;
import org.eclipse.cdt.dsf.concurrent.DataRequestMonitor; import org.eclipse.cdt.dsf.concurrent.DataRequestMonitor;
import org.eclipse.cdt.dsf.concurrent.ImmediateDataRequestMonitor; import org.eclipse.cdt.dsf.concurrent.ImmediateDataRequestMonitor;
@ -219,13 +217,33 @@ public class FinalLaunchSequence extends ReflectionSequence {
/** /**
* Set the charsets. * Set the charsets.
* @since 4.0 * @since 4.1
*/ */
@Execute @Execute
public void stepSetCharset(final RequestMonitor requestMonitor) { public void stepSetCharset(final RequestMonitor requestMonitor) {
String charset = CDebugCorePlugin.getDefault().getPluginPreferences().getString(ICDebugConstants.PREF_CHARSET); // Enable printing of sevenbit-strings. This is required to avoid charset issues.
String wideCharset = CDebugCorePlugin.getDefault().getPluginPreferences().getString(ICDebugConstants.PREF_WIDE_CHARSET); // See bug 307311 for details.
fCommandControl.setCharsets(charset, wideCharset, requestMonitor); fCommandControl.queueCommand(
fCommandFactory.createMIGDBSetPrintSevenbitStrings(fCommandControl.getContext(), true),
new ImmediateDataRequestMonitor<MIInfo>(requestMonitor) {
@Override
protected void handleCompleted() {
// Set the charset to ISO-8859-1. We have to do this here because GDB earlier than
// 7.0 has no proper Unicode support. Note that we can still handle UTF-8 though, as
// we can determine and decode UTF-8 encoded strings on our own. This makes ISO-8859-1
// the most suitable option here. See the MIStringHandler class and bug 307311 for
// details.
fCommandControl.queueCommand(
fCommandFactory.createMIGDBSetCharset(fCommandControl.getContext(), "ISO-8859-1"), //$NON-NLS-1$
new ImmediateDataRequestMonitor<MIInfo>(requestMonitor) {
@Override
protected void handleCompleted() {
// Not an essential command, so accept errors
requestMonitor.done();
}
});
}
});
} }
/** /**

View file

@ -1,5 +1,5 @@
/******************************************************************************* /*******************************************************************************
* Copyright (c) 2011 Ericsson and others. * Copyright (c) 2011, 2012 Ericsson and others.
* All rights reserved. This program and the accompanying materials * All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0 * are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at * which accompanies this distribution, and is available at
@ -7,17 +7,30 @@
* *
* Contributors: * Contributors:
* Marc Khouzam (Ericsson) - initial API and implementation (Bug 365471) * Marc Khouzam (Ericsson) - initial API and implementation (Bug 365471)
* Marc Khouzam (Ericsson) - Support for different charsets (bug 370462)
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.dsf.gdb.launching; package org.eclipse.cdt.dsf.gdb.launching;
import java.nio.charset.Charset;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
import org.eclipse.cdt.debug.core.CDebugCorePlugin;
import org.eclipse.cdt.debug.core.ICDebugConstants;
import org.eclipse.cdt.dsf.concurrent.ImmediateDataRequestMonitor;
import org.eclipse.cdt.dsf.concurrent.RequestMonitor; import org.eclipse.cdt.dsf.concurrent.RequestMonitor;
import org.eclipse.cdt.dsf.concurrent.RequestMonitorWithProgress; import org.eclipse.cdt.dsf.concurrent.RequestMonitorWithProgress;
import org.eclipse.cdt.dsf.gdb.internal.GdbPlugin;
import org.eclipse.cdt.dsf.gdb.service.command.IGDBControl;
import org.eclipse.cdt.dsf.mi.service.command.CommandFactory;
import org.eclipse.cdt.dsf.mi.service.command.output.MIInfo;
import org.eclipse.cdt.dsf.service.DsfServicesTracker;
import org.eclipse.cdt.dsf.service.DsfSession; import org.eclipse.cdt.dsf.service.DsfSession;
import org.eclipse.core.runtime.IStatus;
import org.eclipse.core.runtime.Platform;
import org.eclipse.core.runtime.Status;
/** /**
* Subclass for GDB >= 7.0. * Subclass for GDB >= 7.0.
@ -28,8 +41,14 @@ import org.eclipse.cdt.dsf.service.DsfSession;
*/ */
public class FinalLaunchSequence_7_0 extends FinalLaunchSequence { public class FinalLaunchSequence_7_0 extends FinalLaunchSequence {
private IGDBControl fCommandControl;
private CommandFactory fCommandFactory;
private DsfServicesTracker fTracker;
private DsfSession fSession;
public FinalLaunchSequence_7_0(DsfSession session, Map<String, Object> attributes, RequestMonitorWithProgress rm) { public FinalLaunchSequence_7_0(DsfSession session, Map<String, Object> attributes, RequestMonitorWithProgress rm) {
super(session, attributes, rm); super(session, attributes, rm);
fSession = session;
} }
@Override @Override
@ -57,6 +76,87 @@ public class FinalLaunchSequence_7_0 extends FinalLaunchSequence {
*/ */
@Execute @Execute
public void stepInitializeFinalLaunchSequence_7_0(RequestMonitor rm) { public void stepInitializeFinalLaunchSequence_7_0(RequestMonitor rm) {
fTracker = new DsfServicesTracker(GdbPlugin.getBundleContext(), fSession.getId());
fCommandControl = fTracker.getService(IGDBControl.class);
if (fCommandControl == null) {
rm.setStatus(new Status(IStatus.ERROR, GdbPlugin.PLUGIN_ID, -1, "Cannot obtain control service", null)); //$NON-NLS-1$
rm.done();
return;
}
fCommandFactory = fCommandControl.getCommandFactory();
rm.done(); rm.done();
} }
/**
* Rollback method for {@link #stepInitializeFinalLaunchSequence_7_0()}
* @since 4.0
*/
@RollBack("stepInitializeFinalLaunchSequence_7_0")
public void rollBackInitializeFinalLaunchSequence_7_0(RequestMonitor rm) {
if (fTracker != null) fTracker.dispose();
fTracker = null;
rm.done();
}
@Override
@Execute
public void stepSetCharset(final RequestMonitor rm) {
// Enable printing of sevenbit-strings. This is required to avoid charset issues.
// See bug 307311 for details.
fCommandControl.queueCommand(
fCommandFactory.createMIGDBSetPrintSevenbitStrings(fCommandControl.getContext(), true),
new ImmediateDataRequestMonitor<MIInfo>(rm) {
@Override
protected void handleCompleted() {
// Set the host charset to UTF-8. This ensures that we can correctly handle different
// charsets used by the inferior program.
fCommandControl.queueCommand(
fCommandFactory.createMIGDBSetHostCharset(fCommandControl.getContext(), "UTF-8"), //$NON-NLS-1$
new ImmediateDataRequestMonitor<MIInfo>(rm) {
@Override
protected void handleCompleted() {
// Set the target charset. The target charset is the charset used by the char type of
// the inferior program. Note that GDB only accepts upper case charset names.
String charset =
Platform.getPreferencesService().getString(CDebugCorePlugin.PLUGIN_ID,
ICDebugConstants.PREF_CHARSET,
Charset.defaultCharset().name(),
null);
fCommandControl.queueCommand(
fCommandFactory.createMIGDBSetTargetCharset(fCommandControl.getContext(), charset.toUpperCase()),
new ImmediateDataRequestMonitor<MIInfo>(rm) {
@Override
protected void handleCompleted() {
// Set the target wide charset. The target wide charset is the charset used by the wchar_t
// type of the inferior program. Note that GDB only accepts upper case charset names.
String defaultWideCharset = "UTF-32"; //$NON-NLS-1$
if (Platform.getOS().equals(Platform.OS_WIN32)) {
defaultWideCharset = "UTF-16"; //$NON-NLS-1$
}
String wideCharset =
Platform.getPreferencesService().getString(CDebugCorePlugin.PLUGIN_ID,
ICDebugConstants.PREF_WIDE_CHARSET,
defaultWideCharset,
null);
fCommandControl.queueCommand(
fCommandFactory.createMIGDBSetTargetWideCharset(fCommandControl.getContext(), wideCharset.toUpperCase()),
new ImmediateDataRequestMonitor<MIInfo>(rm) {
@Override
protected void handleCompleted() {
// Not an essential command, so accept errors
rm.done();
}
});
}
});
}
});
}
});
}
} }

View file

@ -13,7 +13,6 @@
* Jens Elmenthaler (Verigy) - Added Full GDB pretty-printing support (bug 302121) * Jens Elmenthaler (Verigy) - Added Full GDB pretty-printing support (bug 302121)
* Mikhail Khodjaiants (Mentor Graphics) - Refactor common code in GDBControl* classes (bug 372795) * Mikhail Khodjaiants (Mentor Graphics) - Refactor common code in GDBControl* classes (bug 372795)
* Marc Khouzam (Ericsson) - Pass errorStream to startCommandProcessing() (Bug 350837) * Marc Khouzam (Ericsson) - Pass errorStream to startCommandProcessing() (Bug 350837)
* Mathias Kunter - Support for different charsets (bug 370462)
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.dsf.gdb.service.command; package org.eclipse.cdt.dsf.gdb.service.command;
@ -463,30 +462,6 @@ public class GDBControl extends AbstractMIControl implements IGDBControl {
rm.done(); rm.done();
} }
/**
* Sets the charsets.
* @param charset This parameter is ignored. GDB 7.0 or later required.
* @param wideCharset This parameter is ignored. GDB 7.0 or later required.
* @param rm
*/
@Override
public void setCharsets(String charset, String wideCharset, RequestMonitor rm) {
// Enable printing of sevenbit-strings. This is required to avoid charset issues.
// See bug 307311 for details.
queueCommand(
getCommandFactory().createMIGDBSetPrintSevenbitStrings(fControlDmc, true),
new DataRequestMonitor<MIInfo>(getExecutor(), rm));
// Set the charset to ISO-8859-1. We have to do this here because GDB earlier than
// 7.0 has no proper Unicode support. Note that we can still handle UTF-8 though, as
// we can determine and decode UTF-8 encoded strings on our own. This makes ISO-8859-1
// the most suitable option here. See the MIStringHandler class and bug 307311 for
// details.
queueCommand(
getCommandFactory().createMIGDBSetCharset(fControlDmc, "ISO-8859-1"), //$NON-NLS-1$
new DataRequestMonitor<MIInfo>(getExecutor(), rm));
}
/** /**
* @since 4.0 * @since 4.0
*/ */

View file

@ -13,7 +13,6 @@
* Jens Elmenthaler (Verigy) - Added Full GDB pretty-printing support (bug 302121) * Jens Elmenthaler (Verigy) - Added Full GDB pretty-printing support (bug 302121)
* Marc Khouzam (Ericsson) - Call new FinalLaunchSequence_7_0 (Bug 365471) * Marc Khouzam (Ericsson) - Call new FinalLaunchSequence_7_0 (Bug 365471)
* Mikhail Khodjaiants (Mentor Graphics) - Refactor common code in GDBControl* classes (bug 372795) * Mikhail Khodjaiants (Mentor Graphics) - Refactor common code in GDBControl* classes (bug 372795)
* Mathias Kunter - Support for different charsets (bug 370462)
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.dsf.gdb.service.command; package org.eclipse.cdt.dsf.gdb.service.command;
@ -238,33 +237,6 @@ public class GDBControl_7_0 extends GDBControl {
new DataRequestMonitor<MIInfo>(getExecutor(), rm)); new DataRequestMonitor<MIInfo>(getExecutor(), rm));
} }
@Override
public void setCharsets(String charset, String wideCharset, RequestMonitor rm) {
// Enable printing of sevenbit-strings. This is required to avoid charset issues.
// See bug 307311 for details.
queueCommand(
getCommandFactory().createMIGDBSetPrintSevenbitStrings(getControlDMContext(), true),
new DataRequestMonitor<MIInfo>(getExecutor(), rm));
// Set the host charset to UTF-8. This ensures that we can correctly handle different
// charsets used by the inferior program.
queueCommand(
getCommandFactory().createMIGDBSetHostCharset(getControlDMContext(), "UTF-8"), //$NON-NLS-1$
new DataRequestMonitor<MIInfo>(getExecutor(), rm));
// Set the target charset. The target charset is the charset used by the char type of
// the inferior program. Note that GDB only accepts upper case charset names.
queueCommand(
getCommandFactory().createMIGDBSetTargetCharset(getControlDMContext(), charset.toUpperCase()),
new DataRequestMonitor<MIInfo>(getExecutor(), rm));
// Set the target wide charset. The target wide charset is the charset used by the wchar_t
// type of the inferior program. Note that GDB only accepts upper case charset names.
queueCommand(
getCommandFactory().createMIGDBSetTargetWideCharset(getControlDMContext(), wideCharset.toUpperCase()),
new DataRequestMonitor<MIInfo>(getExecutor(), rm));
}
/** /**
* @since 4.0 * @since 4.0
*/ */

View file

@ -1,5 +1,5 @@
/******************************************************************************* /*******************************************************************************
* Copyright (c) 2008, 2012 Ericsson and others. * Copyright (c) 2008, 2011 Ericsson and others.
* All rights reserved. This program and the accompanying materials * All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse License v1.0 * are made available under the terms of the Eclipse License v1.0
* which accompanies this distribution, and is available at * which accompanies this distribution, and is available at
@ -9,7 +9,6 @@
* Ericsson - initial API and implementation * Ericsson - initial API and implementation
* Vladimir Prus (CodeSourcery) - Support for -data-read-memory-bytes (bug 322658) * Vladimir Prus (CodeSourcery) - Support for -data-read-memory-bytes (bug 322658)
* Jens Elmenthaler (Verigy) - Added Full GDB pretty-printing support (bug 302121) * Jens Elmenthaler (Verigy) - Added Full GDB pretty-printing support (bug 302121)
* Mathias Kunter - Support for different charsets (bug 370462)
*******************************************************************************/ *******************************************************************************/
package org.eclipse.cdt.dsf.gdb.service.command; package org.eclipse.cdt.dsf.gdb.service.command;
@ -93,12 +92,4 @@ public interface IGDBControl extends IMICommandControl {
* @since 4.0 * @since 4.0
*/ */
void setPrintPythonErrors(boolean enabled, RequestMonitor rm); void setPrintPythonErrors(boolean enabled, RequestMonitor rm);
/**
* Sets the charsets.
* @param charset The charset used by the char type of the inferior program.
* @param wideCharset The charset used by the wchar_t type of the inferior program.
* @param rm
*/
void setCharsets(String charset, String wideCharset, RequestMonitor rm);
} }

View file

@ -618,6 +618,11 @@ public class CommandFactory {
return new MIGDBSetBreakpointPending(ctx, enable); return new MIGDBSetBreakpointPending(ctx, enable);
} }
/** @since 4.1 */
public ICommand<MIInfo> createMIGDBSetCharset(ICommandControlDMContext ctx, String charset) {
return new MIGDBSetCharset(ctx, charset);
}
/** @since 4.0 */ /** @since 4.0 */
public ICommand<MIInfo> createMIGDBSetDetachOnFork(ICommandControlDMContext ctx, boolean detach) { public ICommand<MIInfo> createMIGDBSetDetachOnFork(ICommandControlDMContext ctx, boolean detach) {
return new MIGDBSetDetachOnFork(ctx, detach); return new MIGDBSetDetachOnFork(ctx, detach);
@ -631,6 +636,11 @@ public class CommandFactory {
return new MIGDBSetEnv(dmc, name, value); return new MIGDBSetEnv(dmc, name, value);
} }
/** @since 4.1 */
public ICommand<MIInfo> createMIGDBSetHostCharset(ICommandControlDMContext ctx, String hostCharset) {
return new MIGDBSetHostCharset(ctx, hostCharset);
}
public ICommand<MIInfo> createMIGDBSetNonStop(ICommandControlDMContext ctx, boolean isSet) { public ICommand<MIInfo> createMIGDBSetNonStop(ICommandControlDMContext ctx, boolean isSet) {
return new MIGDBSetNonStop(ctx, isSet); return new MIGDBSetNonStop(ctx, isSet);
} }
@ -639,6 +649,11 @@ public class CommandFactory {
return new MIGDBSetPagination(ctx, isSet); return new MIGDBSetPagination(ctx, isSet);
} }
/** @since 4.1 */
public ICommand<MIInfo> createMIGDBSetPrintSevenbitStrings(ICommandControlDMContext ctx, boolean enable) {
return new MIGDBSetPrintSevenbitStrings(ctx, enable);
}
/** @since 4.1 */ /** @since 4.1 */
public ICommand<MIInfo> createMIGDBSetPythonPrintStack(ICommandControlDMContext ctx, String option) { public ICommand<MIInfo> createMIGDBSetPythonPrintStack(ICommandControlDMContext ctx, String option) {
return new MIGDBSetPythonPrintStack(ctx, option); return new MIGDBSetPythonPrintStack(ctx, option);
@ -647,25 +662,14 @@ public class CommandFactory {
/** @since 4.1 */ /** @since 4.1 */
public ICommand<MIInfo> createMIGDBSetSchedulerLocking(ICommandControlDMContext ctx, String mode) { public ICommand<MIInfo> createMIGDBSetSchedulerLocking(ICommandControlDMContext ctx, String mode) {
return new MIGDBSetSchedulerLocking(ctx, mode); return new MIGDBSetSchedulerLocking(ctx, mode);
} }
/** @since 4.0 */ /** @since 4.1 */
public ICommand<MIInfo> createMIGDBSetPrintSevenbitStrings(ICommandControlDMContext ctx, boolean enable) {
return new MIGDBSetPrintSevenbitStrings(ctx, enable);
}
public ICommand<MIInfo> createMIGDBSetCharset(ICommandControlDMContext ctx, String charset) {
return new MIGDBSetCharset(ctx, charset);
}
public ICommand<MIInfo> createMIGDBSetHostCharset(ICommandControlDMContext ctx, String hostCharset) {
return new MIGDBSetHostCharset(ctx, hostCharset);
}
public ICommand<MIInfo> createMIGDBSetTargetCharset(ICommandControlDMContext ctx, String targetCharset) { public ICommand<MIInfo> createMIGDBSetTargetCharset(ICommandControlDMContext ctx, String targetCharset) {
return new MIGDBSetTargetCharset(ctx, targetCharset); return new MIGDBSetTargetCharset(ctx, targetCharset);
} }
/** @since 4.1 */
public ICommand<MIInfo> createMIGDBSetTargetWideCharset(ICommandControlDMContext ctx, String targetWideCharset) { public ICommand<MIInfo> createMIGDBSetTargetWideCharset(ICommandControlDMContext ctx, String targetWideCharset) {
return new MIGDBSetTargetWideCharset(ctx, targetWideCharset); return new MIGDBSetTargetWideCharset(ctx, targetWideCharset);
} }

View file

@ -21,7 +21,7 @@ import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommand
* charset used by gdb. The target charset is the charset used by the char type of the * charset used by gdb. The target charset is the charset used by the char type of the
* inferior program. * inferior program.
* *
* @since 4.0 * @since 4.1
*/ */
public class MIGDBSetCharset extends MIGDBSet { public class MIGDBSetCharset extends MIGDBSet {
public MIGDBSetCharset(ICommandControlDMContext ctx, String charset) { public MIGDBSetCharset(ICommandControlDMContext ctx, String charset) {

View file

@ -19,7 +19,7 @@ import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommand
* *
* Sets the current host charset to CHARSET. The host charset is the charset used by gdb. * Sets the current host charset to CHARSET. The host charset is the charset used by gdb.
* *
* @since 4.0 * @since 4.1
*/ */
public class MIGDBSetHostCharset extends MIGDBSet { public class MIGDBSetHostCharset extends MIGDBSet {
public MIGDBSetHostCharset(ICommandControlDMContext ctx, String hostCharset) { public MIGDBSetHostCharset(ICommandControlDMContext ctx, String hostCharset) {

View file

@ -20,7 +20,7 @@ import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommand
* When on, gdb displays any eight-bit characters (in strings or character values) using * When on, gdb displays any eight-bit characters (in strings or character values) using
* the octal escape notation \nnn. When off, prints full eight-bit characters. * the octal escape notation \nnn. When off, prints full eight-bit characters.
* *
* @since 4.0 * @since 4.1
*/ */
public class MIGDBSetPrintSevenbitStrings extends MIGDBSet { public class MIGDBSetPrintSevenbitStrings extends MIGDBSet {
public MIGDBSetPrintSevenbitStrings(ICommandControlDMContext ctx, boolean enable) { public MIGDBSetPrintSevenbitStrings(ICommandControlDMContext ctx, boolean enable) {

View file

@ -20,7 +20,7 @@ import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommand
* Sets the current target charset to CHARSET. The target charset is the charset used * Sets the current target charset to CHARSET. The target charset is the charset used
* by the char type of the inferior program. * by the char type of the inferior program.
* *
* @since 4.0 * @since 4.1
*/ */
public class MIGDBSetTargetCharset extends MIGDBSet { public class MIGDBSetTargetCharset extends MIGDBSet {
public MIGDBSetTargetCharset(ICommandControlDMContext ctx, String targetCharset) { public MIGDBSetTargetCharset(ICommandControlDMContext ctx, String targetCharset) {

View file

@ -22,7 +22,7 @@ import org.eclipse.cdt.dsf.debug.service.command.ICommandControlService.ICommand
* *
* Available with gdb 7.0 * Available with gdb 7.0
* *
* @since 4.0 * @since 4.1
*/ */
public class MIGDBSetTargetWideCharset extends MIGDBSet { public class MIGDBSetTargetWideCharset extends MIGDBSet {
public MIGDBSetTargetWideCharset(ICommandControlDMContext ctx, String targetWideCharset) { public MIGDBSetTargetWideCharset(ICommandControlDMContext ctx, String targetWideCharset) {