From: "Emerick Rogul" <emerick@gmail.com>
To: 1501@emacsbugs.donarmstrong.com
Cc: cyd@stupidchicken.com
Subject: bug#1501: Emacs 22 loses undo buffer
Date: Sat, 6 Dec 2008 16:02:59 -0500 [thread overview]
Message-ID: <a8b2c60d0812061302p1100b26u16ff508813e5c6ad@mail.gmail.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 2302 bytes --]
Header file attached, although the problem occurs with any header file
(i.e., it's not specific to this particular file). The trace below
contains the exact key sequence that I typed.
In GNU Emacs 22.3.1 (i386-mingw-nt5.1.2600)
of 2008-09-06 on SOFT-MJASON
Windowing system distributor `Microsoft Corp.', version 5.1.2600
configured using `configure --with-gcc (3.4)'
Important settings:
value of $LC_ALL: nil
value of $LC_COLLATE: nil
value of $LC_CTYPE: nil
value of $LC_MESSAGES: nil
value of $LC_MONETARY: nil
value of $LC_NUMERIC: nil
value of $LC_TIME: nil
value of $LANG: ENU
locale-coding-system: cp1252
default-enable-multibyte-characters: t
Major mode: C/l
Minor modes in effect:
encoded-kbd-mode: t
tooltip-mode: t
tool-bar-mode: t
mouse-wheel-mode: t
menu-bar-mode: t
file-name-shadow-mode: t
global-font-lock-mode: t
font-lock-mode: t
blink-cursor-mode: t
unify-8859-on-encoding-mode: t
utf-translate-cjk-mode: t
auto-compression-mode: t
line-number-mode: t
abbrev-mode: t
Recent input:
<help-echo> <help-echo> <help-echo> C-x C-f <backspace>
<backspace> <backspace> <backspace> <backspace> <backspace>
<backspace> <backspace> <backspace> <backspace> c l
r <tab> <return> C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k C-k
C-k C-k C-k C-k C-k C-k C-/ C-/ C-/ C-/ C-/ C-/ C-/
C-/ C-/ C-/ C-/ C-/ C-/ C-/ C-/ C-/ C-/ C-/ C-/ C-/
C-/ ESC x r e p o r t - e m a <tab> <return>
Recent messages:
("C:\\emacs\\bin\\emacs.exe")
Loading encoded-kb...done
For information about GNU Emacs and the GNU system, type C-h C-a.
Loading cc-mode...done
Undo! [4 times]
undo-more: No further undo information [17 times]
Loading emacsbug...done
[-- Attachment #2: clrdata.h --]
[-- Type: text/plain, Size: 32480 bytes --]
/* this ALWAYS GENERATED file contains the definitions for the interfaces */
/* File created by MIDL compiler version 6.00.0366 */
/* Compiler settings for clrdata.idl:
Oicf, W1, Zp8, env=Win32 (32b run)
protocol : dce , ms_ext, c_ext, robust
error checks: allocation ref bounds_check enum stub_data
VC __declspec() decoration level:
__declspec(uuid()), __declspec(selectany), __declspec(novtable)
DECLSPEC_UUID(), MIDL_INTERFACE()
*/
//@@MIDL_FILE_HEADING( )
#pragma warning( disable: 4049 ) /* more than 64k source lines */
/* verify that the <rpcndr.h> version is high enough to compile this file*/
#ifndef __REQUIRED_RPCNDR_H_VERSION__
#define __REQUIRED_RPCNDR_H_VERSION__ 475
#endif
#include "rpc.h"
#include "rpcndr.h"
#ifndef __RPCNDR_H_VERSION__
#error this stub requires an updated version of <rpcndr.h>
#endif // __RPCNDR_H_VERSION__
#ifndef COM_NO_WINDOWS_H
#include "windows.h"
#include "ole2.h"
#endif /*COM_NO_WINDOWS_H*/
#ifndef __clrdata_h__
#define __clrdata_h__
#if defined(_MSC_VER) && (_MSC_VER >= 1020)
#pragma once
#endif
/* Forward Declarations */
#ifndef __ICLRDataTarget_FWD_DEFINED__
#define __ICLRDataTarget_FWD_DEFINED__
typedef interface ICLRDataTarget ICLRDataTarget;
#endif /* __ICLRDataTarget_FWD_DEFINED__ */
#ifndef __ICLRDataTarget2_FWD_DEFINED__
#define __ICLRDataTarget2_FWD_DEFINED__
typedef interface ICLRDataTarget2 ICLRDataTarget2;
#endif /* __ICLRDataTarget2_FWD_DEFINED__ */
#ifndef __ICLRMetadataLocator_FWD_DEFINED__
#define __ICLRMetadataLocator_FWD_DEFINED__
typedef interface ICLRMetadataLocator ICLRMetadataLocator;
#endif /* __ICLRMetadataLocator_FWD_DEFINED__ */
#ifndef __ICLRDataEnumMemoryRegionsCallback_FWD_DEFINED__
#define __ICLRDataEnumMemoryRegionsCallback_FWD_DEFINED__
typedef interface ICLRDataEnumMemoryRegionsCallback ICLRDataEnumMemoryRegionsCallback;
#endif /* __ICLRDataEnumMemoryRegionsCallback_FWD_DEFINED__ */
#ifndef __ICLRDataEnumMemoryRegions_FWD_DEFINED__
#define __ICLRDataEnumMemoryRegions_FWD_DEFINED__
typedef interface ICLRDataEnumMemoryRegions ICLRDataEnumMemoryRegions;
#endif /* __ICLRDataEnumMemoryRegions_FWD_DEFINED__ */
/* header files for imported files */
#include "unknwn.h"
#ifdef __cplusplus
extern "C"{
#endif
void * __RPC_USER MIDL_user_allocate(size_t);
void __RPC_USER MIDL_user_free( void * );
/* interface __MIDL_itf_clrdata_0000 */
/* [local] */
typedef ULONG64 CLRDATA_ADDRESS;
STDAPI CLRDataCreateInstance(REFIID iid, ICLRDataTarget* target, void** iface);
typedef HRESULT (STDAPICALLTYPE* PFN_CLRDataCreateInstance)(REFIID iid, ICLRDataTarget* target, void** iface);
extern RPC_IF_HANDLE __MIDL_itf_clrdata_0000_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_clrdata_0000_v0_0_s_ifspec;
#ifndef __ICLRDataTarget_INTERFACE_DEFINED__
#define __ICLRDataTarget_INTERFACE_DEFINED__
/* interface ICLRDataTarget */
/* [unique][uuid][object] */
EXTERN_C const IID IID_ICLRDataTarget;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("3E11CCEE-D08B-43e5-AF01-32717A64DA03")
ICLRDataTarget : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetMachineType(
/* [out] */ ULONG32 *machineType) = 0;
virtual HRESULT STDMETHODCALLTYPE GetPointerSize(
/* [out] */ ULONG32 *pointerSize) = 0;
virtual HRESULT STDMETHODCALLTYPE GetImageBase(
/* [string][in] */ LPCWSTR imagePath,
/* [out] */ CLRDATA_ADDRESS *baseAddress) = 0;
virtual HRESULT STDMETHODCALLTYPE ReadVirtual(
/* [in] */ CLRDATA_ADDRESS address,
/* [length_is][size_is][out] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesRead) = 0;
virtual HRESULT STDMETHODCALLTYPE WriteVirtual(
/* [in] */ CLRDATA_ADDRESS address,
/* [size_is][in] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesWritten) = 0;
virtual HRESULT STDMETHODCALLTYPE GetTLSValue(
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [out] */ CLRDATA_ADDRESS *value) = 0;
virtual HRESULT STDMETHODCALLTYPE SetTLSValue(
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [in] */ CLRDATA_ADDRESS value) = 0;
virtual HRESULT STDMETHODCALLTYPE GetCurrentThreadID(
/* [out] */ ULONG32 *threadID) = 0;
virtual HRESULT STDMETHODCALLTYPE GetThreadContext(
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextFlags,
/* [in] */ ULONG32 contextSize,
/* [size_is][out] */ BYTE *context) = 0;
virtual HRESULT STDMETHODCALLTYPE SetThreadContext(
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextSize,
/* [size_is][in] */ BYTE *context) = 0;
virtual HRESULT STDMETHODCALLTYPE Request(
/* [in] */ ULONG32 reqCode,
/* [in] */ ULONG32 inBufferSize,
/* [size_is][in] */ BYTE *inBuffer,
/* [in] */ ULONG32 outBufferSize,
/* [size_is][out] */ BYTE *outBuffer) = 0;
};
#else /* C style interface */
typedef struct ICLRDataTargetVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
ICLRDataTarget * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
ICLRDataTarget * This);
ULONG ( STDMETHODCALLTYPE *Release )(
ICLRDataTarget * This);
HRESULT ( STDMETHODCALLTYPE *GetMachineType )(
ICLRDataTarget * This,
/* [out] */ ULONG32 *machineType);
HRESULT ( STDMETHODCALLTYPE *GetPointerSize )(
ICLRDataTarget * This,
/* [out] */ ULONG32 *pointerSize);
HRESULT ( STDMETHODCALLTYPE *GetImageBase )(
ICLRDataTarget * This,
/* [string][in] */ LPCWSTR imagePath,
/* [out] */ CLRDATA_ADDRESS *baseAddress);
HRESULT ( STDMETHODCALLTYPE *ReadVirtual )(
ICLRDataTarget * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [length_is][size_is][out] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesRead);
HRESULT ( STDMETHODCALLTYPE *WriteVirtual )(
ICLRDataTarget * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [size_is][in] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesWritten);
HRESULT ( STDMETHODCALLTYPE *GetTLSValue )(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [out] */ CLRDATA_ADDRESS *value);
HRESULT ( STDMETHODCALLTYPE *SetTLSValue )(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [in] */ CLRDATA_ADDRESS value);
HRESULT ( STDMETHODCALLTYPE *GetCurrentThreadID )(
ICLRDataTarget * This,
/* [out] */ ULONG32 *threadID);
HRESULT ( STDMETHODCALLTYPE *GetThreadContext )(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextFlags,
/* [in] */ ULONG32 contextSize,
/* [size_is][out] */ BYTE *context);
HRESULT ( STDMETHODCALLTYPE *SetThreadContext )(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextSize,
/* [size_is][in] */ BYTE *context);
HRESULT ( STDMETHODCALLTYPE *Request )(
ICLRDataTarget * This,
/* [in] */ ULONG32 reqCode,
/* [in] */ ULONG32 inBufferSize,
/* [size_is][in] */ BYTE *inBuffer,
/* [in] */ ULONG32 outBufferSize,
/* [size_is][out] */ BYTE *outBuffer);
END_INTERFACE
} ICLRDataTargetVtbl;
interface ICLRDataTarget
{
CONST_VTBL struct ICLRDataTargetVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define ICLRDataTarget_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define ICLRDataTarget_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define ICLRDataTarget_Release(This) \
(This)->lpVtbl -> Release(This)
#define ICLRDataTarget_GetMachineType(This,machineType) \
(This)->lpVtbl -> GetMachineType(This,machineType)
#define ICLRDataTarget_GetPointerSize(This,pointerSize) \
(This)->lpVtbl -> GetPointerSize(This,pointerSize)
#define ICLRDataTarget_GetImageBase(This,imagePath,baseAddress) \
(This)->lpVtbl -> GetImageBase(This,imagePath,baseAddress)
#define ICLRDataTarget_ReadVirtual(This,address,buffer,bytesRequested,bytesRead) \
(This)->lpVtbl -> ReadVirtual(This,address,buffer,bytesRequested,bytesRead)
#define ICLRDataTarget_WriteVirtual(This,address,buffer,bytesRequested,bytesWritten) \
(This)->lpVtbl -> WriteVirtual(This,address,buffer,bytesRequested,bytesWritten)
#define ICLRDataTarget_GetTLSValue(This,threadID,index,value) \
(This)->lpVtbl -> GetTLSValue(This,threadID,index,value)
#define ICLRDataTarget_SetTLSValue(This,threadID,index,value) \
(This)->lpVtbl -> SetTLSValue(This,threadID,index,value)
#define ICLRDataTarget_GetCurrentThreadID(This,threadID) \
(This)->lpVtbl -> GetCurrentThreadID(This,threadID)
#define ICLRDataTarget_GetThreadContext(This,threadID,contextFlags,contextSize,context) \
(This)->lpVtbl -> GetThreadContext(This,threadID,contextFlags,contextSize,context)
#define ICLRDataTarget_SetThreadContext(This,threadID,contextSize,context) \
(This)->lpVtbl -> SetThreadContext(This,threadID,contextSize,context)
#define ICLRDataTarget_Request(This,reqCode,inBufferSize,inBuffer,outBufferSize,outBuffer) \
(This)->lpVtbl -> Request(This,reqCode,inBufferSize,inBuffer,outBufferSize,outBuffer)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE ICLRDataTarget_GetMachineType_Proxy(
ICLRDataTarget * This,
/* [out] */ ULONG32 *machineType);
void __RPC_STUB ICLRDataTarget_GetMachineType_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_GetPointerSize_Proxy(
ICLRDataTarget * This,
/* [out] */ ULONG32 *pointerSize);
void __RPC_STUB ICLRDataTarget_GetPointerSize_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_GetImageBase_Proxy(
ICLRDataTarget * This,
/* [string][in] */ LPCWSTR imagePath,
/* [out] */ CLRDATA_ADDRESS *baseAddress);
void __RPC_STUB ICLRDataTarget_GetImageBase_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_ReadVirtual_Proxy(
ICLRDataTarget * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [length_is][size_is][out] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesRead);
void __RPC_STUB ICLRDataTarget_ReadVirtual_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_WriteVirtual_Proxy(
ICLRDataTarget * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [size_is][in] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesWritten);
void __RPC_STUB ICLRDataTarget_WriteVirtual_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_GetTLSValue_Proxy(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [out] */ CLRDATA_ADDRESS *value);
void __RPC_STUB ICLRDataTarget_GetTLSValue_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_SetTLSValue_Proxy(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [in] */ CLRDATA_ADDRESS value);
void __RPC_STUB ICLRDataTarget_SetTLSValue_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_GetCurrentThreadID_Proxy(
ICLRDataTarget * This,
/* [out] */ ULONG32 *threadID);
void __RPC_STUB ICLRDataTarget_GetCurrentThreadID_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_GetThreadContext_Proxy(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextFlags,
/* [in] */ ULONG32 contextSize,
/* [size_is][out] */ BYTE *context);
void __RPC_STUB ICLRDataTarget_GetThreadContext_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_SetThreadContext_Proxy(
ICLRDataTarget * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextSize,
/* [size_is][in] */ BYTE *context);
void __RPC_STUB ICLRDataTarget_SetThreadContext_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget_Request_Proxy(
ICLRDataTarget * This,
/* [in] */ ULONG32 reqCode,
/* [in] */ ULONG32 inBufferSize,
/* [size_is][in] */ BYTE *inBuffer,
/* [in] */ ULONG32 outBufferSize,
/* [size_is][out] */ BYTE *outBuffer);
void __RPC_STUB ICLRDataTarget_Request_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __ICLRDataTarget_INTERFACE_DEFINED__ */
#ifndef __ICLRDataTarget2_INTERFACE_DEFINED__
#define __ICLRDataTarget2_INTERFACE_DEFINED__
/* interface ICLRDataTarget2 */
/* [unique][uuid][object] */
EXTERN_C const IID IID_ICLRDataTarget2;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("6d05fae3-189c-4630-a6dc-1c251e1c01ab")
ICLRDataTarget2 : public ICLRDataTarget
{
public:
virtual HRESULT STDMETHODCALLTYPE AllocVirtual(
/* [in] */ CLRDATA_ADDRESS addr,
/* [in] */ ULONG32 size,
/* [in] */ ULONG32 typeFlags,
/* [in] */ ULONG32 protectFlags,
/* [out] */ CLRDATA_ADDRESS *virt) = 0;
virtual HRESULT STDMETHODCALLTYPE FreeVirtual(
/* [in] */ CLRDATA_ADDRESS addr,
/* [in] */ ULONG32 size,
/* [in] */ ULONG32 typeFlags) = 0;
};
#else /* C style interface */
typedef struct ICLRDataTarget2Vtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
ICLRDataTarget2 * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
ICLRDataTarget2 * This);
ULONG ( STDMETHODCALLTYPE *Release )(
ICLRDataTarget2 * This);
HRESULT ( STDMETHODCALLTYPE *GetMachineType )(
ICLRDataTarget2 * This,
/* [out] */ ULONG32 *machineType);
HRESULT ( STDMETHODCALLTYPE *GetPointerSize )(
ICLRDataTarget2 * This,
/* [out] */ ULONG32 *pointerSize);
HRESULT ( STDMETHODCALLTYPE *GetImageBase )(
ICLRDataTarget2 * This,
/* [string][in] */ LPCWSTR imagePath,
/* [out] */ CLRDATA_ADDRESS *baseAddress);
HRESULT ( STDMETHODCALLTYPE *ReadVirtual )(
ICLRDataTarget2 * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [length_is][size_is][out] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesRead);
HRESULT ( STDMETHODCALLTYPE *WriteVirtual )(
ICLRDataTarget2 * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [size_is][in] */ BYTE *buffer,
/* [in] */ ULONG32 bytesRequested,
/* [out] */ ULONG32 *bytesWritten);
HRESULT ( STDMETHODCALLTYPE *GetTLSValue )(
ICLRDataTarget2 * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [out] */ CLRDATA_ADDRESS *value);
HRESULT ( STDMETHODCALLTYPE *SetTLSValue )(
ICLRDataTarget2 * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 index,
/* [in] */ CLRDATA_ADDRESS value);
HRESULT ( STDMETHODCALLTYPE *GetCurrentThreadID )(
ICLRDataTarget2 * This,
/* [out] */ ULONG32 *threadID);
HRESULT ( STDMETHODCALLTYPE *GetThreadContext )(
ICLRDataTarget2 * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextFlags,
/* [in] */ ULONG32 contextSize,
/* [size_is][out] */ BYTE *context);
HRESULT ( STDMETHODCALLTYPE *SetThreadContext )(
ICLRDataTarget2 * This,
/* [in] */ ULONG32 threadID,
/* [in] */ ULONG32 contextSize,
/* [size_is][in] */ BYTE *context);
HRESULT ( STDMETHODCALLTYPE *Request )(
ICLRDataTarget2 * This,
/* [in] */ ULONG32 reqCode,
/* [in] */ ULONG32 inBufferSize,
/* [size_is][in] */ BYTE *inBuffer,
/* [in] */ ULONG32 outBufferSize,
/* [size_is][out] */ BYTE *outBuffer);
HRESULT ( STDMETHODCALLTYPE *AllocVirtual )(
ICLRDataTarget2 * This,
/* [in] */ CLRDATA_ADDRESS addr,
/* [in] */ ULONG32 size,
/* [in] */ ULONG32 typeFlags,
/* [in] */ ULONG32 protectFlags,
/* [out] */ CLRDATA_ADDRESS *virt);
HRESULT ( STDMETHODCALLTYPE *FreeVirtual )(
ICLRDataTarget2 * This,
/* [in] */ CLRDATA_ADDRESS addr,
/* [in] */ ULONG32 size,
/* [in] */ ULONG32 typeFlags);
END_INTERFACE
} ICLRDataTarget2Vtbl;
interface ICLRDataTarget2
{
CONST_VTBL struct ICLRDataTarget2Vtbl *lpVtbl;
};
#ifdef COBJMACROS
#define ICLRDataTarget2_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define ICLRDataTarget2_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define ICLRDataTarget2_Release(This) \
(This)->lpVtbl -> Release(This)
#define ICLRDataTarget2_GetMachineType(This,machineType) \
(This)->lpVtbl -> GetMachineType(This,machineType)
#define ICLRDataTarget2_GetPointerSize(This,pointerSize) \
(This)->lpVtbl -> GetPointerSize(This,pointerSize)
#define ICLRDataTarget2_GetImageBase(This,imagePath,baseAddress) \
(This)->lpVtbl -> GetImageBase(This,imagePath,baseAddress)
#define ICLRDataTarget2_ReadVirtual(This,address,buffer,bytesRequested,bytesRead) \
(This)->lpVtbl -> ReadVirtual(This,address,buffer,bytesRequested,bytesRead)
#define ICLRDataTarget2_WriteVirtual(This,address,buffer,bytesRequested,bytesWritten) \
(This)->lpVtbl -> WriteVirtual(This,address,buffer,bytesRequested,bytesWritten)
#define ICLRDataTarget2_GetTLSValue(This,threadID,index,value) \
(This)->lpVtbl -> GetTLSValue(This,threadID,index,value)
#define ICLRDataTarget2_SetTLSValue(This,threadID,index,value) \
(This)->lpVtbl -> SetTLSValue(This,threadID,index,value)
#define ICLRDataTarget2_GetCurrentThreadID(This,threadID) \
(This)->lpVtbl -> GetCurrentThreadID(This,threadID)
#define ICLRDataTarget2_GetThreadContext(This,threadID,contextFlags,contextSize,context) \
(This)->lpVtbl -> GetThreadContext(This,threadID,contextFlags,contextSize,context)
#define ICLRDataTarget2_SetThreadContext(This,threadID,contextSize,context) \
(This)->lpVtbl -> SetThreadContext(This,threadID,contextSize,context)
#define ICLRDataTarget2_Request(This,reqCode,inBufferSize,inBuffer,outBufferSize,outBuffer) \
(This)->lpVtbl -> Request(This,reqCode,inBufferSize,inBuffer,outBufferSize,outBuffer)
#define ICLRDataTarget2_AllocVirtual(This,addr,size,typeFlags,protectFlags,virt) \
(This)->lpVtbl -> AllocVirtual(This,addr,size,typeFlags,protectFlags,virt)
#define ICLRDataTarget2_FreeVirtual(This,addr,size,typeFlags) \
(This)->lpVtbl -> FreeVirtual(This,addr,size,typeFlags)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE ICLRDataTarget2_AllocVirtual_Proxy(
ICLRDataTarget2 * This,
/* [in] */ CLRDATA_ADDRESS addr,
/* [in] */ ULONG32 size,
/* [in] */ ULONG32 typeFlags,
/* [in] */ ULONG32 protectFlags,
/* [out] */ CLRDATA_ADDRESS *virt);
void __RPC_STUB ICLRDataTarget2_AllocVirtual_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE ICLRDataTarget2_FreeVirtual_Proxy(
ICLRDataTarget2 * This,
/* [in] */ CLRDATA_ADDRESS addr,
/* [in] */ ULONG32 size,
/* [in] */ ULONG32 typeFlags);
void __RPC_STUB ICLRDataTarget2_FreeVirtual_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __ICLRDataTarget2_INTERFACE_DEFINED__ */
#ifndef __ICLRMetadataLocator_INTERFACE_DEFINED__
#define __ICLRMetadataLocator_INTERFACE_DEFINED__
/* interface ICLRMetadataLocator */
/* [unique][uuid][object] */
EXTERN_C const IID IID_ICLRMetadataLocator;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("aa8fa804-bc05-4642-b2c5-c353ed22fc63")
ICLRMetadataLocator : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE GetMetadata(
/* [in] */ LPCWSTR imagePath,
/* [in] */ ULONG32 imageTimestamp,
/* [in] */ ULONG32 imageSize,
/* [in] */ GUID *mvid,
/* [in] */ ULONG32 mdRva,
/* [in] */ ULONG32 flags,
/* [in] */ ULONG32 bufferSize,
/* [length_is][size_is][out] */ BYTE *buffer,
/* [out] */ ULONG32 *dataSize) = 0;
};
#else /* C style interface */
typedef struct ICLRMetadataLocatorVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
ICLRMetadataLocator * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
ICLRMetadataLocator * This);
ULONG ( STDMETHODCALLTYPE *Release )(
ICLRMetadataLocator * This);
HRESULT ( STDMETHODCALLTYPE *GetMetadata )(
ICLRMetadataLocator * This,
/* [in] */ LPCWSTR imagePath,
/* [in] */ ULONG32 imageTimestamp,
/* [in] */ ULONG32 imageSize,
/* [in] */ GUID *mvid,
/* [in] */ ULONG32 mdRva,
/* [in] */ ULONG32 flags,
/* [in] */ ULONG32 bufferSize,
/* [length_is][size_is][out] */ BYTE *buffer,
/* [out] */ ULONG32 *dataSize);
END_INTERFACE
} ICLRMetadataLocatorVtbl;
interface ICLRMetadataLocator
{
CONST_VTBL struct ICLRMetadataLocatorVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define ICLRMetadataLocator_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define ICLRMetadataLocator_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define ICLRMetadataLocator_Release(This) \
(This)->lpVtbl -> Release(This)
#define ICLRMetadataLocator_GetMetadata(This,imagePath,imageTimestamp,imageSize,mvid,mdRva,flags,bufferSize,buffer,dataSize) \
(This)->lpVtbl -> GetMetadata(This,imagePath,imageTimestamp,imageSize,mvid,mdRva,flags,bufferSize,buffer,dataSize)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE ICLRMetadataLocator_GetMetadata_Proxy(
ICLRMetadataLocator * This,
/* [in] */ LPCWSTR imagePath,
/* [in] */ ULONG32 imageTimestamp,
/* [in] */ ULONG32 imageSize,
/* [in] */ GUID *mvid,
/* [in] */ ULONG32 mdRva,
/* [in] */ ULONG32 flags,
/* [in] */ ULONG32 bufferSize,
/* [length_is][size_is][out] */ BYTE *buffer,
/* [out] */ ULONG32 *dataSize);
void __RPC_STUB ICLRMetadataLocator_GetMetadata_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __ICLRMetadataLocator_INTERFACE_DEFINED__ */
#ifndef __ICLRDataEnumMemoryRegionsCallback_INTERFACE_DEFINED__
#define __ICLRDataEnumMemoryRegionsCallback_INTERFACE_DEFINED__
/* interface ICLRDataEnumMemoryRegionsCallback */
/* [uuid][object] */
EXTERN_C const IID IID_ICLRDataEnumMemoryRegionsCallback;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("BCDD6908-BA2D-4ec5-96CF-DF4D5CDCB4A4")
ICLRDataEnumMemoryRegionsCallback : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE EnumMemoryRegion(
/* [in] */ CLRDATA_ADDRESS address,
/* [in] */ ULONG32 size) = 0;
};
#else /* C style interface */
typedef struct ICLRDataEnumMemoryRegionsCallbackVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
ICLRDataEnumMemoryRegionsCallback * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
ICLRDataEnumMemoryRegionsCallback * This);
ULONG ( STDMETHODCALLTYPE *Release )(
ICLRDataEnumMemoryRegionsCallback * This);
HRESULT ( STDMETHODCALLTYPE *EnumMemoryRegion )(
ICLRDataEnumMemoryRegionsCallback * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [in] */ ULONG32 size);
END_INTERFACE
} ICLRDataEnumMemoryRegionsCallbackVtbl;
interface ICLRDataEnumMemoryRegionsCallback
{
CONST_VTBL struct ICLRDataEnumMemoryRegionsCallbackVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define ICLRDataEnumMemoryRegionsCallback_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define ICLRDataEnumMemoryRegionsCallback_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define ICLRDataEnumMemoryRegionsCallback_Release(This) \
(This)->lpVtbl -> Release(This)
#define ICLRDataEnumMemoryRegionsCallback_EnumMemoryRegion(This,address,size) \
(This)->lpVtbl -> EnumMemoryRegion(This,address,size)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE ICLRDataEnumMemoryRegionsCallback_EnumMemoryRegion_Proxy(
ICLRDataEnumMemoryRegionsCallback * This,
/* [in] */ CLRDATA_ADDRESS address,
/* [in] */ ULONG32 size);
void __RPC_STUB ICLRDataEnumMemoryRegionsCallback_EnumMemoryRegion_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __ICLRDataEnumMemoryRegionsCallback_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_clrdata_0012 */
/* [local] */
typedef
enum CLRDataEnumMemoryFlags
{ CLRDATA_ENUM_MEM_DEFAULT = 0,
CLRDATA_ENUM_MEM_MINI = CLRDATA_ENUM_MEM_DEFAULT,
CLRDATA_ENUM_MEM_HEAP = 0x1
} CLRDataEnumMemoryFlags;
extern RPC_IF_HANDLE __MIDL_itf_clrdata_0012_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_clrdata_0012_v0_0_s_ifspec;
#ifndef __ICLRDataEnumMemoryRegions_INTERFACE_DEFINED__
#define __ICLRDataEnumMemoryRegions_INTERFACE_DEFINED__
/* interface ICLRDataEnumMemoryRegions */
/* [uuid][object] */
EXTERN_C const IID IID_ICLRDataEnumMemoryRegions;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("471c35b4-7c2f-4ef0-a945-00f8c38056f1")
ICLRDataEnumMemoryRegions : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE EnumMemoryRegions(
/* [in] */ ICLRDataEnumMemoryRegionsCallback *callback,
/* [in] */ ULONG32 miniDumpFlags,
/* [in] */ CLRDataEnumMemoryFlags clrFlags) = 0;
};
#else /* C style interface */
typedef struct ICLRDataEnumMemoryRegionsVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
ICLRDataEnumMemoryRegions * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
ICLRDataEnumMemoryRegions * This);
ULONG ( STDMETHODCALLTYPE *Release )(
ICLRDataEnumMemoryRegions * This);
HRESULT ( STDMETHODCALLTYPE *EnumMemoryRegions )(
ICLRDataEnumMemoryRegions * This,
/* [in] */ ICLRDataEnumMemoryRegionsCallback *callback,
/* [in] */ ULONG32 miniDumpFlags,
/* [in] */ CLRDataEnumMemoryFlags clrFlags);
END_INTERFACE
} ICLRDataEnumMemoryRegionsVtbl;
interface ICLRDataEnumMemoryRegions
{
CONST_VTBL struct ICLRDataEnumMemoryRegionsVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define ICLRDataEnumMemoryRegions_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define ICLRDataEnumMemoryRegions_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define ICLRDataEnumMemoryRegions_Release(This) \
(This)->lpVtbl -> Release(This)
#define ICLRDataEnumMemoryRegions_EnumMemoryRegions(This,callback,miniDumpFlags,clrFlags) \
(This)->lpVtbl -> EnumMemoryRegions(This,callback,miniDumpFlags,clrFlags)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE ICLRDataEnumMemoryRegions_EnumMemoryRegions_Proxy(
ICLRDataEnumMemoryRegions * This,
/* [in] */ ICLRDataEnumMemoryRegionsCallback *callback,
/* [in] */ ULONG32 miniDumpFlags,
/* [in] */ CLRDataEnumMemoryFlags clrFlags);
void __RPC_STUB ICLRDataEnumMemoryRegions_EnumMemoryRegions_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __ICLRDataEnumMemoryRegions_INTERFACE_DEFINED__ */
/* Additional Prototypes for ALL interfaces */
/* end of Additional Prototypes */
#ifdef __cplusplus
}
#endif
#endif
next reply other threads:[~2008-12-06 21:02 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-12-06 21:02 Emerick Rogul [this message]
2008-12-07 1:31 ` bug#1501: Emacs 22 loses undo buffer Chong Yidong
2008-12-07 2:03 ` Emerick Rogul
2008-12-07 5:36 ` Chong Yidong
2008-12-07 5:48 ` Chong Yidong
2008-12-07 12:36 ` Emerick Rogul
-- strict thread matches above, loose matches on Subject: below --
2009-04-24 22:14 Suresh Kannan
2009-01-27 20:58 Chong Yidong
2008-12-06 4:01 Chong Yidong
2008-12-05 16:51 Emerick Rogul
2019-08-20 18:36 ` Stefan Kangas
2019-08-20 18:45 ` Noam Postavsky
2019-08-21 14:46 ` Stefan Kangas
2019-08-22 1:19 ` Noam Postavsky
2021-10-20 1:01 ` Stefan Kangas
2021-10-20 12:05 ` Eli Zaretskii
2021-10-21 20:46 ` Stefan Kangas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
List information: https://www.gnu.org/software/emacs/
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=a8b2c60d0812061302p1100b26u16ff508813e5c6ad@mail.gmail.com \
--to=emerick@gmail.com \
--cc=1501@emacsbugs.donarmstrong.com \
--cc=cyd@stupidchicken.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this public inbox
https://git.savannah.gnu.org/cgit/emacs.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).