24#if defined(__i386__) || defined(__x86_64__)
74#elif defined(__x86_64__)
90 ok(frame.
AddrPC.
Offset == frame0.AddrPC.Offset,
"expected %s, got %s\n",
109 if (
addr > (
char *)stack_walk_thread &&
addr < (
char *)stack_walk_thread + 0x100)
111 found_our_frame =
TRUE;
114 si->MaxNameLen = 200;
116 ok(!
strcmp(si->Name,
"stack_walk_thread"),
"got wrong name %s\n", si->Name);
122 ok(!
ret,
"StackWalk64() should have failed\n");
124 ok(found_our_frame,
"didn't find stack_walk_thread frame\n");
137 char search_path[128];
144 ok(!
strcmp(search_path,
"."),
"Got search path '%s', expected '.'\n", search_path);
151 ok(!
strcmp(search_path,
"W:\\"),
"Got search path '%s', expected 'W:\\'\n", search_path);
158 ok(!
strcmp(search_path,
"."),
"Got search path '%s', expected '.'\n", search_path);
166 ok(!
strcmp(search_path,
".;X:\\"),
"Got search path '%s', expected '.;X:\\'\n", search_path);
174 ok(!
strcmp(search_path,
".;X:\\;Y:\\"),
"Got search path '%s', expected '.;X:\\;Y:\\'\n", search_path);
182 ok(!
strcmp(search_path,
".;Y:\\"),
"Got search path '%s', expected '.;Y:\\'\n", search_path);
190 ok(!
strcmp(search_path,
"."),
"Got search path '%s', expected '.'\n", search_path);
int strcmp(const char *String1, const char *String2)
BOOL WINAPI SymFromAddr(HANDLE hProcess, DWORD64 Address, DWORD64 *Displacement, PSYMBOL_INFO Symbol)
PVOID WINAPI SymFunctionTableAccess64(HANDLE, DWORD64)
DWORD64 WINAPI SymGetModuleBase64(HANDLE, DWORD64)
static __inline const char * wine_dbgstr_longlong(ULONGLONG ll)
#define GetCurrentProcess()
struct _SYMBOL_INFO SYMBOL_INFO
BOOL WINAPI SymSetSearchPath(HANDLE hProcess, PCSTR searchPath)
BOOL WINAPI SymCleanup(HANDLE hProcess)
BOOL WINAPI SymInitialize(HANDLE hProcess, PCSTR UserSearchPath, BOOL fInvadeProcess)
BOOL WINAPI SymGetSearchPath(HANDLE hProcess, PSTR szSearchPath, DWORD SearchPathLength)
BOOL WINAPI StackWalk64(DWORD MachineType, HANDLE hProcess, HANDLE hThread, LPSTACKFRAME64 frame, PVOID ctx, PREAD_PROCESS_MEMORY_ROUTINE64 f_read_mem, PFUNCTION_TABLE_ACCESS_ROUTINE64 FunctionTableAccessRoutine, PGET_MODULE_BASE_ROUTINE64 GetModuleBaseRoutine, PTRANSLATE_ADDRESS_ROUTINE64 f_xlat_adr)
BOOL WINAPI DECLSPEC_HOTPATCH SetEnvironmentVariableA(IN LPCSTR lpName, IN LPCSTR lpValue)
DWORD WINAPI ResumeThread(IN HANDLE hThread)
DWORD WINAPI SuspendThread(IN HANDLE hThread)
HANDLE WINAPI DECLSPEC_HOTPATCH CreateThread(IN LPSECURITY_ATTRIBUTES lpThreadAttributes, IN DWORD dwStackSize, IN LPTHREAD_START_ROUTINE lpStartAddress, IN LPVOID lpParameter, IN DWORD dwCreationFlags, OUT LPDWORD lpThreadId)
BOOL WINAPI GetThreadContext(IN HANDLE hThread, OUT LPCONTEXT lpContext)
GLuint GLuint GLsizei count
GLenum const GLvoid * addr
static void test_stack_walk(void)
static void test_search_path(void)
static const char machine[]
#define IMAGE_FILE_MACHINE_AMD64
#define IMAGE_FILE_MACHINE_I386
VOID WINAPI DECLSPEC_HOTPATCH Sleep(IN DWORD dwMilliseconds)
DWORD WINAPI GetLastError(void)
HANDLE WINAPI GetCurrentThread(void)