summaryrefslogtreecommitdiffstats
path: root/Modules
Commit message (Collapse)AuthorAgeFilesLines
* [3.12] gh-129502: Fix handling errors in ctypes callbacks (GH-129504) (#129639)Serhiy Storchaka2025-02-041-34/+26
| | | | | | | Unlikely errors in preparing arguments for ctypes callback are now handled in the same way as errors raised in the callback of in converting the result of the callback -- using sys.unraisablehook() instead of sys.excepthook() and not setting sys.last_exc and other variables. (cherry picked from commit 9d63ae5fe52d95059ab1bcd4cbb1f9e17033c897)
* [3.12] gh-129345: null check for indent syslogmodule (GH-129348) (#129443)Miss Islington (bot)2025-02-031-1/+1
| | | | | | gh-129345: null check for indent syslogmodule (GH-129348) (cherry picked from commit 25cf79a0829422bd8479ca0c13c72b769422077b) Co-authored-by: Burkov Egor <xwooffie@gmail.com>
* [3.12] gh-129539: Include sysexits.h before checking EX_OK (#129590) (#129609)Victor Stinner2025-02-031-4/+4
| | | | | | | | | [3.13] gh-129539: Include sysexits.h before checking EX_OK (#129590) Previously, the macro would be redefined when the header was included. (cherry picked from commit 65f3432ac32f92bc3d8b7b11103a56c5a70049c0) Co-authored-by: Collin Funk <collin.funk1@gmail.com>
* [3.12] gh-111495: Add PyFile tests (#129449) (#129477) (#129501)Victor Stinner2025-01-312-5/+240
| | | | | | | | | | | | | | | | | | | [3.13] gh-111495: Add PyFile tests (#129449) (#129477) gh-111495: Add PyFile tests (#129449) Add tests for the following functions in test_capi.test_file: * PyFile_FromFd() * PyFile_GetLine() * PyFile_NewStdPrinter() * PyFile_WriteObject() * PyFile_WriteString() * PyObject_AsFileDescriptor() Remove test_embed.StdPrinterTests which became redundant. (cherry picked from commit 4ca9fc08f89bf7172d41e523d9e520eb1729ee8c) (cherry picked from commit 9a59a51733e58b6091ca9157fd43cc9d0f93a96f)
* [3.12] gh-129409: Fix Integer overflow - SEGV while writing data more than ↵Miss Islington (bot)2025-01-291-1/+1
| | | | | | | | 2GB in CSV file (GH-129413) (#129437) gh-129409: Fix Integer overflow - SEGV while writing data more than 2GB in CSV file (GH-129413) (cherry picked from commit 97b0ef05d987ebef354512b516a246feb411e815) Co-authored-by: Srinivas Reddy Thatiparthy (తాటిపర్తి శ్రీనివాస్ రెడ్డి) <thatiparthysreenivas@gmail.com>
* [3.12] gh-129346: Handle allocation errors for SQLite aggregate context ↵Miss Islington (bot)2025-01-271-0/+5
| | | | | | | (GH-129347) (#129373) (cherry picked from commit 379ab856f59423c570333403a7d5d72f3ea82d52) Co-authored-by: Erlend E. Aasland <erlend@python.org>
* [3.12] gh-129185: Fix PyTraceMalloc_Untrack() at Python exit (#129191) ↵Victor Stinner2025-01-232-2/+12
| | | | | | | | | | | | | | | | | | (#129217) (#129221) [3.13] gh-129185: Fix PyTraceMalloc_Untrack() at Python exit (#129191) (#129217) gh-129185: Fix PyTraceMalloc_Untrack() at Python exit (#129191) Support calling PyTraceMalloc_Track() and PyTraceMalloc_Untrack() during late Python finalization. * Call _PyTraceMalloc_Fini() later in Python finalization. * Test also PyTraceMalloc_Untrack() without the GIL * PyTraceMalloc_Untrack() now gets the GIL. * Test also PyTraceMalloc_Untrack() in test_tracemalloc_track_race(). (cherry picked from commit 46c7e13c055c218e18b0424efc60965e6a5fe6ea) (cherry picked from commit e3b3e01d6a6f43c15890d14f139f38155601643a)
* [3.12] gh-111178: fix UBSan failures in ↵Miss Islington (bot)2025-01-201-2/+5
| | | | | | | | | | `Modules/_multiprocessing/semaphore.c` (GH-129084) (#129101) gh-111178: fix UBSan failures in `Modules/_multiprocessing/semaphore.c` (GH-129084) fix UBSan failures for `SemLockObject` (cherry picked from commit 5ed5572cac7ef204767ddf8e8888e15672ba558e) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* [3.12] Fix a typo in `syslog`'s error message (GH-129029) (#129050)Miss Islington (bot)2025-01-201-1/+1
| | | | | | Fix a typo in `syslog`'s error message (GH-129029) (cherry picked from commit 9b1c1817af30e609b7cbfacbe5b1e73e21dc9e37) Co-authored-by: Tomas R <tomas.roun8@gmail.com>
* [3.12] gh-111495: Add more tests on PyEval C APIs (#122789) (#128987) (#129023)Victor Stinner2025-01-194-15/+79
| | | | | | | | | | | * Add Lib/test/test_capi/test_eval.py * Add Modules/_testlimitedcapi/eval.c (cherry picked from commit bf8b3746398ea756c97e3cf263d63ca3ce3a544e) * gh-111495: Fix refleaks in test_capi.test_eval tests (#122851) (cherry picked from commit b4a316087c32d83e375087fd35fc511bc430ee8b) (cherry picked from commit 430ccbc009aa7a2da92b85d7aeadd39e1666e875)
* [3.12] gh-128679: Fix tracemalloc.stop() race conditions (#128897) (#129022)Victor Stinner2025-01-192-5/+100
| | | | | | | | | | | | | | | | | [3.13] gh-128679: Fix tracemalloc.stop() race conditions (#128897) tracemalloc_alloc(), tracemalloc_realloc(), PyTraceMalloc_Track(), PyTraceMalloc_Untrack() and _PyTraceMalloc_TraceRef() now check tracemalloc_config.tracing after calling TABLES_LOCK(). _PyTraceMalloc_Stop() now protects more code with TABLES_LOCK(), especially setting tracemalloc_config.tracing to 1. Add a test using PyTraceMalloc_Track() to test tracemalloc.stop() race condition. Call _PyTraceMalloc_Init() at Python startup. (cherry picked from commit 6b47499510e47c0401d1f6cca2660fc12c496e39)
* [3.12] gh-128911: Add tests on the PyImport C API (GH-128915) (GH-128960) ↵Serhiy Storchaka2025-01-194-1/+292
| | | | | | | | | | | | | | (#128989) * Add Modules/_testlimitedcapi/import.c * Add Lib/test/test_capi/test_import.py * Remove _testcapi.check_pyimport_addmodule(): tests already covered by newly added tests. (cherry picked from commit 34ded1a1a10204635cad27830fcbee2f8547e8ed) Co-authored-by: Victor Stinner <vstinner@python.org> Co-authored-by: Serhiy Storchaka <storchaka@gmail.com> (cherry picked from commit d95ba9fa1110534b7247fa2ff12b90e930c93256)
* [3.12] gh-128961: Fix exhausted array iterator crash in __setstate__() ↵Miss Islington (bot)2025-01-181-5/+10
| | | | | | | (GH-128962) (#128977) (cherry picked from commit 4dade055f4e18a7e91bc70293abb4db745ad16ca) Co-authored-by: Tomasz Pytel <tompytel@gmail.com>
* [3.12] gh-58689: Fix os.kill() error handling on Windows (GH-128932) (#128938)Miss Islington (bot)2025-01-171-18/+9
| | | | | | gh-58689: Fix os.kill() error handling on Windows (GH-128932) (cherry picked from commit 939df0f9f6a76e0916b3ba53841e1413ab90952e) Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-127614: Correctly check for ttyname_r() in configure (#128503) ↵Erlend E. Aasland2025-01-072-4/+4
| | | | | | | | (#128599) (cherry picked from commit e08b28235a863323ca3a7e444776bb7803e77caf) PR #14868 replaced the ttyname() call with ttyname_r(), but the old check remained.
* [3.12] gh-123925: Fix building curses on platforms without libncursesw ↵Miss Islington (bot)2025-01-021-1/+1
| | | | | | | (GH-128405) (GH-128408) (cherry picked from commit 8d16919a06a55a50756bf083221a6f6cab43de50) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* gh-128217: Validate the normalized_environment variable instead of the ↵Miss Islington (bot)2024-12-241-1/+1
| | | | | | | similarly named function (GH-128220) (cherry picked from commit 3ddd70ceaaf67b111ee4251817e150396d6d10a9) Co-authored-by: Sergey Muraviov <smurav@mail.ru>
* [3.12] gh-126742: Add _PyErr_SetLocaleString, use it for gdbm & dlerror ↵Bénédikt Tran2024-12-178-53/+75
| | | | | | | | | messages (GH-126746) (GH-128027) - Add a helper to set an error from locale-encoded `char*` - Use the helper for gdbm & dlerror messages Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-126554: ctypes: Correctly handle NULL dlsym values (GH-126555) ↵Bénédikt Tran2024-12-172-30/+91
| | | | | | | | | | | | | | | | | | | | | | | | | | | | (GH-127764) For dlsym(), a return value of NULL does not necessarily indicate an error [1]. Therefore, to avoid using stale (or NULL) dlerror() values, we must: 1. clear the previous error state by calling dlerror() 2. call dlsym() 3. call dlerror() If the return value of dlerror() is not NULL, an error occured. In ctypes we choose to treat a NULL return value from dlsym() as a "not found" error. This is the same as the fallback message we use on Windows, Cygwin or when getting/formatting the error reason fails. [1]: https://man7.org/linux/man-pages/man3/dlsym.3.html Signed-off-by: Georgios Alexopoulos <grgalex42@gmail.com> Signed-off-by: Georgios Alexopoulos <grgalex@ba.uoa.gr> Co-authored-by: George Alexopoulos <giorgosalexo0@gmail.com> Co-authored-by: Peter Bierma <zintensitydev@gmail.com> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> Co-authored-by: Petr Viktorin <encukou@gmail.com>
* [3.12] gh-127257: ssl: Raise OSError for ERR_LIB_SYS (GH-127361) (GH-127905)Miss Islington (bot)2024-12-161-0/+10
| | | | | | | | | | | | | | | | | | | gh-127257: ssl: Raise OSError for ERR_LIB_SYS (GH-127361) From the ERR_raise manpage: ERR_LIB_SYS This "library code" indicates that a system error is being reported. In this case, the reason code given to `ERR_raise()` and `ERR_raise_data()` *must* be `errno(3)`. This PR only handles ERR_LIB_SYS for the high-lever error types SSL_ERROR_SYSCALL and SSL_ERROR_SSL, i.e., not the ones where OpenSSL indicates it has some more information about the issue. (cherry picked from commit f4b31edf2d9d72878dab1f66a36913b5bcc848ec) Co-authored-by: Petr Viktorin <encukou@gmail.com>
* [3.12] gh-127870: Detect recursive calls in ctypes _as_parameter_ handling ↵Victor Stinner2024-12-131-1/+21
| | | | | | | (#127872) (#127918) gh-127870: Detect recursive calls in ctypes _as_parameter_ handling (#127872) (cherry picked from commit 6ff38fc4e2af8e795dc791be6ea596d2146d4119)
* [3.12] gh-122431: Disallow negative values in `readline.append_history_file` ↵Miss Islington (bot)2024-12-051-0/+6
| | | | | | | | | (GH-122469) (#127642) gh-122431: Disallow negative values in `readline.append_history_file` (GH-122469) (cherry picked from commit 208b0fb645c0e14b0826c0014e74a0b70c58c9d6) Co-authored-by: Peter Bierma <zintensitydev@gmail.com> Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-93312: Include <sys/pidfd.h> to get PIDFD_NONBLOCK (#127593) (#127631)Victor Stinner2024-12-051-0/+3
| | | | | gh-93312: Include <sys/pidfd.h> to get PIDFD_NONBLOCK (#127593) (cherry picked from commit fcbe6ecdb6ed4dd93b2ee144f89a73af755e2634)
* [3.12] gh-126876: Fix socket internal_select() for large timeout (GH-126968) ↵Miss Islington (bot)2024-12-031-1/+4
| | | | | | | | | | | | | (#127003) gh-126876: Fix socket internal_select() for large timeout (GH-126968) If the timeout is larger than INT_MAX, replace it with INT_MAX, in the poll() code path. Add an unit test. (cherry picked from commit b3687ad454c4ac54c8599a10f3ace8a13ca48915) Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-126618: fix repr(itertools.count(sys.maxsize)) (GH-127048) (#127510)Sergey B Kirpichev2024-12-021-6/+3
| | | | | (cherry picked from commit 930ba0ce605eee9e3b992fa368b00a3f2b7dc4c1) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* [3.12] gh-127190: Fix local_setattro() error handling (GH-127366) (#127368)Miss Islington (bot)2024-11-281-1/+1
| | | | | | | | | gh-127190: Fix local_setattro() error handling (GH-127366) Don't make the assumption that the 'name' argument is a string. Use repr() to format the 'name' argument instead. (cherry picked from commit 20657fbdb14d50ca4ec115da0cbef155871d8d33) Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-124008: Fix calculation of the number of written bytes for the ↵Miss Islington (bot)2024-11-271-28/+90
| | | | | | | | | | | | | | | Windows console (GH-124059) (GH-127326) Since MultiByteToWideChar()/WideCharToMultiByte() is not reversible if the data contains invalid UTF-8 sequences, use binary search to calculate the number of written bytes from the number of written characters. Also fix writing incomplete UTF-8 sequences. Also fix handling of memory allocation failures. (cherry picked from commit 3cf83d91a5baf3600dd60f7aaaf4fb6d73c4b8a9) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* [3.12] gh-127182: Fix `io.StringIO.__setstate__` crash when `None` is the ↵Miss Islington (bot)2024-11-251-14/+16
| | | | | | | | | first value (GH-127219) (#127263) gh-127182: Fix `io.StringIO.__setstate__` crash when `None` is the first value (GH-127219) (cherry picked from commit a2ee89968299fc4f0da4b5a4165025b941213ba5) Co-authored-by: sobolevn <mail@sobolevn.me> Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-109746: Make _thread.start_new_thread delete state of new thread ↵Serhiy Storchaka2024-11-221-0/+1
| | | | | | | | | | | | on its startup failure (GH-109761) (GH-127173) If Python fails to start newly created thread due to failure of underlying PyThread_start_new_thread() call, its state should be removed from interpreter' thread states list to avoid its double cleanup. (cherry picked from commit ca3ea9ad05c3d876a58463595e5b4228fda06936) Co-authored-by: Radislav Chugunov <52372310+chgnrdv@users.noreply.github.com>
* [3.12] gh-126727: Fix locale.nl_langinfo(locale.ERA) (GH-126730) (GH-127098)Serhiy Storchaka2024-11-211-24/+41
| | | | | It now returns multiple era description segments separated by semicolons. Previously it only returned the first segment on platforms with Glibc. (cherry picked from commit 4803cd0244847f286641c85591fda08b513cea52)
* [3.12] gh-126991: Fix reference leak in loading pickle's opcode BUILD ↵Miss Islington (bot)2024-11-191-0/+1
| | | | | | | | (GH-126990) (GH-127019) If PyObject_SetItem() fails in the `load_build()` function of _pickle.c, no DECREF for the `dict` variable. (cherry picked from commit 29cbcbd73bbfd8c953c0b213fb33682c289934ff) Co-authored-by: Justin Applegate <70449145+Legoclones@users.noreply.github.com>
* [3.12] gh-101955: Fix SystemError in possesive quantifier with alternative ↵Miss Islington (bot)2024-11-181-0/+18
| | | | | | | and group (GH-111362) (GH-126963) (cherry picked from commit f9c5573dedcb2f2e9ae152672ce157987cdea612) Co-authored-by: Serhiy Storchaka <storchaka@gmail.com>
* [3.12] gh-67877: Fix memory leaks in terminated RE matching (GH-126840) ↵Serhiy Storchaka2024-11-184-14/+205
| | | | | | | | | (GH-126961) If SRE(match) function terminates abruptly, either because of a signal or because memory allocation fails, allocated SRE_REPEAT blocks might be never released. (cherry picked from commit 7538e7f5696408fa0aa02fce8a413a7dfac76a04)
* [3.12] gh-126623: Update libexpat to 2.6.4, make future updates easier ↵Miss Islington (bot)2024-11-134-11/+79
| | | | | | | | | | (GH-126792) (GH-126797) gh-126623: Update libexpat to 2.6.4, make future updates easier (GH-126792) Update libexpat to 2.6.4, make future updates easier. (cherry picked from commit 3c9996909402fadc98e6ca2a64e75a71a7427352) Co-authored-by: Seth Michael Larson <seth@python.org>
* [3.12] gh-126595: fix a crash when calling `itertools.count(sys.maxsize)` ↵Bénédikt Tran2024-11-121-0/+3
| | | | | (GH-126617) (#126740) gh-126595: fix a crash when calling `itertools.count(sys.maxsize)` (#126617)
* [3.12] gh-126405: fix use-after-free in ↵Miss Islington (bot)2024-11-121-0/+2
| | | | | | | | `_asyncio.Future.remove_done_callback` (GH-126733) (#126737) gh-126405: fix use-after-free in `_asyncio.Future.remove_done_callback` (GH-126733) (cherry picked from commit 37c57dfad12744608091653fd753a1f770e2479b) Co-authored-by: Kumar Aditya <kumaraditya@python.org>
* [3.12] gh-126461: Fix _Unpickler_ReadFromFile() error handling (GH-126485) ↵Miss Islington (bot)2024-11-061-0/+4
| | | | | | | | | | (#126496) gh-126461: Fix _Unpickler_ReadFromFile() error handling (GH-126485) Handle _Unpickler_SetStringInput() failure. (cherry picked from commit a1c57bcfd2bcbc55ff858407e09c1d8d8cee44e6) Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-126455: Disallow _ssl.SSLSocket instantiation (GH-126481) (#126487)Miss Islington (bot)2024-11-061-1/+1
| | | | | | | | | gh-126455: Disallow _ssl.SSLSocket instantiation (GH-126481) Prevent creation of incomplete/invalid _ssl.SSLSocket objects when created directly. (cherry picked from commit b1c4ffc20573befb4db66bbbdd569b9bd13bb127) Co-authored-by: Victor Stinner <vstinner@python.org>
* [3.12] gh-126425: Refactor `_lsprof_Profiler_enable` (GH-126426) (#126443)Miss Islington (bot)2024-11-051-12/+25
| | | | | | | | | gh-126425: Refactor `_lsprof_Profiler_enable` (GH-126426) - Explicit memory management for `None` objects (since we still try to treat immortal objects as regular objects) - Respect possible errors of `sys.monitoring.register_callback` call (cherry picked from commit 75872605aa78dbdfc5c4f025b0f90a7f37ba10c3) Co-authored-by: sobolevn <mail@sobolevn.me>
* [3.12] gh-126303: Fix pickling and copying of os.sched_param objects ↵Serhiy Storchaka2024-11-051-0/+17
| | | | | (GH-126336) (GH-126424) (cherry picked from commit d3840503b0f590ee574fbdf3c96626ff8b3c45f6)
* [3.12] gh-126138: Fix use-after-free in `_asyncio.Task` by evil ↵Miss Islington (bot)2024-11-021-2/+20
| | | | | | | | | `__getattribute__` (GH-126305) (#126325) gh-126138: Fix use-after-free in `_asyncio.Task` by evil `__getattribute__` (GH-126305) (cherry picked from commit f032f6ba8fec6fab35edeec0eb40cd73e9d58928) Co-authored-by: Nico-Posada <102486290+Nico-Posada@users.noreply.github.com> Co-authored-by: Carol Willing <carolcode@willingconsulting.com>
* [3.12] gh-126220: Fix crash on calls to `_lsprof.Profiler` methods with 0 ↵Miss Islington (bot)2024-11-011-0/+24
| | | | | | | | | args (backportable) (GH-126271) (#126311) gh-126220: Fix crash on calls to `_lsprof.Profiler` methods with 0 args (backportable) (GH-126271) (cherry picked from commit 28b148fb32e4548b461137d18d1ab6d366395d36) Co-authored-by: sobolevn <mail@sobolevn.me> Co-authored-by: Erlend E. Aasland <erlend.aasland@protonmail.com>
* [3.12] gh-126080: fix UAF on `task->task_context` in `task_call_step_soon` ↵Miss Islington (bot)2024-10-311-1/+5
| | | | | | | | due to an evil `loop.__getattribute__` (GH-126120) (#126251) gh-126080: fix UAF on `task->task_context` in `task_call_step_soon` due to an evil `loop.__getattribute__` (GH-126120) (cherry picked from commit 0e8665554b2f1334e530fd6de5b3a4e908405419) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* [3.12] gh-126083: Fix a reference leak in `asyncio.Task` when reinitializing ↵Miss Islington (bot)2024-10-311-1/+1
| | | | | | | | with new non-`None` context (GH-126103) (#126230) gh-126083: Fix a reference leak in `asyncio.Task` when reinitializing with new non-`None` context (GH-126103) (cherry picked from commit d07dcce6935364cab807e0df931ed09b088ade69) Co-authored-by: Nico-Posada <102486290+Nico-Posada@users.noreply.github.com>
* [3.12] gh-126106: Fix `NULL` possible derefrence in `Modules/_ssl.c` ↵Miss Islington (bot)2024-10-291-3/+3
| | | | | | | | | (GH-126111) (#126117) gh-126106: Fix `NULL` possible derefrence in `Modules/_ssl.c` (GH-126111) (cherry picked from commit a64a1c920660b0c1e4dd5a9573004cd527e15184) Co-authored-by: sobolevn <mail@sobolevn.me> Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* [3.12] Align functools.reduce() docstring with PEP-257 (GH-126045) (#126114)Miss Islington (bot)2024-10-291-6/+8
| | | | | | | Yak-shave in preparation for Argument Clinic adaption in gh-125999. (cherry picked from commit 9b14083497f50213f908c1359eeaf47c97161347) Co-authored-by: Sergey B Kirpichev <skirpichev@gmail.com>
* [3.12] gh-126035: add missing whitespace to *Py_EnterRecursiveCall() ↵Miss Islington (bot)2024-10-272-3/+3
| | | | | | | messages (GH-126036) (#126059) (cherry picked from commit 19e93e2e269889ecb3c4c039091abff489f247c2) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* [3.12] gh-125966: fix use-after-free on `fut->fut_callback0` due to an evil ↵Miss Islington (bot)2024-10-271-1/+6
| | | | | | | | callback's `__eq__` in asyncio (GH-125967) (#126048) gh-125966: fix use-after-free on `fut->fut_callback0` due to an evil callback's `__eq__` in asyncio (GH-125967) (cherry picked from commit ed5059eeb1aa50b481957307db5a34b937497382) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* [3.12] gh-125984: fix use-after-free on `fut->fut_{callback,context}0` due ↵Miss Islington (bot)2024-10-271-6/+13
| | | | | | | | to an evil `loop.__getattribute__` (GH-126003) (#126044) gh-125984: fix use-after-free on `fut->fut_{callback,context}0` due to an evil `loop.__getattribute__` (GH-126003) (cherry picked from commit f819d4301d7c75f02be1187fda017f0e7b608816) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com>
* [3.12] gh-125969: fix OOB in `future_schedule_callbacks` due to an evil ↵Miss Islington (bot)2024-10-251-17/+12
| | | | | | | | | `call_soon` (GH-125970) (#125992) gh-125969: fix OOB in `future_schedule_callbacks` due to an evil `call_soon` (GH-125970) (cherry picked from commit c5b99f5c2c5347d66b9da362773969c531fb6c85) Co-authored-by: Bénédikt Tran <10796600+picnixz@users.noreply.github.com> Co-authored-by: Andrew Svetlov <andrew.svetlov@gmail.com>