Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-patch] Cygwin debugger does not know about solib

Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/ChangeLog,v
retrieving revision 1.48
diff -u -r1.48 ChangeLog
--- ChangeLog	2 Jan 2003 21:45:48 -0000	1.48
+++ ChangeLog	3 Jan 2003 20:25:35 -0000
@@ -1,3 +1,19 @@
+2003-01-03 Alain Magloire
+
+	The Class creating the CDISession part of the initialization would call
+		(gdb) set autosolib on
+	this works fine for Unix system, but on Windows it throws an error
+	failing the debugger.  Windows(Cygwin, MingWin) does not need any
+	special initialization like solib-search-paths etc ..
+
+	* src/.../mi/core/cdi/SourceManager.java (setAutoSolib): Takes a boolean argument
+	to set the autosolib on or off.
+	* src/.../mi/core/CygwinGDBDebugger.java(initializeLibraries):
+	Empty method, cygwin does not need any special handling.
+	* src/.../mi/core/GDBDebugger.java (initializeLibraries):
+	Always call autosolib.
+
+
 2003-01-02 Alain Magloire
 
 	Bug when using recursive:
Index: src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java,v
retrieving revision 1.2
diff -u -r1.2 CygwinGDBDebugger.java
--- src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java	4 Dec 2002 14:39:26 -0000	1.2
+++ src/org/eclipse/cdt/debug/mi/core/CygwinGDBDebugger.java	3 Jan 2003 20:25:35 -0000
@@ -22,6 +22,10 @@
 	static final CygwinCommandFactory commandFactory =
 		new CygwinCommandFactory();
 
+	/* Cygwin does not have any special initialization like solib paths etc.. */
+	protected void initializeLibraries(ILaunchConfiguration config, CSession session) throws CDIException {
+	}
+
 	public ICDISession createLaunchSession(
 		ILaunchConfiguration config,
 		IFile exe)
Index: src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java,v
retrieving revision 1.8
diff -u -r1.8 GDBDebugger.java
--- src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java	9 Oct 2002 13:11:52 -0000	1.8
+++ src/org/eclipse/cdt/debug/mi/core/GDBDebugger.java	3 Jan 2003 20:25:35 -0000
@@ -20,13 +20,11 @@
 
 public class GDBDebugger implements ICDebugger {
 
-	void initializeLibraries(ILaunchConfiguration config, CSession session) throws CDIException {
+	protected void initializeLibraries(ILaunchConfiguration config, CSession session) throws CDIException {
 		try {
 			SourceManager mgr = (SourceManager)session.getSourceManager();
-			boolean autolib = config.getAttribute(IMILaunchConfigurationConstants.ATTR_AUTO_SOLIB, false);
-			if (autolib) {
-				mgr.setAutoSolib();
-			}
+			boolean autolib = config.getAttribute(IMILaunchConfigurationConstants.ATTR_AUTO_SOLIB, true);
+			mgr.setAutoSolib(autolib);
 			List p = config.getAttribute(IMILaunchConfigurationConstants.ATTR_SOLIB_PATH, new ArrayList(1));
 			if (p.size() > 0) {
 				String[] paths = (String[])p.toArray(new String[0]);
Index: src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.mi.core/src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java,v
retrieving revision 1.17
diff -u -r1.17 SourceManager.java
--- src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java	5 Dec 2002 16:01:53 -0000	1.17
+++ src/org/eclipse/cdt/debug/mi/core/cdi/SourceManager.java	3 Jan 2003 20:25:36 -0000
@@ -89,10 +89,10 @@
 		}
 	}
 
-	public void setAutoSolib() throws CDIException {
+	public void setAutoSolib(boolean set) throws CDIException {
 		MISession mi = getCSession().getMISession();
 		CommandFactory factory = mi.getCommandFactory();
-		MIGDBSetAutoSolib solib = factory.createMIGDBSetAutoSolib(true);
+		MIGDBSetAutoSolib solib = factory.createMIGDBSetAutoSolib(set);
 		try {
 			mi.postCommand(solib);
 			solib.getMIInfo();



Back to the top