bpo-40521: Make bytes singletons per interpreter by vstinner · Pull Request #21074 · python/cpython · GitHub
Skip to content

bpo-40521: Make bytes singletons per interpreter - #21074

Merged
vstinner merged 1 commit into
python:masterfrom
vstinner:bytes_interp
Jun 23, 2020
Merged

bpo-40521: Make bytes singletons per interpreter#21074
vstinner merged 1 commit into
python:masterfrom
vstinner:bytes_interp

Conversation

@vstinner

@vstinner vstinner commented Jun 23, 2020

Copy link
Copy Markdown
Member

Each interpreter now has its own empty bytes string and single byte
character singletons.

Replace STRINGLIB_EMPTY macro with STRINGLIB_GET_EMPTY() macro.

https://bugs.python.org/issue40521

Each interpreter now has its own empty bytes string and single byte
character singletons.

Replace STRINGLIB_EMPTY macro with STRINGLIB_GET_EMPTY() macro.
@vstinner
vstinner merged commit c41eed1 into python:master Jun 23, 2020
@vstinner
vstinner deleted the bytes_interp branch June 23, 2020 13:55
fasih pushed a commit to fasih/cpython that referenced this pull request Jun 29, 2020
Each interpreter now has its own empty bytes string and single byte
character singletons.

Replace STRINGLIB_EMPTY macro with STRINGLIB_GET_EMPTY() macro.
@rdb

rdb commented Sep 12, 2020

Copy link
Copy Markdown

rdb added a commit to panda3d/panda3d that referenced this pull request Sep 12, 2020
This is due to python/cpython#21074, which causes a segfault in the latest Python master when creating a bytes object of size 0.

readlines() has been reimplemented to use a C++ vector in order to prevent constantly re-locking and unlocking the GIL for every line.
@vstinner

Copy link
Copy Markdown
Member Author

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants