CoreFoundation: consistently use nuint instead of mixed (u)long usage.
This also fixes a few P/Invokes that were incorrectly bound with (u)long instead of nuint.
This commit is contained in:
Родитель
63163714f5
Коммит
f5914589e1
|
@ -51,7 +51,7 @@ namespace CoreFoundation {
|
|||
}
|
||||
|
||||
[DllImport (Constants.libcLibrary)]
|
||||
extern static IntPtr dispatch_data_create (IntPtr buffer, IntPtr size, IntPtr dispatchQueue, IntPtr destructor);
|
||||
extern static IntPtr dispatch_data_create (IntPtr buffer, nuint size, IntPtr dispatchQueue, IntPtr destructor);
|
||||
|
||||
//
|
||||
// This constructor will do it for now, but we should support a constructor
|
||||
|
@ -63,7 +63,7 @@ namespace CoreFoundation {
|
|||
throw new ArgumentNullException (nameof (buffer));
|
||||
var b = Marshal.AllocHGlobal (buffer.Length);
|
||||
Marshal.Copy (buffer, 0, b, buffer.Length);
|
||||
var dd = dispatch_data_create (b, (IntPtr) buffer.Length, IntPtr.Zero, destructor: free);
|
||||
var dd = dispatch_data_create (b, (nuint) buffer.Length, IntPtr.Zero, destructor: free);
|
||||
return new DispatchData (dd, owns: true);
|
||||
}
|
||||
|
||||
|
@ -80,30 +80,30 @@ namespace CoreFoundation {
|
|||
|
||||
var b = Marshal.AllocHGlobal (length);
|
||||
Marshal.Copy (buffer, start, b, length);
|
||||
var dd = dispatch_data_create (b, (IntPtr) length, IntPtr.Zero, destructor: free);
|
||||
var dd = dispatch_data_create (b, (nuint) length, IntPtr.Zero, destructor: free);
|
||||
return new DispatchData (dd, owns: true);
|
||||
}
|
||||
|
||||
//
|
||||
// This will create a DispatchData by making a copy of the provided buffer
|
||||
//
|
||||
public static DispatchData FromBuffer (IntPtr buffer, ulong size)
|
||||
public static DispatchData FromBuffer (IntPtr buffer, nuint size)
|
||||
{
|
||||
if (buffer == null)
|
||||
throw new ArgumentNullException (nameof (buffer));
|
||||
var dd = dispatch_data_create (buffer, (IntPtr) size, IntPtr.Zero, destructor: IntPtr.Zero);
|
||||
var dd = dispatch_data_create (buffer, (nuint) size, IntPtr.Zero, destructor: IntPtr.Zero);
|
||||
return new DispatchData (dd, owns: true);
|
||||
}
|
||||
|
||||
[DllImport (Constants.libcLibrary)]
|
||||
extern static IntPtr dispatch_data_get_size (IntPtr handle);
|
||||
extern static nuint dispatch_data_get_size (IntPtr handle);
|
||||
|
||||
public long Size => (long) dispatch_data_get_size (handle);
|
||||
public nuint Size => dispatch_data_get_size (handle);
|
||||
|
||||
[DllImport (Constants.libcLibrary)]
|
||||
extern static IntPtr dispatch_data_create_map (IntPtr handle, out IntPtr bufferPtr, out ulong size);
|
||||
extern static IntPtr dispatch_data_create_map (IntPtr handle, out IntPtr bufferPtr, out nuint size);
|
||||
|
||||
public DispatchData CreateMap (out IntPtr bufferPtr, out ulong size)
|
||||
public DispatchData CreateMap (out IntPtr bufferPtr, out nuint size)
|
||||
{
|
||||
var nh = dispatch_data_create_map (handle, out bufferPtr, out size);
|
||||
return new DispatchData (nh, owns: true);
|
||||
|
@ -123,9 +123,9 @@ namespace CoreFoundation {
|
|||
}
|
||||
|
||||
[DllImport (Constants.libcLibrary)]
|
||||
extern static IntPtr dispatch_data_create_subrange (IntPtr handle, ulong offset, ulong size);
|
||||
extern static IntPtr dispatch_data_create_subrange (IntPtr handle, nuint offset, nuint size);
|
||||
|
||||
public DispatchData CreateSubrange (ulong offset, ulong size)
|
||||
public DispatchData CreateSubrange (nuint offset, nuint size)
|
||||
{
|
||||
return new DispatchData (dispatch_data_create_subrange (handle, offset, size), owns: true);
|
||||
}
|
||||
|
|
|
@ -65,13 +65,13 @@ namespace CoreFoundation {
|
|||
}
|
||||
|
||||
[DllImport (Constants.libcLibrary)]
|
||||
extern static void dispatch_read (int fd, ulong length, IntPtr dispatchQueue, IntPtr block);
|
||||
extern static void dispatch_read (int fd, nuint length, IntPtr dispatchQueue, IntPtr block);
|
||||
|
||||
//
|
||||
// if size == ULong.MaxValue, reads as much data as is available
|
||||
// if size == nuint.MaxValue, reads as much data as is available
|
||||
//
|
||||
[BindingImpl (BindingImplOptions.Optimizable)]
|
||||
public static void Read (int fd, ulong size, DispatchQueue dispatchQueue, DispatchIOHandler handler)
|
||||
public static void Read (int fd, nuint size, DispatchQueue dispatchQueue, DispatchIOHandler handler)
|
||||
{
|
||||
if (handler == null)
|
||||
throw new ArgumentNullException (nameof (handler));
|
||||
|
|
|
@ -32,7 +32,7 @@ namespace Network {
|
|||
// be present, and *also* the error will be set, indicating that some data was
|
||||
// retrieved, before the error was raised.
|
||||
//
|
||||
public delegate void NWConnectionReceiveCompletion (IntPtr data, ulong dataSize, NWContentContext context, bool isComplete, NWError error);
|
||||
public delegate void NWConnectionReceiveCompletion (IntPtr data, nuint dataSize, NWContentContext context, bool isComplete, NWError error);
|
||||
|
||||
//
|
||||
// Signature for a method invoked on data received, same as NWConnectionReceiveCompletion,
|
||||
|
@ -259,7 +259,7 @@ namespace Network {
|
|||
if (del != null) {
|
||||
DispatchData dispatchData = null, dataCopy = null;
|
||||
IntPtr bufferAddress = IntPtr.Zero;
|
||||
ulong bufferSize = 0;
|
||||
nuint bufferSize = 0;
|
||||
|
||||
if (dispatchDataPtr != IntPtr.Zero) {
|
||||
dispatchData = new DispatchData (dispatchDataPtr, owns: false);
|
||||
|
|
Загрузка…
Ссылка в новой задаче