| FazBrowse GitHub Viewer | Trending | | Home |
| Tools: [Download Repo ZIP] [Original HTTPS Page] |
Sorry, something went wrong.
|
Thanks @jquesnelle for the PR, and @vstinner for merging it 🌮🎉.. I'm working now to backport this PR to: 3.8. |
Sorry, something went wrong.
…pythonGH-19542) (cherry picked from commit a75e730) Co-authored-by: Jeffrey Quesnelle <jquesnelle@gmail.com>
|
GH-19565 is a backport of this pull request to the 3.8 branch. |
Sorry, something went wrong.
|
I tested manually and I confirm that this change fix https://bugs.python.org/issue40294 : I tested main.c attached to the issue. |
Sorry, something went wrong.
* master: (1985 commits) bpo-40179: Fix translation of #elif in Argument Clinic (pythonGH-19364) bpo-35967: Skip test with `uname -p` on Android (pythonGH-19577) bpo-40257: Improve help for the typing module (pythonGH-19546) Fix two typos in multiprocessing (pythonGH-19571) bpo-40286: Use random.randbytes() in tests (pythonGH-19575) bpo-40286: Makes simpler the relation between randbytes() and getrandbits() (pythonGH-19574) bpo-39894: Route calls from pathlib.Path.samefile() to os.stat() via the path accessor (pythonGH-18836) bpo-39897: Remove needless `Path(self.parent)` call, which makes `is_mount()` misbehave in `Path` subclasses. (pythonGH-18839) bpo-40282: Allow random.getrandbits(0) (pythonGH-19539) bpo-40302: UTF-32 encoder SWAB4() macro use a|b rather than a+b (pythonGH-19572) bpo-40302: Replace PY_INT64_T with int64_t (pythonGH-19573) bpo-40286: Add randbytes() method to random.Random (pythonGH-19527) bpo-39901: Move `pathlib.Path.owner()` and `group()` implementations into the path accessor. (pythonGH-18844) bpo-40300: Allow empty logging.Formatter.default_msec_format. (pythonGH-19551) bpo-40302: Add pycore_byteswap.h header file (pythonGH-19552) bpo-40287: Fix SpooledTemporaryFile.seek() return value (pythonGH-19540) Minor modernization and readability improvement to the tokenizer example (pythonGH-19558) bpo-40294: Fix _asyncio when module is loaded/unloaded multiple times (pythonGH-19542) Fix parameter names in assertIn() docs (pythonGH-18829) bpo-39793: use the same domain on make_msgid tests (python#18698) ...
| Back | FazBrowse Home | New Git URL |
GH-16598 added the static variable module_initialized to _asynciomodule.c to guard against multiple initializations and instead re-use the resources from the first initialization. However, the variable isn't cleared in module_free(). If the module is again initialized after module_free is called, the program will crash. In particular, Py_INCREF(all_tasks); in PyInit__asyncio() will access invalid memory.
The fix seems straightforward: simply clear the flag in module_free(). This seems symmetric with it being set in module_init().
https://bugs.python.org/issue40294