diff --git a/dlls/rpcrt4/rpcrt4_main.c b/dlls/rpcrt4/rpcrt4_main.c index d9efe9a19ff..7cd9b03a16a 100644 --- a/dlls/rpcrt4/rpcrt4_main.c +++ b/dlls/rpcrt4/rpcrt4_main.c @@ -239,10 +239,12 @@ RPC_STATUS WINAPI RpcStringFreeW(RPC_WSTR* String) * * Raises an exception. */ -void WINAPI RpcRaiseException(RPC_STATUS exception) +void DECLSPEC_NORETURN WINAPI RpcRaiseException(RPC_STATUS exception) { - /* FIXME: translate exception? */ + /* shouldn't return */ RaiseException(exception, 0, 0, NULL); + ERR("handler continued execution\n"); + ExitProcess(1); } /************************************************************************* diff --git a/include/rpcdce.h b/include/rpcdce.h index 7f209003217..1b8b6e71376 100644 --- a/include/rpcdce.h +++ b/include/rpcdce.h @@ -289,7 +289,7 @@ RPC_STATUS RPC_ENTRY DceErrorInqTextA(RPC_STATUS e, RPC_CSTR buffer); RPC_STATUS RPC_ENTRY DceErrorInqTextW(RPC_STATUS e, RPC_WSTR buffer); #define DceErrorInqText WINELIB_NAME_AW(DceErrorInqText) -RPCRTAPI void RPC_ENTRY +RPCRTAPI DECLSPEC_NORETURN void RPC_ENTRY RpcRaiseException( RPC_STATUS exception ); RPCRTAPI RPC_STATUS RPC_ENTRY