Changeset 1640
- Timestamp:
- 06/29/08 15:07:36 (4 months ago)
- Files:
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
libemu/trunk/src/environment/win32/env_w32_dll_export_kernel32_hooks.c
r1631 r1640 346 346 POP_DWORD(c, &eip_save); 347 347 348 emu_profile_function_add(env->profile, "ExitProcess"); 348 349 /* 349 350 VOID WINAPI ExitProcess( … … 354 355 uint32_t exitcode; 355 356 POP_DWORD(c, &exitcode); 356 357 emu_profile_argument_add_int(env->profile, "UINT", "uExitCode", exitcode); 358 359 uint32_t returnvalue; 360 if ( hook->hook.win->userhook != NULL ) 361 { 362 returnvalue = hook->hook.win->userhook(env, hook, 363 exitcode); 364 }else 365 { 366 returnvalue = 0; 367 } 368 369 emu_profile_function_returnvalue_int_set(env->profile, "void", returnvalue); 357 370 358 371 emu_cpu_eip_set(c, eip_save); … … 371 384 POP_DWORD(c, &eip_save); 372 385 386 emu_profile_function_add(env->profile, "ExitThread"); 373 387 /* 374 388 VOID ExitThread( … … 380 394 POP_DWORD(c, &exitcode); 381 395 382 396 emu_profile_argument_add_int(env->profile, "DWORD", "dwExitCode", exitcode); 397 398 uint32_t returnvalue; 399 if ( hook->hook.win->userhook != NULL ) 400 { 401 returnvalue = hook->hook.win->userhook(env, hook, 402 exitcode); 403 }else 404 { 405 returnvalue = 0; 406 } 407 408 409 emu_profile_function_returnvalue_int_set(env->profile, "void", returnvalue); 383 410 emu_cpu_eip_set(c, eip_save); 384 411 return 0; … … 877 904 POP_DWORD(c, &eip_save); 878 905 906 emu_profile_function_add(env->profile, "SetUnhandledExceptionFilter"); 879 907 /*LPTOP_LEVEL_EXCEPTION_FILTER WINAPI SetUnhandledExceptionFilter( 880 908 LPTOP_LEVEL_EXCEPTION_FILTER lpTopLevelExceptionFilter … … 883 911 uint32_t lpfilter; 884 912 POP_DWORD(c, &lpfilter); 913 emu_profile_argument_add_ptr(env->profile, "LPTOP_LEVEL_EXCEPTION_FILTER", "lpTopLevelExceptionFilter", lpfilter); 914 emu_profile_argument_add_none(env->profile); 915 885 916 886 917 logDebug(env->emu, "Exception filter %08x\n", lpfilter); 887 918 888 919 emu_cpu_reg32_set(c, eax, 0x7C81CDDA); 920 921 emu_profile_function_returnvalue_ptr_set(env->profile, "LPTOP_LEVEL_EXCEPTION_FILTER", 0x7C81CDDA); 922 emu_profile_argument_add_none(env->profile); 889 923 890 924 emu_cpu_eip_set(c, eip_save);
