mirror of
https://git.ryujinx.app/ryubing/ryujinx.git
synced 2025-07-31 01:59:59 -06:00
misc: Replace references to IntPtr/UIntPtr with nint/nuint + code cleanups.
This commit is contained in:
@ -14,7 +14,7 @@ namespace Ryujinx.Cpu.Signal
|
||||
public int IsActive;
|
||||
public nuint RangeAddress;
|
||||
public nuint RangeEndAddress;
|
||||
public IntPtr ActionPointer;
|
||||
public nint ActionPointer;
|
||||
}
|
||||
|
||||
[InlineArray(NativeSignalHandlerGenerator.MaxTrackedRanges)]
|
||||
@ -54,8 +54,8 @@ namespace Ryujinx.Cpu.Signal
|
||||
|
||||
static class NativeSignalHandler
|
||||
{
|
||||
private static readonly IntPtr _handlerConfig;
|
||||
private static IntPtr _signalHandlerPtr;
|
||||
private static readonly nint _handlerConfig;
|
||||
private static nint _signalHandlerPtr;
|
||||
|
||||
private static MemoryBlock _codeBlock;
|
||||
|
||||
@ -70,7 +70,7 @@ namespace Ryujinx.Cpu.Signal
|
||||
config = new SignalHandlerConfig();
|
||||
}
|
||||
|
||||
public static void InitializeSignalHandler(Func<IntPtr, IntPtr, IntPtr> customSignalHandlerFactory = null)
|
||||
public static void InitializeSignalHandler(Func<nint, nint, nint> customSignalHandlerFactory = null)
|
||||
{
|
||||
if (_initialized)
|
||||
{
|
||||
@ -111,7 +111,7 @@ namespace Ryujinx.Cpu.Signal
|
||||
|
||||
if (customSignalHandlerFactory != null)
|
||||
{
|
||||
_signalHandlerPtr = customSignalHandlerFactory(IntPtr.Zero, _signalHandlerPtr);
|
||||
_signalHandlerPtr = customSignalHandlerFactory(nint.Zero, _signalHandlerPtr);
|
||||
}
|
||||
|
||||
WindowsSignalHandlerRegistration.RegisterExceptionHandler(_signalHandlerPtr);
|
||||
@ -121,7 +121,7 @@ namespace Ryujinx.Cpu.Signal
|
||||
}
|
||||
}
|
||||
|
||||
private static IntPtr MapCode(ReadOnlySpan<byte> code)
|
||||
private static nint MapCode(ReadOnlySpan<byte> code)
|
||||
{
|
||||
Debug.Assert(_codeBlock == null);
|
||||
|
||||
@ -139,7 +139,7 @@ namespace Ryujinx.Cpu.Signal
|
||||
return ref Unsafe.AsRef<SignalHandlerConfig>((void*)_handlerConfig);
|
||||
}
|
||||
|
||||
public static bool AddTrackedRegion(nuint address, nuint endAddress, IntPtr action)
|
||||
public static bool AddTrackedRegion(nuint address, nuint endAddress, nint action)
|
||||
{
|
||||
Span<SignalHandlerRange> ranges = GetConfigRef().Ranges;
|
||||
|
||||
|
@ -14,10 +14,10 @@ namespace Ryujinx.Cpu.Signal
|
||||
[StructLayout(LayoutKind.Sequential, Pack = 1)]
|
||||
public struct SigAction
|
||||
{
|
||||
public IntPtr sa_handler;
|
||||
public nint sa_handler;
|
||||
public SigSet sa_mask;
|
||||
public int sa_flags;
|
||||
public IntPtr sa_restorer;
|
||||
public nint sa_restorer;
|
||||
}
|
||||
|
||||
private const int SIGSEGV = 11;
|
||||
@ -28,14 +28,14 @@ namespace Ryujinx.Cpu.Signal
|
||||
private static partial int sigaction(int signum, ref SigAction sigAction, out SigAction oldAction);
|
||||
|
||||
[LibraryImport("libc", SetLastError = true)]
|
||||
private static partial int sigaction(int signum, IntPtr sigAction, out SigAction oldAction);
|
||||
private static partial int sigaction(int signum, nint sigAction, out SigAction oldAction);
|
||||
|
||||
[LibraryImport("libc", SetLastError = true)]
|
||||
private static partial int sigemptyset(ref SigSet set);
|
||||
|
||||
public static SigAction GetSegfaultExceptionHandler()
|
||||
{
|
||||
int result = sigaction(SIGSEGV, IntPtr.Zero, out SigAction old);
|
||||
int result = sigaction(SIGSEGV, nint.Zero, out SigAction old);
|
||||
|
||||
if (result != 0)
|
||||
{
|
||||
@ -45,7 +45,7 @@ namespace Ryujinx.Cpu.Signal
|
||||
return old;
|
||||
}
|
||||
|
||||
public static SigAction RegisterExceptionHandler(IntPtr action)
|
||||
public static SigAction RegisterExceptionHandler(nint action)
|
||||
{
|
||||
SigAction sig = new()
|
||||
{
|
||||
|
@ -6,17 +6,17 @@ namespace Ryujinx.Cpu.Signal
|
||||
static partial class WindowsSignalHandlerRegistration
|
||||
{
|
||||
[LibraryImport("kernel32.dll")]
|
||||
private static partial IntPtr AddVectoredExceptionHandler(uint first, IntPtr handler);
|
||||
private static partial nint AddVectoredExceptionHandler(uint first, nint handler);
|
||||
|
||||
[LibraryImport("kernel32.dll")]
|
||||
private static partial ulong RemoveVectoredExceptionHandler(IntPtr handle);
|
||||
private static partial ulong RemoveVectoredExceptionHandler(nint handle);
|
||||
|
||||
public static IntPtr RegisterExceptionHandler(IntPtr action)
|
||||
public static nint RegisterExceptionHandler(nint action)
|
||||
{
|
||||
return AddVectoredExceptionHandler(1, action);
|
||||
}
|
||||
|
||||
public static bool RemoveExceptionHandler(IntPtr handle)
|
||||
public static bool RemoveExceptionHandler(nint handle)
|
||||
{
|
||||
return RemoveVectoredExceptionHandler(handle) != 0;
|
||||
}
|
||||
|
Reference in New Issue
Block a user