Skip to content

Commit 168ec06

Browse files
authored
Merge branch 'master' into 449_Py_Initialize_SignalConfiguration
2 parents 365e7ff + e5d299e commit 168ec06

15 files changed

+252
-76
lines changed

CHANGELOG.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,7 @@ This document follows the conventions laid out in [Keep a CHANGELOG][].
2929
- Fixed Visual Studio 2017 compat ([#434][i434]) for setup.py
3030
- Fixed crashes when integrating pythonnet in Unity3d ([#714][i714]),
3131
related to unloading the Application Domain
32+
- Fixed interop methods with Py_ssize_t. NetCoreApp 2.0 is more sensitive than net40 and requires this fix. ([#531][p531])
3233
- Fixed crash on exit of the Python interpreter if a python class
3334
derived from a .NET class has a `__namespace__` or `__assembly__`
3435
attribute ([#481][i481])
@@ -689,3 +690,4 @@ This document follows the conventions laid out in [Keep a CHANGELOG][].
689690
[p163]: https://github.com/pythonnet/pythonnet/pull/163
690691
[p625]: https://github.com/pythonnet/pythonnet/pull/625
691692
[i131]: https://github.com/pythonnet/pythonnet/issues/131
693+
[p531]: https://github.com/pythonnet/pythonnet/pull/531

src/embed_tests/TestPySequence.cs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -69,10 +69,8 @@ public void TestRepeat()
6969
PyObject actual = t1.Repeat(3);
7070
Assert.AreEqual("FooFooFoo", actual.ToString());
7171

72-
// On 32 bit system this argument should be int, but on the 64 bit system this should be long value.
73-
// This works on the Framework 4.0 accidentally, it should produce out of memory!
74-
// actual = t1.Repeat(-3);
75-
// Assert.AreEqual("", actual.ToString());
72+
actual = t1.Repeat(-3);
73+
Assert.AreEqual("", actual.ToString());
7674
}
7775

7876
[Test]

src/runtime/arrayobject.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -93,7 +93,7 @@ public static IntPtr mp_subscript(IntPtr ob, IntPtr idx)
9393
return IntPtr.Zero;
9494
}
9595

96-
int count = Runtime.PyTuple_Size(idx);
96+
var count = Runtime.PyTuple_Size(idx);
9797

9898
var args = new int[count];
9999

@@ -186,7 +186,7 @@ public static int mp_ass_subscript(IntPtr ob, IntPtr idx, IntPtr v)
186186
return -1;
187187
}
188188

189-
int count = Runtime.PyTuple_Size(idx);
189+
var count = Runtime.PyTuple_Size(idx);
190190
var args = new int[count];
191191

192192
for (var i = 0; i < count; i++)

src/runtime/assemblymanager.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -140,7 +140,7 @@ private static Assembly ResolveHandler(object ob, ResolveEventArgs args)
140140
internal static void UpdatePath()
141141
{
142142
IntPtr list = Runtime.PySys_GetObject("path");
143-
int count = Runtime.PyList_Size(list);
143+
var count = Runtime.PyList_Size(list);
144144
if (count != pypath.Count)
145145
{
146146
pypath.Clear();

src/runtime/classobject.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -230,10 +230,10 @@ public static int mp_ass_subscript(IntPtr ob, IntPtr idx, IntPtr v)
230230
}
231231

232232
// Get the args passed in.
233-
int i = Runtime.PyTuple_Size(args);
233+
var i = Runtime.PyTuple_Size(args);
234234
IntPtr defaultArgs = cls.indexer.GetDefaultArgs(args);
235-
int numOfDefaultArgs = Runtime.PyTuple_Size(defaultArgs);
236-
int temp = i + numOfDefaultArgs;
235+
var numOfDefaultArgs = Runtime.PyTuple_Size(defaultArgs);
236+
var temp = i + numOfDefaultArgs;
237237
IntPtr real = Runtime.PyTuple_New(temp + 1);
238238
for (var n = 0; n < i; n++)
239239
{

src/runtime/converter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -842,7 +842,7 @@ private static void SetConversionError(IntPtr value, Type target)
842842
private static bool ToArray(IntPtr value, Type obType, out object result, bool setError)
843843
{
844844
Type elementType = obType.GetElementType();
845-
int size = Runtime.PySequence_Size(value);
845+
var size = Runtime.PySequence_Size(value);
846846
result = null;
847847

848848
if (size < 0)

src/runtime/exceptions.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -276,7 +276,7 @@ public static void SetError(Exception e)
276276
/// </remarks>
277277
public static bool ErrorOccurred()
278278
{
279-
return Runtime.PyErr_Occurred() != 0;
279+
return Runtime.PyErr_Occurred() != IntPtr.Zero;
280280
}
281281

282282
/// <summary>

src/runtime/importhook.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -155,7 +155,7 @@ public static IntPtr __import__(IntPtr self, IntPtr args, IntPtr kw)
155155
// hook is saved as this.py_import. This version handles CLR
156156
// import and defers to the normal builtin for everything else.
157157

158-
int num_args = Runtime.PyTuple_Size(args);
158+
var num_args = Runtime.PyTuple_Size(args);
159159
if (num_args < 1)
160160
{
161161
return Exceptions.RaiseTypeError("__import__() takes at least 1 argument (0 given)");

src/runtime/indexer.cs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ internal void SetItem(IntPtr inst, IntPtr args)
5656

5757
internal bool NeedsDefaultArgs(IntPtr args)
5858
{
59-
int pynargs = Runtime.PyTuple_Size(args);
59+
var pynargs = Runtime.PyTuple_Size(args);
6060
MethodBase[] methods = SetterBinder.GetMethods();
6161
if (methods.Length == 0)
6262
{
@@ -72,7 +72,7 @@ internal bool NeedsDefaultArgs(IntPtr args)
7272
return false;
7373
}
7474

75-
for (int v = pynargs; v < clrnargs; v++)
75+
for (var v = pynargs; v < clrnargs; v++)
7676
{
7777
if (pi[v].DefaultValue == DBNull.Value)
7878
{
@@ -95,7 +95,7 @@ internal IntPtr GetDefaultArgs(IntPtr args)
9595
{
9696
return Runtime.PyTuple_New(0);
9797
}
98-
int pynargs = Runtime.PyTuple_Size(args);
98+
var pynargs = Runtime.PyTuple_Size(args);
9999

100100
// Get the default arg tuple
101101
MethodBase[] methods = SetterBinder.GetMethods();

src/runtime/interfaceobject.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ static InterfaceObject()
3636
public static IntPtr tp_new(IntPtr tp, IntPtr args, IntPtr kw)
3737
{
3838
var self = (InterfaceObject)GetManagedObject(tp);
39-
int nargs = Runtime.PyTuple_Size(args);
39+
var nargs = Runtime.PyTuple_Size(args);
4040
Type type = self.type;
4141
object obj;
4242

0 commit comments

Comments
 (0)