| Index: experimental/visual_studio_plugin/src/MsAd7.BaseImpl/ErrorBreakpointResolution.cs
|
| diff --git a/experimental/visual_studio_plugin/src/MsAd7.BaseImpl/ErrorBreakpointResolution.cs b/experimental/visual_studio_plugin/src/MsAd7.BaseImpl/ErrorBreakpointResolution.cs
|
| deleted file mode 100644
|
| index 788322ea13f29f49a972db828a1118d64a86a984..0000000000000000000000000000000000000000
|
| --- a/experimental/visual_studio_plugin/src/MsAd7.BaseImpl/ErrorBreakpointResolution.cs
|
| +++ /dev/null
|
| @@ -1,140 +0,0 @@
|
| -// Copyright 2010 The Native Client Authors. All rights reserved.
|
| -// Use of this source code is governed by a BSD-style license that can
|
| -// be found in the LICENSE file.
|
| -
|
| -#region
|
| -
|
| -using System;
|
| -using System.Diagnostics;
|
| -using System.Runtime.InteropServices;
|
| -using Microsoft.VisualStudio;
|
| -using Microsoft.VisualStudio.Debugger.Interop;
|
| -
|
| -#endregion
|
| -
|
| -namespace Google.MsAd7.BaseImpl {
|
| - /// <summary>
|
| - /// For documentation of IDebugErrorBreakpointResolution2 members, please see the VS 2008 MSDN
|
| - /// documentation.
|
| - /// </summary>
|
| - public class ErrorBreakpointResolution : IDebugErrorBreakpointResolution2 {
|
| - public ErrorBreakpointResolution() {
|
| - resolutionInfo_.dwFields = 0;
|
| - resolutionInfo_.bpResLocation.unionmember1 = IntPtr.Zero;
|
| - }
|
| -
|
| - /// <summary>
|
| - /// Set the error message field.
|
| - /// </summary>
|
| - /// <value>The message to display to the user.</value>
|
| - public string Message {
|
| - set {
|
| - resolutionInfo_.bstrMessage = value;
|
| - resolutionInfo_.dwFields = resolutionInfo_.dwFields |
|
| - enum_BPERESI_FIELDS.BPERESI_MESSAGE;
|
| - }
|
| - }
|
| -
|
| - /// <summary>
|
| - /// Sets the type field.
|
| - /// </summary>
|
| - /// <value>The type and severity of the problem that was encountered.</value>
|
| - public enum_BP_ERROR_TYPE Type {
|
| - set {
|
| - resolutionInfo_.dwType = value;
|
| - resolutionInfo_.dwFields = resolutionInfo_.dwFields |
|
| - enum_BPERESI_FIELDS.BPERESI_TYPE;
|
| - }
|
| - get { return resolutionInfo_.dwType; }
|
| - }
|
| -
|
| - #region Implementation of IDebugBreakpointResolution2
|
| -
|
| - public int GetBreakpointType(enum_BP_TYPE[] pBPType) {
|
| - Debug.WriteLine("ErrorBreakpointResolution.GetBreakpointType");
|
| - pBPType[0] = enum_BP_TYPE.BPT_CODE;
|
| - return VSConstants.S_OK;
|
| - }
|
| -
|
| - public int GetResolutionInfo(enum_BPERESI_FIELDS dwFields,
|
| - BP_ERROR_RESOLUTION_INFO[] pBpResolutionInfo) {
|
| - var rValue = VSConstants.S_FALSE;
|
| - if (resolutionInfo_.dwFields != 0 && pBpResolutionInfo != null) {
|
| - if (((int) dwFields & (int) enum_BPERESI_FIELDS.BPERESI_ALLFIELDS) ==
|
| - (int) enum_BPRESI_FIELDS.BPRESI_ALLFIELDS) {
|
| - pBpResolutionInfo[0] = resolutionInfo_;
|
| - rValue = VSConstants.S_OK;
|
| - } else {
|
| - pBpResolutionInfo[0].dwFields = dwFields & resolutionInfo_.dwFields;
|
| -
|
| - var locMask = (int) pBpResolutionInfo[0].dwFields &
|
| - (int) enum_BPERESI_FIELDS.BPERESI_BPRESLOCATION;
|
| - var msgMask = (int) pBpResolutionInfo[0].dwFields &
|
| - (int) enum_BPERESI_FIELDS.BPERESI_MESSAGE;
|
| - var progMask = (int) pBpResolutionInfo[0].dwFields &
|
| - (int) enum_BPERESI_FIELDS.BPERESI_PROGRAM;
|
| - var threadMask = (int) pBpResolutionInfo[0].dwFields &
|
| - (int) enum_BPERESI_FIELDS.BPERESI_THREAD;
|
| - var typeMask = (int) pBpResolutionInfo[0].dwFields &
|
| - (int) enum_BPERESI_FIELDS.BPERESI_TYPE;
|
| -
|
| - if (locMask != 0) {
|
| - pBpResolutionInfo[0].bpResLocation = resolutionInfo_.bpResLocation;
|
| - }
|
| - if (msgMask != 0) {
|
| - pBpResolutionInfo[0].bstrMessage = resolutionInfo_.bstrMessage;
|
| - }
|
| - if (progMask != 0) {
|
| - pBpResolutionInfo[0].pProgram = resolutionInfo_.pProgram;
|
| - }
|
| - if (threadMask != 0) {
|
| - pBpResolutionInfo[0].pThread = resolutionInfo_.pThread;
|
| - }
|
| - if (typeMask != 0) {
|
| - pBpResolutionInfo[0].dwType = resolutionInfo_.dwType;
|
| - }
|
| - rValue = VSConstants.S_OK;
|
| - }
|
| - }
|
| - return rValue;
|
| - }
|
| -
|
| - #endregion
|
| -
|
| - /// <summary>
|
| - /// Can be used to set the location of the error point that results from error resolution, or
|
| - /// other resolution information.
|
| - /// </summary>
|
| - /// <param name = "bpType">The type of breakpoint being resolved.</param>
|
| - /// <param name = "address">The address of the code referenced by the resolved breakpoint.</param>
|
| - /// <param name = "docContext">The location of the breakpoint in the code, after resolution.</param>
|
| - public void SetLocation(enum_BP_TYPE bpType,
|
| - ulong address,
|
| - DocumentContext docContext) {
|
| - var codeContext =
|
| - new CodeContext(
|
| - string.Format("{0}:{1}", docContext.Path, docContext.Line),
|
| - address,
|
| - 1,
|
| - docContext);
|
| -
|
| - resolutionInfo_.bpResLocation.bpType = (uint) bpType;
|
| -
|
| - if (resolutionInfo_.bpResLocation.unionmember1 != IntPtr.Zero) {
|
| - Marshal.Release(resolutionInfo_.bpResLocation.unionmember1);
|
| - resolutionInfo_.bpResLocation.unionmember1 = IntPtr.Zero;
|
| - }
|
| - resolutionInfo_.bpResLocation.unionmember1 =
|
| - Marshal.GetIUnknownForObject(codeContext);
|
| -
|
| - resolutionInfo_.dwFields = resolutionInfo_.dwFields |
|
| - enum_BPERESI_FIELDS.BPERESI_BPRESLOCATION;
|
| - }
|
| -
|
| - #region Private Implementation
|
| -
|
| - private BP_ERROR_RESOLUTION_INFO resolutionInfo_;
|
| -
|
| - #endregion
|
| - }
|
| -}
|
|
|