diff options
Diffstat (limited to 'ARMeilleure')
| -rw-r--r-- | ARMeilleure/Signal/UnixSignalHandlerRegistration.cs | 10 | ||||
| -rw-r--r-- | ARMeilleure/Signal/WindowsSignalHandlerRegistration.cs | 18 | ||||
| -rw-r--r-- | ARMeilleure/Translation/Cache/JitUnwindWindows.cs | 9 |
3 files changed, 19 insertions, 18 deletions
diff --git a/ARMeilleure/Signal/UnixSignalHandlerRegistration.cs b/ARMeilleure/Signal/UnixSignalHandlerRegistration.cs index 12bda3de..945a01da 100644 --- a/ARMeilleure/Signal/UnixSignalHandlerRegistration.cs +++ b/ARMeilleure/Signal/UnixSignalHandlerRegistration.cs @@ -18,17 +18,17 @@ namespace ARMeilleure.Signal public IntPtr sa_restorer; } - static class UnixSignalHandlerRegistration + static partial class UnixSignalHandlerRegistration { private const int SIGSEGV = 11; private const int SIGBUS = 10; private const int SA_SIGINFO = 0x00000004; - [DllImport("libc", SetLastError = true)] - private static extern int sigaction(int signum, ref SigAction sigAction, out SigAction oldAction); + [LibraryImport("libc", SetLastError = true)] + private static partial int sigaction(int signum, ref SigAction sigAction, out SigAction oldAction); - [DllImport("libc", SetLastError = true)] - private static extern int sigemptyset(ref SigSet set); + [LibraryImport("libc", SetLastError = true)] + private static partial int sigemptyset(ref SigSet set); public static SigAction RegisterExceptionHandler(IntPtr action) { diff --git a/ARMeilleure/Signal/WindowsSignalHandlerRegistration.cs b/ARMeilleure/Signal/WindowsSignalHandlerRegistration.cs index b74f1098..3219e015 100644 --- a/ARMeilleure/Signal/WindowsSignalHandlerRegistration.cs +++ b/ARMeilleure/Signal/WindowsSignalHandlerRegistration.cs @@ -3,19 +3,19 @@ using System.Runtime.InteropServices; namespace ARMeilleure.Signal { - unsafe class WindowsSignalHandlerRegistration + unsafe partial class WindowsSignalHandlerRegistration { - [DllImport("kernel32.dll")] - private static extern IntPtr AddVectoredExceptionHandler(uint first, IntPtr handler); + [LibraryImport("kernel32.dll")] + private static partial IntPtr AddVectoredExceptionHandler(uint first, IntPtr handler); - [DllImport("kernel32.dll")] - private static extern ulong RemoveVectoredExceptionHandler(IntPtr handle); + [LibraryImport("kernel32.dll")] + private static partial ulong RemoveVectoredExceptionHandler(IntPtr handle); - [DllImport("kernel32.dll", SetLastError = true, CharSet = CharSet.Ansi)] - static extern IntPtr LoadLibrary([MarshalAs(UnmanagedType.LPStr)] string lpFileName); + [LibraryImport("kernel32.dll", SetLastError = true, EntryPoint = "LoadLibraryA")] + private static partial IntPtr LoadLibrary([MarshalAs(UnmanagedType.LPStr)] string lpFileName); - [DllImport("kernel32.dll", CharSet = CharSet.Ansi, ExactSpelling = true, SetLastError = true)] - private static extern IntPtr GetProcAddress(IntPtr hModule, string procName); + [LibraryImport("kernel32.dll", SetLastError = true)] + private static partial IntPtr GetProcAddress(IntPtr hModule, [MarshalAs(UnmanagedType.LPStr)] string procName); private static IntPtr _getCurrentThreadIdPtr; diff --git a/ARMeilleure/Translation/Cache/JitUnwindWindows.cs b/ARMeilleure/Translation/Cache/JitUnwindWindows.cs index 072c0f51..77727bf1 100644 --- a/ARMeilleure/Translation/Cache/JitUnwindWindows.cs +++ b/ARMeilleure/Translation/Cache/JitUnwindWindows.cs @@ -7,7 +7,7 @@ using System.Runtime.InteropServices; namespace ARMeilleure.Translation.Cache { - static class JitUnwindWindows + static partial class JitUnwindWindows { private const int MaxUnwindCodesArraySize = 32; // Must be an even value. @@ -42,14 +42,15 @@ namespace ARMeilleure.Translation.Cache private unsafe delegate RuntimeFunction* GetRuntimeFunctionCallback(ulong controlPc, IntPtr context); - [DllImport("kernel32.dll", CharSet = CharSet.Unicode)] - private static unsafe extern bool RtlInstallFunctionTableCallback( + [LibraryImport("kernel32.dll")] + [return: MarshalAs(UnmanagedType.Bool)] + private static unsafe partial bool RtlInstallFunctionTableCallback( ulong tableIdentifier, ulong baseAddress, uint length, GetRuntimeFunctionCallback callback, IntPtr context, - string outOfProcessCallbackDll); + [MarshalAs(UnmanagedType.LPWStr)] string outOfProcessCallbackDll); private static GetRuntimeFunctionCallback _getRuntimeFunctionCallback; |
