Skip to content

Commit f121c44

Browse files
dsefilmor
authored andcommitted
Interop fix for Py_ssize_t methods (it's produces problems only on NetCoreApp 2.0).
1 parent 784190a commit f121c44

File tree

4 files changed

+226
-50
lines changed

4 files changed

+226
-50
lines changed

CHANGELOG.md

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

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy