diff options
author | Mike Krüger <mkrueger@xamarin.com> | 2012-03-03 11:43:22 +0400 |
---|---|---|
committer | Mike Krüger <mkrueger@xamarin.com> | 2012-03-03 11:43:22 +0400 |
commit | 79661d5405e04766cfb3ad531b7fe5af2f43e7f5 (patch) | |
tree | afa4eafd41e04d5fe7f3e36ad6c0b9b41bb481a6 /main/src/addins | |
parent | 06062775726d85c32d4947e0d27b299f1c56c3fb (diff) | |
parent | 2b0835b6f38a0eaea16a5d1d575e89897d3b8ef6 (diff) |
Merge branch 'master' into newresolver
Conflicts:
main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectInfoService.cs
main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectProjectInfo.cs
main/src/core/MonoDevelop.Ide/MonoDevelop.Ide.csproj
main/src/core/MonoDevelop.Ide/MonoDevelop.Ide/ProjectOperations.cs
version-checks
Diffstat (limited to 'main/src/addins')
48 files changed, 222 insertions, 105 deletions
diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am index 770d5c088c..c87b541d39 100644 --- a/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am +++ b/main/src/addins/AspNet/MonoDevelop.AspNet.Mvc/Makefile.am @@ -9,12 +9,12 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/AspNet/MonoDevelop.AspNet/Makefile.am b/main/src/addins/AspNet/MonoDevelop.AspNet/Makefile.am index 83b061d0c0..95126524c1 100644 --- a/main/src/addins/AspNet/MonoDevelop.AspNet/Makefile.am +++ b/main/src/addins/AspNet/MonoDevelop.AspNet/Makefile.am @@ -11,13 +11,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.CSharp.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Configuration \ diff --git a/main/src/addins/CBinding/Makefile.am b/main/src/addins/CBinding/Makefile.am index 5d3431f739..5eea5059c2 100644 --- a/main/src/addins/CBinding/Makefile.am +++ b/main/src/addins/CBinding/Makefile.am @@ -10,13 +10,13 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Refactoring/MonoDevelop.Refactoring.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/CSharpBinding/AspNet/Makefile.am b/main/src/addins/CSharpBinding/AspNet/Makefile.am index b75c2e5b28..3cb7b8a08e 100644 --- a/main/src/addins/CSharpBinding/AspNet/Makefile.am +++ b/main/src/addins/CSharpBinding/AspNet/Makefile.am @@ -9,12 +9,12 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll \ $(top_builddir)/build/bin/OldNRefactory.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:System \ -r:System.Core diff --git a/main/src/addins/CSharpBinding/Autotools/Makefile.am b/main/src/addins/CSharpBinding/Autotools/Makefile.am index 71e5f43ada..cfe741693f 100644 --- a/main/src/addins/CSharpBinding/Autotools/Makefile.am +++ b/main/src/addins/CSharpBinding/Autotools/Makefile.am @@ -7,10 +7,11 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll \ $(top_builddir)/build/AddIns/MonoDevelop.Refactoring/MonoDevelop.Refactoring.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll -REFS = -r:System +REFS = \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ + -r:System FILES = CSharpAutotoolsSetup.cs diff --git a/main/src/addins/CSharpBinding/Makefile.am b/main/src/addins/CSharpBinding/Makefile.am index a27e56edf7..d6f3ff3b80 100644 --- a/main/src/addins/CSharpBinding/Makefile.am +++ b/main/src/addins/CSharpBinding/Makefile.am @@ -15,7 +15,6 @@ DEPS = \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll \ $(top_builddir)/build/bin/OldNRefactory.dll @@ -23,6 +22,7 @@ REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/ChangeLogAddIn/Makefile.am b/main/src/addins/ChangeLogAddIn/Makefile.am index a45df96055..cae06f3a0c 100644 --- a/main/src/addins/ChangeLogAddIn/Makefile.am +++ b/main/src/addins/ChangeLogAddIn/Makefile.am @@ -5,13 +5,13 @@ DEPS = \ $(top_builddir)/build/AddIns/VersionControl/MonoDevelop.VersionControl.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix FILES = \ diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/Makefile.am b/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/Makefile.am index 87217c65b8..ee6f2f3464 100644 --- a/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/Makefile.am +++ b/main/src/addins/Deployment/MonoDevelop.Deployment.Linux/Makefile.am @@ -4,13 +4,13 @@ ASSEMBLY = $(ADDIN_BUILD)/MonoDevelop.Deployment.Linux.dll DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Deployment/MonoDevelop.Deployment.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Xml diff --git a/main/src/addins/Deployment/MonoDevelop.Deployment/Makefile.am b/main/src/addins/Deployment/MonoDevelop.Deployment/Makefile.am index 4cc94f5b92..b0534622ae 100644 --- a/main/src/addins/Deployment/MonoDevelop.Deployment/Makefile.am +++ b/main/src/addins/Deployment/MonoDevelop.Deployment/Makefile.am @@ -4,13 +4,13 @@ ASSEMBLY = $(ADDIN_BUILD)/MonoDevelop.Deployment.dll DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:ICSharpCode.SharpZipLib \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/GnomePlatform/Makefile.am b/main/src/addins/GnomePlatform/Makefile.am index 07c24c2ce0..38b4521c94 100644 --- a/main/src/addins/GnomePlatform/Makefile.am +++ b/main/src/addins/GnomePlatform/Makefile.am @@ -2,9 +2,7 @@ ADDIN_BUILD = $(top_builddir)/build/AddIns ASSEMBLY = $(ADDIN_BUILD)/GnomePlatform.dll -DEPS = \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll +DEPS = $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GCONF_SHARP_LIBS) \ @@ -12,6 +10,7 @@ REFS = \ $(GNOME_SHARP_LIBS) \ $(GNOME_VFS_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:System FILES = \ diff --git a/main/src/addins/ILAsmBinding/Makefile.am b/main/src/addins/ILAsmBinding/Makefile.am index 54c9b5aa23..f64373008e 100644 --- a/main/src/addins/ILAsmBinding/Makefile.am +++ b/main/src/addins/ILAsmBinding/Makefile.am @@ -2,14 +2,13 @@ ADDIN_BUILD = $(top_builddir)/build/AddIns/BackendBindings ASSEMBLY = $(ADDIN_BUILD)/ILAsmBinding.dll -DEPS = \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll +DEPS = $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Xml diff --git a/main/src/addins/MacPlatform/Makefile.am b/main/src/addins/MacPlatform/Makefile.am index 658671de7f..b622d59e61 100644 --- a/main/src/addins/MacPlatform/Makefile.am +++ b/main/src/addins/MacPlatform/Makefile.am @@ -5,14 +5,13 @@ ASSEMBLY = $(ADDIN_BUILD)/MacPlatform.dll MONOMAC_SRC = $(top_srcdir)/../extras/MonoDevelop.MonoMac/MonoDevelop.MonoMac/MonoMac.dll MONOMAC = $(ADDIN_BUILD)/MonoMac.dll -DEPS = \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll +DEPS = $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ -r:../../../../extras/MonoDevelop.MonoMac/MonoDevelop.MonoMac/MonoMac.dll \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/MonoDevelop.AssemblyBrowser/Makefile.am b/main/src/addins/MonoDevelop.AssemblyBrowser/Makefile.am index a1c297e76c..f2428f4051 100644 --- a/main/src/addins/MonoDevelop.AssemblyBrowser/Makefile.am +++ b/main/src/addins/MonoDevelop.AssemblyBrowser/Makefile.am @@ -47,13 +47,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.Cecil.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.Autotools/Makefile.am b/main/src/addins/MonoDevelop.Autotools/Makefile.am index 4be733a990..4ca04067c9 100644 --- a/main/src/addins/MonoDevelop.Autotools/Makefile.am +++ b/main/src/addins/MonoDevelop.Autotools/Makefile.am @@ -5,13 +5,13 @@ ASSEMBLY = $(ADDIN_BUILD)/MonoDevelop.Autotools.dll DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Deployment/MonoDevelop.Deployment.dll \ $(top_builddir)/build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System diff --git a/main/src/addins/MonoDevelop.CodeMetrics/Makefile.am b/main/src/addins/MonoDevelop.CodeMetrics/Makefile.am index c85b70afff..9de5215e69 100644 --- a/main/src/addins/MonoDevelop.CodeMetrics/Makefile.am +++ b/main/src/addins/MonoDevelop.CodeMetrics/Makefile.am @@ -7,13 +7,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.CSharp.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Makefile.am b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Makefile.am index 92e60bca8d..5fd5d3f6b5 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Makefile.am +++ b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Makefile.am @@ -6,6 +6,7 @@ SIGNING_KEY=$(top_srcdir)/src/core/Mono.Debugging/mono.debugging.snk DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Debugger.Soft/Mono.Debugger.Soft.dll \ $(top_builddir)/build/bin/Mono.Cecil.dll \ + $(top_builddir)/build/bin/Mono.Cecil.Mdb.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll REFS = \ diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Mono.Debugging.Soft.csproj b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Mono.Debugging.Soft.csproj index be94d1043b..5e38d5a6fd 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Mono.Debugging.Soft.csproj +++ b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/Mono.Debugging.Soft.csproj @@ -44,6 +44,10 @@ <Name>Mono.Cecil</Name> <Private>False</Private> </ProjectReference> + <ProjectReference Include="..\..\..\..\contrib\Mono.Cecil\Mono.Cecil.Mdb.csproj"> + <Project>{201F7AC0-D2D5-4F51-85A8-17475DADBED3}</Project> + <Name>Mono.Cecil.Mdb</Name> + </ProjectReference> </ItemGroup> <ItemGroup> <Compile Include="ArrayAdaptor.cs" /> diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerSession.cs b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerSession.cs index 9e63636d35..239fc2e52e 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerSession.cs +++ b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerSession.cs @@ -30,6 +30,8 @@ using System; using System.Linq; using System.Threading; using System.Collections.Generic; +using Mono.Cecil.Mdb; +using Mono.CompilerServices.SymbolWriter; using Mono.Debugging.Client; using Mono.Debugger.Soft; using Mono.Debugging.Evaluation; @@ -60,6 +62,7 @@ namespace Mono.Debugging.Soft bool autoStepInto; internal int StackVersion; StepEventRequest currentStepRequest; + long currentAddress = -1; ExceptionEventRequest unhandledExceptionRequest; string remoteProcessName; Dictionary<long,long> localThreadIds = new Dictionary<long, long> (); @@ -78,6 +81,7 @@ namespace Mono.Debugging.Soft List<string> userAssemblyNames; List<AssemblyMirror> assemblyFilters; + Dictionary<string, string> assemblyPathMap; bool loggedSymlinkedRuntimesBug = false; @@ -120,7 +124,7 @@ namespace Mono.Debugging.Soft { this.startArgs = dsi.StartArgs; - RegisterUserAssemblies (dsi.UserAssemblyNames); + RegisterUserAssemblies (dsi); if (!String.IsNullOrEmpty (dsi.LogMessage)) LogWriter (false, dsi.LogMessage + "\n"); @@ -165,7 +169,7 @@ namespace Mono.Debugging.Soft { var args = (SoftDebuggerLaunchArgs) dsi.StartArgs; var runtime = Path.Combine (Path.Combine (args.MonoRuntimePrefix, "bin"), "mono"); - RegisterUserAssemblies (dsi.UserAssemblyNames); + RegisterUserAssemblies (dsi); var psi = new System.Diagnostics.ProcessStartInfo (runtime) { Arguments = string.Format ("\"{0}\" {1}", dsi.Command, dsi.Arguments), @@ -295,7 +299,7 @@ namespace Mono.Debugging.Soft remoteProcessName = args.AppName; - RegisterUserAssemblies (dsi.UserAssemblyNames); + RegisterUserAssemblies (dsi); dbgEP = new IPEndPoint (args.Address, args.DebugPort); conEP = args.RedirectOutput? new IPEndPoint (args.Address, args.OutputPort) : null; @@ -446,12 +450,16 @@ namespace Mono.Debugging.Soft eventHandler.Start (); } - protected void RegisterUserAssemblies (List<AssemblyName> userAssemblyNames) + void RegisterUserAssemblies (SoftDebuggerStartInfo dsi) { - if (Options.ProjectAssembliesOnly && userAssemblyNames != null) { + if (Options.ProjectAssembliesOnly && dsi.UserAssemblyNames != null) { assemblyFilters = new List<AssemblyMirror> (); - this.userAssemblyNames = userAssemblyNames.Select (x => x.ToString ()).ToList (); + userAssemblyNames = dsi.UserAssemblyNames.Select (x => x.ToString ()).ToList (); } + + assemblyPathMap = dsi.AssemblyPathMap; + if (assemblyPathMap == null) + assemblyPathMap = new Dictionary<string, string> (); } protected bool SetSocketTimeouts (int send_timeout, int receive_timeout, int keepalive_interval) @@ -1152,6 +1160,7 @@ namespace Mono.Debugging.Soft bool resume = true; bool steppedOut = false; bool steppedInto = false; + bool redoCurrentStep = false; ObjectMirror exception = null; TargetEventType etype = TargetEventType.TargetStopped; BreakEvent breakEvent = null; @@ -1172,16 +1181,22 @@ namespace Mono.Debugging.Soft else { //always need to evaluate all breakpoints, some might be tracepoints or conditional bps with counters foreach (Event e in es) { - var be = e as BreakpointEvent; - if (be != null) { + if (e.EventType == EventType.Breakpoint) { + var be = e as BreakpointEvent; + BreakInfo binfo; + if (!HandleBreakpoint (e.Thread, be.Request)) { etype = TargetEventType.TargetHitBreakpoint; - BreakInfo binfo; - if (breakpoints.TryGetValue (be.Request, out binfo)) - breakEvent = binfo.BreakEvent; autoStepInto = false; resume = false; } + + if (breakpoints.TryGetValue (be.Request, out binfo)) { + if (binfo.Location.ILOffset == currentAddress && e.Thread.Id == currentStepRequest.Thread.Id) + redoCurrentStep = true; + + breakEvent = binfo.BreakEvent; + } } else if (e.EventType == EventType.Step) { var stepRequest = e.Request as StepEventRequest; steppedInto = IsStepIntoRequest (stepRequest); @@ -1198,7 +1213,16 @@ namespace Mono.Debugging.Soft } } - if (resume) { + if (redoCurrentStep) { + StepDepth depth = currentStepRequest.Depth; + StepSize size = currentStepRequest.Size; + + current_thread = recent_thread = es[0].Thread; + currentStepRequest.Enabled = false; + currentStepRequest = null; + + Step (depth, size); + } else if (resume) { //all breakpoints were conditional and evaluated as false vm.Resume (); DequeueEventsForFirstThread (); @@ -1216,10 +1240,12 @@ namespace Mono.Debugging.Soft var backtrace = GetThreadBacktrace (current_thread); bool stepOut = false; - if (steppedInto && Options.StepOverPropertiesAndOperators && backtrace.FrameCount > 0) { + if (backtrace.FrameCount > 0) { var frame = backtrace.GetFrame (0) as SoftDebuggerStackFrame; + currentAddress = frame != null ? frame.Address : -1; - stepOut = frame != null && IsPropertyOrOperatorMethod (frame.StackFrame.Method); + if (steppedInto && Options.StepOverPropertiesAndOperators) + stepOut = frame != null && IsPropertyOrOperatorMethod (frame.StackFrame.Method); } if (stepOut) { @@ -1714,9 +1740,65 @@ namespace Mono.Debugging.Soft return method.Locations.Count > 0 ? method.Locations[0] : null; } + + Dictionary<string, MonoSymbolFile> symbolFiles = new Dictionary<string, MonoSymbolFile> (); + + bool CheckBetterMatch (TypeMirror type, string file, int line, Location found) + { + if (type.Assembly == null) + return false; + + string assemblyFileName; + if (!assemblyPathMap.TryGetValue (type.Assembly.GetName ().FullName, out assemblyFileName)) + assemblyFileName = type.Assembly.Location; + + if (assemblyFileName == null) + return false; + + string mdbFileName = assemblyFileName + ".mdb"; + int foundDelta = found.LineNumber - line; + MonoSymbolFile mdb; + int fileId = -1; + + try { + if (!symbolFiles.TryGetValue (mdbFileName, out mdb)) { + if (!File.Exists (mdbFileName)) + return false; + + mdb = MonoSymbolFile.ReadSymbolFile (mdbFileName); + symbolFiles.Add (mdbFileName, mdb); + } + + foreach (var src in mdb.Sources) { + if (src.FileName == file) { + fileId = src.Index; + break; + } + } + + if (fileId == -1) + return false; + + foreach (var method in mdb.Methods) { + var table = method.GetLineNumberTable (); + foreach (var entry in table.LineNumbers) { + if (entry.File != fileId) + continue; + + if (entry.Row >= line && (entry.Row - line) < foundDelta) + return true; + } + } + } catch { + } + + return false; + } + Location GetLocFromType (TypeMirror type, string file, int line, out bool genericMethod, out bool insideTypeRange) { Location target_loc = null; + bool fuzzy = true; insideTypeRange = false; genericMethod = false; @@ -1759,9 +1841,11 @@ namespace Mono.Debugging.Soft // Line number matches exactly //Console.WriteLine ("\t\tLocation matches exactly."); target_loc = location; + fuzzy = false; } } else { //Console.WriteLine ("\t\tLocation is first possible match"); + fuzzy = location.LineNumber != line; target_loc = location; } } @@ -1773,10 +1857,18 @@ namespace Mono.Debugging.Soft if (target_loc != null) { genericMethod = IsGenericMethod (method); - break; + + // If we got a fuzzy match, then we need to make sure that there isn't a better + // match in another method (e.g. code might have been extracted out into another + // method by the compiler. + if (!fuzzy) + return target_loc; } } + if (target_loc != null && fuzzy && CheckBetterMatch (type, file, line, target_loc)) + return null; + return target_loc; } diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerStartInfo.cs b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerStartInfo.cs index 06db05aedc..04ad7605f9 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerStartInfo.cs +++ b/main/src/addins/MonoDevelop.Debugger.Soft/Mono.Debugging.Soft/SoftDebuggerStartInfo.cs @@ -53,6 +53,11 @@ namespace Mono.Debugging.Soft public List<AssemblyName> UserAssemblyNames { get; set; } /// <summary> + /// A mapping of AssemblyNames to their paths. + /// </summary> + public Dictionary<string, string> AssemblyPathMap { get; set; } + + /// <summary> /// The session will output this to the debug log as soon as it starts. It can be used to log warnings from /// creating the SoftDebuggerStartInfo /// </summary> diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/Makefile.am b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/Makefile.am index d61dda9a83..73b572c198 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/Makefile.am +++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.AspNet/Makefile.am @@ -9,12 +9,12 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Debugger/MonoDevelop.Debugger.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:System \ -r:System.Core diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.Moonlight/Makefile.am b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.Moonlight/Makefile.am index 5b35e95c84..0ea6b7ee64 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.Moonlight/Makefile.am +++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft.Moonlight/Makefile.am @@ -9,12 +9,12 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Moonlight/MonoDevelop.Moonlight.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:System \ -r:System.Core diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/Makefile.am b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/Makefile.am index a0f3082da3..ff48801a6e 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/Makefile.am +++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/Makefile.am @@ -8,12 +8,12 @@ DEPS = \ $(top_builddir)/build/bin/Mono.Cecil.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:System \ -r:System.Core diff --git a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/SoftDebuggerEngine.cs b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/SoftDebuggerEngine.cs index 8d063f71e3..7f1bb4068d 100644 --- a/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/SoftDebuggerEngine.cs +++ b/main/src/addins/MonoDevelop.Debugger.Soft/MonoDevelop.Debugger.Soft/SoftDebuggerEngine.cs @@ -104,18 +104,24 @@ namespace MonoDevelop.Debugger.Soft if (files == null || files.Count == 0) return; + var pathMap = new Dictionary<string, string> (); var names = new List<AssemblyName> (); + foreach (var file in files) { if (!File.Exists (file)) { dsi.LogMessage = GettextCatalog.GetString ("User assembly '{0}' is missing. " + "Debugger will now debug all code, not just user code.", file); return; } + try { var asm = Mono.Cecil.AssemblyDefinition.ReadAssembly (file); if (string.IsNullOrEmpty (asm.Name.Name)) throw new InvalidOperationException ("Assembly has no assembly name"); - names.Add (new AssemblyName (asm.Name.FullName)); + + AssemblyName name = new AssemblyName (asm.Name.FullName); + pathMap.Add (asm.Name.FullName, file); + names.Add (name); } catch (Exception ex) { dsi.LogMessage = GettextCatalog.GetString ("Could not get assembly name for user assembly '{0}'. " + "Debugger will now debug all code, not just user code.", file); @@ -123,7 +129,9 @@ namespace MonoDevelop.Debugger.Soft return; } } + dsi.UserAssemblyNames = names; + dsi.AssemblyPathMap = pathMap; } class MDLogger : ICustomLogger diff --git a/main/src/addins/MonoDevelop.Debugger/Makefile.am b/main/src/addins/MonoDevelop.Debugger/Makefile.am index 780110cc89..59a06909df 100644 --- a/main/src/addins/MonoDevelop.Debugger/Makefile.am +++ b/main/src/addins/MonoDevelop.Debugger/Makefile.am @@ -8,13 +8,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.DesignerSupport/Makefile.am b/main/src/addins/MonoDevelop.DesignerSupport/Makefile.am index c13de6c5d8..920673fc9e 100644 --- a/main/src/addins/MonoDevelop.DesignerSupport/Makefile.am +++ b/main/src/addins/MonoDevelop.DesignerSupport/Makefile.am @@ -5,13 +5,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.Cecil.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.Gettext/Makefile.am b/main/src/addins/MonoDevelop.Gettext/Makefile.am index 8771f086cb..d262506a46 100644 --- a/main/src/addins/MonoDevelop.Gettext/Makefile.am +++ b/main/src/addins/MonoDevelop.Gettext/Makefile.am @@ -8,13 +8,13 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/MonoDevelop.GtkCore/Makefile.am b/main/src/addins/MonoDevelop.GtkCore/Makefile.am index ea49ad60bf..9dcd90e743 100644 --- a/main/src/addins/MonoDevelop.GtkCore/Makefile.am +++ b/main/src/addins/MonoDevelop.GtkCore/Makefile.am @@ -12,14 +12,14 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.Cecil.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLADE_SHARP_LIBS) \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/MonoDevelop.HexEditor/Makefile.am b/main/src/addins/MonoDevelop.HexEditor/Makefile.am index 5b42ee17c5..f191c4315b 100644 --- a/main/src/addins/MonoDevelop.HexEditor/Makefile.am +++ b/main/src/addins/MonoDevelop.HexEditor/Makefile.am @@ -50,14 +50,14 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Refactoring/MonoDevelop.Refactoring.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLADE_SHARP_LIBS) \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.MacDev/Makefile.am b/main/src/addins/MonoDevelop.MacDev/Makefile.am index ccd87fff7c..454438bf32 100644 --- a/main/src/addins/MonoDevelop.MacDev/Makefile.am +++ b/main/src/addins/MonoDevelop.MacDev/Makefile.am @@ -8,14 +8,14 @@ DEPS = \ ../../../build/AddIns/VersionControl/MonoDevelop.VersionControl.dll \ ../../../build/bin/ICSharpCode.NRefactory.dll \ ../../../build/bin/Mono.TextEditor.dll \ - ../../../build/bin/MonoDevelop.Core.dll \ - ../../../build/bin/MonoDevelop.Ide.dll + ../../../build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ -r:../../../../extras/MonoDevelop.MonoMac/MonoDevelop.MonoMac/MonoMac.dll \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectInfoService.cs b/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectInfoService.cs index 4447acab86..831d85603f 100755 --- a/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectInfoService.cs +++ b/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectInfoService.cs @@ -81,7 +81,6 @@ namespace MonoDevelop.MacDev.ObjCIntegration var dom = TypeSystemService.GetProjectContentWrapper (project); if (dom == null) return null; - TypeSystemService.ForceUpdate (dom); project.ReferenceAddedToProject += HandleDomReferencesUpdated; project.ReferenceRemovedFromProject += HandleDomReferencesUpdated; return GetProjectInfo (dom, lookinAssembly); diff --git a/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectProjectInfo.cs b/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectProjectInfo.cs index 6e6c3983cd..25a60d3daf 100755 --- a/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectProjectInfo.cs +++ b/main/src/addins/MonoDevelop.MacDev/ObjCIntegration/NSObjectProjectInfo.cs @@ -77,7 +77,12 @@ namespace MonoDevelop.MacDev.ObjCIntegration { if (!needsUpdating) return; - + foreach (var r in dom.GetReferencedProjects ()) { + var info = infoService.GetProjectInfo (r); + if (info != null) + info.Update (); + } + TypeSystemService.ForceUpdate (dom); objcTypes.Clear (); cliTypes.Clear (); refObjcTypes.Clear (); diff --git a/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeProjectTracker.cs b/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeProjectTracker.cs index aa99545cc8..9e425e2101 100644 --- a/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeProjectTracker.cs +++ b/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeProjectTracker.cs @@ -174,7 +174,7 @@ namespace MonoDevelop.MacDev.XcodeSyncing try { EnableSyncing (monitor); - if (!UpdateTypes (monitor, true) || monitor.IsCancelRequested) + if (!UpdateTypes (monitor) || monitor.IsCancelRequested) return false; if (!UpdateXcodeProject (monitor) || monitor.IsCancelRequested) @@ -323,7 +323,7 @@ namespace MonoDevelop.MacDev.XcodeSyncing using (var monitor = GetStatusMonitor (GettextCatalog.GetString ("Syncing types to Xcode..."))) { //FIXME: make this async (and safely async) //FIXME: only update the project if obj-c types change - updateProject |= UpdateTypes (monitor, true); + updateProject |= UpdateTypes (monitor); } } @@ -365,7 +365,7 @@ namespace MonoDevelop.MacDev.XcodeSyncing #region Outbound syncing - bool UpdateTypes (IProgressMonitor monitor, bool force) + bool UpdateTypes (IProgressMonitor monitor) { monitor.BeginTask (GettextCatalog.GetString ("Updating Objective-C type information"), 0); try { @@ -373,7 +373,7 @@ namespace MonoDevelop.MacDev.XcodeSyncing if (pinfo == null) throw new Exception ("Did not get project info"); // FIXME: report progress - pinfo.Update (force); + pinfo.Update (true); userTypes = pinfo.GetTypes ().Where (t => t.IsUserType).ToList (); return true; } catch (Exception ex) { diff --git a/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeSyncBackContext.cs b/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeSyncBackContext.cs index 5a18d2d67c..e786e90948 100644 --- a/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeSyncBackContext.cs +++ b/main/src/addins/MonoDevelop.MacDev/XcodeSyncing/XcodeSyncBackContext.cs @@ -70,7 +70,13 @@ namespace MonoDevelop.MacDev.XcodeSyncing public NSObjectProjectInfo ProjectInfo { get { - return pinfo ?? (pinfo = InfoService.GetProjectInfo (Project)); + if (pinfo == null) + pinfo = InfoService.GetProjectInfo (Project); + + if (pinfo != null) + pinfo.Update (true); + + return pinfo; } } diff --git a/main/src/addins/MonoDevelop.Moonlight/Makefile.am b/main/src/addins/MonoDevelop.Moonlight/Makefile.am index 081c83253a..07e1dfcca3 100644 --- a/main/src/addins/MonoDevelop.Moonlight/Makefile.am +++ b/main/src/addins/MonoDevelop.Moonlight/Makefile.am @@ -7,12 +7,12 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll \ $(top_builddir)/build/AddIns/MonoDevelop.XmlEditor/MonoDevelop.XmlEditor.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:ICSharpCode.SharpZipLib \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.Refactoring/Makefile.am b/main/src/addins/MonoDevelop.Refactoring/Makefile.am index c637b8fc9f..78d328630b 100644 --- a/main/src/addins/MonoDevelop.Refactoring/Makefile.am +++ b/main/src/addins/MonoDevelop.Refactoring/Makefile.am @@ -8,13 +8,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.CSharp.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.RegexToolkit/Makefile.am b/main/src/addins/MonoDevelop.RegexToolkit/Makefile.am index 0c2507bf35..081b99cc30 100644 --- a/main/src/addins/MonoDevelop.RegexToolkit/Makefile.am +++ b/main/src/addins/MonoDevelop.RegexToolkit/Makefile.am @@ -4,13 +4,13 @@ ASSEMBLY = $(ADDIN_BUILD)/MonoDevelop.RegexToolkit.dll DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.DesignerSupport/MonoDevelop.DesignerSupport.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Data \ diff --git a/main/src/addins/MonoDevelop.SourceEditor2/Makefile.am b/main/src/addins/MonoDevelop.SourceEditor2/Makefile.am index c06f3b2e65..5b1db0d8df 100644 --- a/main/src/addins/MonoDevelop.SourceEditor2/Makefile.am +++ b/main/src/addins/MonoDevelop.SourceEditor2/Makefile.am @@ -66,13 +66,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/MonoDevelop.WebReferences/Makefile.am b/main/src/addins/MonoDevelop.WebReferences/Makefile.am index 54749f7638..5e417d4632 100644 --- a/main/src/addins/MonoDevelop.WebReferences/Makefile.am +++ b/main/src/addins/MonoDevelop.WebReferences/Makefile.am @@ -2,14 +2,13 @@ ADDIN_BUILD = $(top_builddir)/build/AddIns/MonoDevelop.WebReferences ASSEMBLY = $(ADDIN_BUILD)/MonoDevelop.WebReferences.dll -DEPS = \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll +DEPS = $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Configuration \ diff --git a/main/src/addins/MonoDevelop.XmlEditor/Makefile.am b/main/src/addins/MonoDevelop.XmlEditor/Makefile.am index cb47c85432..efbd831f62 100644 --- a/main/src/addins/MonoDevelop.XmlEditor/Makefile.am +++ b/main/src/addins/MonoDevelop.XmlEditor/Makefile.am @@ -9,14 +9,14 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLADE_SHARP_LIBS) \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/MonoDeveloperExtensions/Makefile.am b/main/src/addins/MonoDeveloperExtensions/Makefile.am index 31477fdbd2..1567703870 100644 --- a/main/src/addins/MonoDeveloperExtensions/Makefile.am +++ b/main/src/addins/MonoDeveloperExtensions/Makefile.am @@ -7,13 +7,12 @@ FILES = \ MonoMakefileFormat.cs \ MonoSolutionItemHandler.cs -DEPS = \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll +DEPS = $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:System \ -r:System.Data \ -r:System.Xml diff --git a/main/src/addins/NUnit/Makefile.am b/main/src/addins/NUnit/Makefile.am index 4dcf8974ad..f8704e0c5c 100644 --- a/main/src/addins/NUnit/Makefile.am +++ b/main/src/addins/NUnit/Makefile.am @@ -7,14 +7,14 @@ DEPS = \ $(top_builddir)/build/AddIns/NUnit/NUnitRunner.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLADE_SHARP_LIBS) \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:$(top_srcdir)/build/bin/MonoDevelop.Ide.dll \ -r:$(top_srcdir)/src/addins/NUnit/lib/nunit.core.dll \ -r:$(top_srcdir)/src/addins/NUnit/lib/nunit.core.interfaces.dll \ -r:$(top_srcdir)/src/addins/NUnit/lib/nunit.framework.dll \ diff --git a/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/Makefile.am b/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/Makefile.am index 670a6eabe3..cb6cc46f9a 100644 --- a/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/Makefile.am +++ b/main/src/addins/TextTemplating/MonoDevelop.TextTemplating/Makefile.am @@ -7,12 +7,12 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.TextTemplating/Mono.TextTemplating.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:System \ -r:System.Core diff --git a/main/src/addins/VBNetBinding/Makefile.am b/main/src/addins/VBNetBinding/Makefile.am index 354e928849..4ea960bcb3 100644 --- a/main/src/addins/VBNetBinding/Makefile.am +++ b/main/src/addins/VBNetBinding/Makefile.am @@ -4,13 +4,13 @@ ASSEMBLY = $(ADDIN_BUILD)/MonoDevelop.VBNetBinding.dll DEPS = \ $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll \ $(top_builddir)/build/bin/OldNRefactory.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core \ diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/Makefile.am b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/Makefile.am index 1759861107..b0e99af144 100644 --- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/Makefile.am +++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Git/Makefile.am @@ -8,7 +8,6 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll \ $(top_builddir)/contrib/bin/NGit.dll \ $(top_builddir)/contrib/bin/NSch.dll \ $(top_builddir)/contrib/bin/Sharpen.dll @@ -16,6 +15,7 @@ DEPS = \ REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/Makefile.am b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/Makefile.am index 0bb8b9735e..20cade8045 100644 --- a/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/Makefile.am +++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl.Subversion/Makefile.am @@ -7,12 +7,12 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.CSharp.dll \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Core diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/Makefile.am b/main/src/addins/VersionControl/MonoDevelop.VersionControl/Makefile.am index 6ae08a3ac1..755297b2fe 100644 --- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/Makefile.am +++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/Makefile.am @@ -88,13 +88,13 @@ DEPS = \ $(top_builddir)/build/bin/ICSharpCode.NRefactory.dll \ $(top_builddir)/build/bin/Mono.Debugging.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ - $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll + $(top_builddir)/build/bin/MonoDevelop.Core.dll REFS = \ $(GLIB_SHARP_LIBS) \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Cairo \ -r:Mono.Posix \ -r:System \ diff --git a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlNodeExtension.cs b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlNodeExtension.cs index 1250bad1b6..17505e2a04 100644 --- a/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlNodeExtension.cs +++ b/main/src/addins/VersionControl/MonoDevelop.VersionControl/MonoDevelop.VersionControl/VersionControlNodeExtension.cs @@ -51,7 +51,7 @@ namespace MonoDevelop.VersionControl ClearDirCache (ce.BaseDirectory);
Repository rep = VersionControlService.GetRepository (ce); if (rep != null) - AddFolderOverlay (rep, ce.BaseDirectory, ref icon, ref closedIcon);
+ AddFolderOverlay (rep, ce.BaseDirectory, ref icon, ref closedIcon, false);
return; } else if (dataObject is ProjectFolder) { ProjectFolder ce = (ProjectFolder) dataObject;
@@ -59,7 +59,7 @@ namespace MonoDevelop.VersionControl ClearDirCache (ce.Path);
Repository rep = VersionControlService.GetRepository (ce.ParentWorkspaceObject); if (rep != null) - AddFolderOverlay (rep, ce.Path, ref icon, ref closedIcon);
+ AddFolderOverlay (rep, ce.Path, ref icon, ref closedIcon, true);
} return; } @@ -93,14 +93,15 @@ namespace MonoDevelop.VersionControl AddOverlay (ref icon, overlay);
}
- void AddFolderOverlay (Repository rep, string folder, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon) + void AddFolderOverlay (Repository rep, string folder, ref Gdk.Pixbuf icon, ref Gdk.Pixbuf closedIcon, bool skipVersionedOverlay) { Gdk.Pixbuf overlay = null; VersionInfo vinfo = rep.GetVersionInfo (folder, false); if (vinfo == null || !vinfo.IsVersioned) { overlay = VersionControlService.LoadOverlayIconForStatus (VersionStatus.Unversioned); - } else if (vinfo.IsVersioned && !vinfo.HasLocalChanges) { - overlay = VersionControlService.overlay_controled; + } else if (vinfo.IsVersioned && !vinfo.HasLocalChanges) {
+ if (!skipVersionedOverlay) + overlay = VersionControlService.overlay_controled; } else { overlay = VersionControlService.LoadOverlayIconForStatus (vinfo.Status); } diff --git a/main/src/addins/prj2make-sharp-lib/Makefile.am b/main/src/addins/prj2make-sharp-lib/Makefile.am index ba37cfcbf0..64a94a9a7a 100644 --- a/main/src/addins/prj2make-sharp-lib/Makefile.am +++ b/main/src/addins/prj2make-sharp-lib/Makefile.am @@ -9,12 +9,12 @@ DEPS = \ $(top_builddir)/build/AddIns/MonoDevelop.Refactoring/MonoDevelop.Refactoring.dll \ $(top_builddir)/build/bin/Mono.TextEditor.dll \ $(top_builddir)/build/bin/MonoDevelop.Core.dll \ - $(top_builddir)/build/bin/MonoDevelop.Ide.dll \ $(top_builddir)/build/bin/OldNRefactory.dll REFS = \ $(GTK_SHARP_LIBS) \ $(MONO_ADDINS_LIBS) \ + -r:../../../build/bin/MonoDevelop.Ide.dll \ -r:Mono.Posix \ -r:System \ -r:System.Xml |