Explorar o código

Merge branch 'release/1.10.x'

rdb %!s(int64=2) %!d(string=hai) anos
pai
achega
c99fe581d3
Modificáronse 4 ficheiros con 20 adicións e 1 borrados
  1. 2 1
      .gitignore
  2. 1 0
      BACKERS.md
  3. 5 0
      panda/src/cocoadisplay/cocoaPandaAppDelegate.mm
  4. 12 0
      panda/src/event/pythonTask.cxx

+ 2 - 1
.gitignore

@@ -52,9 +52,10 @@ cmake_install.cmake
 install_manifest.txt
 CTestTestfile.cmake
 
-# Windows
+# Operating system
 Thumbs.db
 ehthumbs.db
+.DS_Store
 
 # macOS
 .DS_Store

+ 1 - 0
BACKERS.md

@@ -31,6 +31,7 @@ This is a list of all the people who are contributing financially to Panda3D.  I
 * Gyedo Jeon
 * GameDev JONI
 * Max Rodriguez
+* Jethro Schoppenhorst
 
 ## Backers
 

+ 5 - 0
panda/src/cocoadisplay/cocoaPandaAppDelegate.mm

@@ -26,6 +26,11 @@
   return self;
 }
 
+- (BOOL)applicationSupportsSecureRestorableState:(NSApplication *)app {
+  // Squelches an annoying warning.
+  return YES;
+}
+
 - (void)applicationDidFinishLaunching:(NSNotification *)notification {
   // This only seems to work when called here.
   [NSApp activateIgnoringOtherApps:YES];

+ 12 - 0
panda/src/event/pythonTask.cxx

@@ -617,7 +617,19 @@ do_python_task() {
       Py_DECREF(_generator);
       _generator = nullptr;
 
+#if PY_VERSION_HEX >= 0x030D0000 // Python 3.13
+      // Python 3.13 does not support _PyGen_FetchStopIterationValue anymore.
+      if (PyErr_ExceptionMatches(PyExc_StopIteration)) {
+        PyObject *exc = PyErr_GetRaisedException();
+        result = ((PyStopIterationObject *)exc)->value;
+        if (result == nullptr) {
+          result = Py_None;
+        }
+        Py_INCREF(result);
+        Py_DECREF(exc);
+#else
       if (_PyGen_FetchStopIterationValue(&result) == 0) {
+#endif
         PyErr_Clear();
 
         if (_must_cancel) {