Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(176)

Unified Diff: visual_studio/NativeClientVSAddIn/NativeClientVSAddIn/PluginDebuggerGDB.cs

Issue 11266051: Add PNaCl support for VS addin. (Closed) Base URL: http://nativeclient-sdk.googlecode.com/svn/trunk/src
Patch Set: fix nits and tests Created 8 years, 2 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: visual_studio/NativeClientVSAddIn/NativeClientVSAddIn/PluginDebuggerGDB.cs
diff --git a/visual_studio/NativeClientVSAddIn/NativeClientVSAddIn/PluginDebuggerGDB.cs b/visual_studio/NativeClientVSAddIn/NativeClientVSAddIn/PluginDebuggerGDB.cs
index 238d848098f00b0639432fa95c270f9e1ebd1992..9da21c0e79bc557894e65579b58642544f928f19 100644
--- a/visual_studio/NativeClientVSAddIn/NativeClientVSAddIn/PluginDebuggerGDB.cs
+++ b/visual_studio/NativeClientVSAddIn/NativeClientVSAddIn/PluginDebuggerGDB.cs
@@ -19,14 +19,14 @@ namespace NativeClientVSAddIn
public class PluginDebuggerGDB : PluginDebuggerBase
{
/// <summary>
- /// Path to the actual plug-in assembly.
+ /// Path to the actual nexe.
/// </summary>
- private string pluginAssembly_;
+ private string targetNexe_;
/// <summary>
- /// Directory of the plug-in project we are debugging.
+ /// Directory of the project we are debugging.
/// </summary>
- private string pluginProjectDirectory_;
+ private string projectDirectory_;
/// <summary>
/// Path to the NaCl IRT.
@@ -61,17 +61,20 @@ namespace NativeClientVSAddIn
public PluginDebuggerGDB(DTE2 dte, PropertyManager properties)
: base(dte, properties)
{
- string arch = "i686";
- if (Environment.Is64BitOperatingSystem)
- {
- arch = "x86_64";
- }
+ string arch = "i686";
+ if (Environment.Is64BitOperatingSystem)
+ {
+ arch = "x86_64";
+ }
- if (properties.TargetArchitecture != arch)
- {
- MessageBox.Show(string.Format("Debugging of {0} NaCl modules is not possible on this system ({1}).",
- properties.TargetArchitecture, arch));
- }
+ if (!properties.IsPNaCl())
+ {
+ if (properties.TargetArchitecture != arch)
+ {
+ MessageBox.Show(string.Format("Debugging of {0} NaCl modules is not possible on this system ({1}).",
+ properties.TargetArchitecture, arch));
+ }
+ }
// check chrome version
string chrome_path = properties.LocalDebuggerCommand;
@@ -127,8 +130,22 @@ namespace NativeClientVSAddIn
}
manifestPath_ = properties.ManifestPath;
- pluginAssembly_ = properties.PluginAssembly;
- pluginProjectDirectory_ = properties.ProjectDirectory;
+ targetNexe_ = properties.PluginAssembly;
+
+ if (properties.IsPNaCl())
+ {
+ string basename = Path.GetFileNameWithoutExtension(targetNexe_);
+ targetNexe_ = Path.Combine(Path.GetDirectoryName(targetNexe_),
+ basename + "_" + arch + ".nexe");
+
+ if (!File.Exists(targetNexe_))
+ {
+ MessageBox.Show(
+ string.Format("Failed to find nexe to debug: {0}", targetNexe_));
+ }
+ }
+
+ projectDirectory_ = properties.ProjectDirectory;
gdbPath_ = Path.Combine(
properties.SDKRootDirectory,
"toolchain",
@@ -224,7 +241,7 @@ namespace NativeClientVSAddIn
}
else
{
- string pluginAssemblyEscaped = pluginAssembly_.Replace("\\", "\\\\");
+ string pluginAssemblyEscaped = targetNexe_.Replace("\\", "\\\\");
contents.AppendFormat("file \"{0}\"\n", pluginAssemblyEscaped);
}
@@ -275,7 +292,7 @@ namespace NativeClientVSAddIn
gdbProcess_.StartInfo.UseShellExecute = true;
gdbProcess_.StartInfo.FileName = gdbPath_;
gdbProcess_.StartInfo.Arguments = string.Format("-x {0}", gdbInitFileName_);
- gdbProcess_.StartInfo.WorkingDirectory = pluginProjectDirectory_;
+ gdbProcess_.StartInfo.WorkingDirectory = projectDirectory_;
gdbProcess_.Start();
}
catch (Exception e)

Powered by Google App Engine
This is Rietveld 408576698