GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||
GeezerVison is showing github.com — gh-89455: Fix an uninitialized bool in exception print context. by gpshead · Pull Request #91466 · python/cpython Conversation
|
The new CLA checker is broken and won't accept my current commits or even my attempt to re-sign the CLA via the bot here because of the way my arbitrary unverified text string git "email" field is structured in many of my local git config files. I'll keep this PR open as an example until that can be resolved. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
This is initialised to false in line 1379, and the value is only used further down in the same function, so I don't think there's an actual bug (phew).
Yes, let's initialise it here too.
Sorry, something went wrong.
There was an error while loading. Please reload this page.
`struct exception_print_context.need_close` was uninitialized. Found by oss-fuzz in a test case running under the undefined behavior sanitizer. https://oss-fuzz.com/testcase-detail/6217746058182656 ``` Python/pythonrun.c:1241:28: runtime error: load of value 253, which is not a valid value for type 'bool' #0 0xbf2203 in print_chained cpython3/Python/pythonrun.c:1241:28 #1 0xbea4bb in print_exception_cause_and_context cpython3/Python/pythonrun.c:1320:19 #2 0xbea4bb in print_exception_recursive cpython3/Python/pythonrun.c:1470:13 #3 0xbe9e39 in _PyErr_Display cpython3/Python/pythonrun.c:1517:9 ``` Pretty obvious what the ommission was upon code inspection.
dc7f776 to
a012f40
Compare
also see if a new commit re-triggers the CLA checker.
|
This is a real bug, the codepath in the traceback listed above used the value without it being initialized. Thus a sanitizer finding it. I don't think it had noticable behavioral impact though. |
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.