Display thread id instead of %fs in relay trace.

This commit is contained in:
Dmitry Timoshkov 2001-04-09 18:47:10 +00:00 committed by Alexandre Julliard
parent a9f8997f49
commit 4ea3c26a7d
3 changed files with 14 additions and 8 deletions

View File

@ -128,8 +128,10 @@ static void get_entry_point( char *buffer, DEBUG_ENTRY_POINT *relay )
/* Now find the function */
name = find_exported_name( base, exp, ordinal + exp->Base );
sprintf( buffer, "%s.%ld: %s", base + exp->Name, ordinal + exp->Base, name ? name : "@" );
if ((name = find_exported_name( base, exp, ordinal + exp->Base )))
sprintf( buffer, "%s.%s", base + exp->Name, name );
else
sprintf( buffer, "%s.%ld", base + exp->Name, ordinal + exp->Base );
}
@ -183,7 +185,7 @@ static LONGLONG RELAY_CallFrom32( int ret_addr, ... )
DPRINTF( "Call %s(", buffer );
RELAY_PrintArgs( args, nb_args, relay->argtypes );
DPRINTF( ") ret=%08x fs=%04x\n", ret_addr, __get_fs() );
DPRINTF( ") ret=%08x tid=%08lx\n", ret_addr, GetCurrentThreadId() );
ret64 = (relay->argtypes & 0x80000000) && (nb_args < 16);
/* the user driver functions may be called with the window lock held */
@ -277,11 +279,11 @@ static LONGLONG RELAY_CallFrom32( int ret_addr, ... )
}
}
if (ret64)
DPRINTF( "Ret %s() retval=%08x%08x ret=%08x fs=%04x\n",
buffer, (UINT)(ret >> 32), (UINT)ret, ret_addr, __get_fs() );
DPRINTF( "Ret %s() retval=%08x%08x ret=%08x tid=%08lx\n",
buffer, (UINT)(ret >> 32), (UINT)ret, ret_addr, GetCurrentThreadId() );
else
DPRINTF( "Ret %s() retval=%08x ret=%08x fs=%04x\n",
buffer, (UINT)ret, ret_addr, __get_fs() );
DPRINTF( "Ret %s() retval=%08x ret=%08x tid=%08lx\n",
buffer, (UINT)ret, ret_addr, GetCurrentThreadId() );
if (memcmp( buffer, "x11drv.", 7 ) && memcmp( buffer, "ttydrv.", 7 ))
SYSLEVEL_CheckNotLevel( 2 );

View File

@ -393,7 +393,8 @@ static void start_process(void)
/* Call UserSignalProc ( USIG_PROCESS_RUNNING ... ) only for non-GUI win32 apps */
if (console_app) PROCESS_CallUserSignalProc( USIG_PROCESS_RUNNING, 0 );
TRACE_(relay)( "Starting Win32 process %s (entryproc=%p)\n", main_exe_name, entry );
TRACE_(relay)( "Starting Win32 process %s (entryproc=%p) tid=%08lx\n",
main_exe_name, entry, GetCurrentThreadId() );
if (debugged) DbgBreakPoint();
/* FIXME: should use _PEB as parameter for NT 3.5 programs !
* Dunno about other OSs */

View File

@ -30,6 +30,7 @@
#include "winnls.h"
DEFAULT_DEBUG_CHANNEL(thread);
DECLARE_DEBUG_CHANNEL(relay);
/* TEB of the initial thread */
static TEB initial_teb;
@ -271,6 +272,8 @@ static void THREAD_Start(void)
NtCurrentTeb()->cleanup = SERVICE_AddObject( cleanup_object, (PAPCFUNC)THREAD_FreeTEB,
(ULONG_PTR)NtCurrentTeb() );
TRACE_(relay)("Starting thread %08lx\n", GetCurrentThreadId());
PROCESS_CallUserSignalProc( USIG_THREAD_INIT, 0 );
PE_InitTls();
MODULE_DllThreadAttach( NULL );