@@ -1024,16 +1024,13 @@ internal static bool PyObject_IsIterable(IntPtr pointer)
1024
1024
}
1025
1025
1026
1026
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1027
- internal static extern int PyObject_HasAttrString(IntPtr pointer, string name);
1027
+ internal static extern int PyObject_HasAttrString(IntPtr pointer,[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8Marshaler))] string name);
1028
1028
1029
1029
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1030
- internal static extern IntPtr PyObject_GetAttrString(IntPtr pointer, string name);
1030
+ internal static extern IntPtr PyObject_GetAttrString(IntPtr pointer,[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8Marshaler))] string name);
1031
1031
1032
1032
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1033
- internal static extern IntPtr PyObject_GetAttrString(IntPtr pointer, IntPtr name);
1034
-
1035
- [DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1036
- internal static extern int PyObject_SetAttrString(IntPtr pointer, string name, IntPtr value);
1033
+ internal static extern int PyObject_SetAttrString(IntPtr pointer, [MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8Marshaler))] string name, IntPtr value);
1037
1034
1038
1035
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1039
1036
internal static extern int PyObject_HasAttr(IntPtr pointer, IntPtr name);
@@ -1648,7 +1645,7 @@ internal static bool PyDict_Check(IntPtr ob)
1648
1645
/// Return value: Borrowed reference.
1649
1646
/// </summary>
1650
1647
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1651
- internal static extern IntPtr PyDict_GetItemString(IntPtr pointer, string key);
1648
+ internal static extern IntPtr PyDict_GetItemString(IntPtr pointer,[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8Marshaler))] string key);
1652
1649
1653
1650
/// <summary>
1654
1651
/// Return 0 on success or -1 on failure.
@@ -1660,13 +1657,13 @@ internal static bool PyDict_Check(IntPtr ob)
1660
1657
/// Return 0 on success or -1 on failure.
1661
1658
/// </summary>
1662
1659
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1663
- internal static extern int PyDict_SetItemString(IntPtr pointer, string key, IntPtr value);
1660
+ internal static extern int PyDict_SetItemString(IntPtr pointer,[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8Marshaler))] string key, IntPtr value);
1664
1661
1665
1662
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1666
1663
internal static extern int PyDict_DelItem(IntPtr pointer, IntPtr key);
1667
1664
1668
1665
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1669
- internal static extern int PyDict_DelItemString(IntPtr pointer, string key);
1666
+ internal static extern int PyDict_DelItemString(IntPtr pointer,[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8Marshaler))] string key);
1670
1667
1671
1668
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
1672
1669
internal static extern int PyMapping_HasKey(IntPtr pointer, IntPtr key);
@@ -2018,7 +2015,7 @@ internal static IntPtr PyMem_Realloc(IntPtr ptr, long size)
2018
2015
//====================================================================
2019
2016
2020
2017
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
2021
- internal static extern void PyErr_SetString(IntPtr ob, string message);
2018
+ internal static extern void PyErr_SetString(IntPtr ob,[MarshalAs(UnmanagedType.CustomMarshaler, MarshalTypeRef = typeof(Utf8Marshaler))] string message);
2022
2019
2023
2020
[DllImport(_PythonDll, CallingConvention = CallingConvention.Cdecl)]
2024
2021
internal static extern void PyErr_SetObject(BorrowedReference type, BorrowedReference exceptionObject);