mirror of
https://github.com/python/cpython.git
synced 2025-07-24 11:44:31 +00:00
[3.14] gh-135855: Raise TypeError When Passing Non-dict Object to _interpreters.set___main___attrs
(gh-135900)
Some checks are pending
Tests / (push) Blocked by required conditions
Tests / Windows MSI (push) Blocked by required conditions
Tests / Change detection (push) Waiting to run
Tests / Docs (push) Blocked by required conditions
Tests / Check if the ABI has changed (push) Blocked by required conditions
Tests / Check if Autoconf files are up to date (push) Blocked by required conditions
Tests / Check if generated files are up to date (push) Blocked by required conditions
Tests / Ubuntu SSL tests with OpenSSL (push) Blocked by required conditions
Tests / WASI (push) Blocked by required conditions
Tests / Hypothesis tests on Ubuntu (push) Blocked by required conditions
Tests / Address sanitizer (push) Blocked by required conditions
Tests / Cross build Linux (push) Blocked by required conditions
Tests / CIFuzz (push) Blocked by required conditions
Tests / All required checks pass (push) Blocked by required conditions
Lint / lint (push) Waiting to run
Some checks are pending
Tests / (push) Blocked by required conditions
Tests / Windows MSI (push) Blocked by required conditions
Tests / Change detection (push) Waiting to run
Tests / Docs (push) Blocked by required conditions
Tests / Check if the ABI has changed (push) Blocked by required conditions
Tests / Check if Autoconf files are up to date (push) Blocked by required conditions
Tests / Check if generated files are up to date (push) Blocked by required conditions
Tests / Ubuntu SSL tests with OpenSSL (push) Blocked by required conditions
Tests / WASI (push) Blocked by required conditions
Tests / Hypothesis tests on Ubuntu (push) Blocked by required conditions
Tests / Address sanitizer (push) Blocked by required conditions
Tests / Cross build Linux (push) Blocked by required conditions
Tests / CIFuzz (push) Blocked by required conditions
Tests / All required checks pass (push) Blocked by required conditions
Lint / lint (push) Waiting to run
(cherry picked from commit 4e6f0d116
, AKA gh-135856)
Co-authored-by: Brian Schubert <brianm.schubert@gmail.com>
This commit is contained in:
parent
fa74331a4c
commit
090a42b5eb
4 changed files with 29 additions and 12 deletions
|
@ -1039,8 +1039,8 @@ interp_set___main___attrs(PyObject *self, PyObject *args, PyObject *kwargs)
|
|||
PyObject *id, *updates;
|
||||
int restricted = 0;
|
||||
if (!PyArg_ParseTupleAndKeywords(args, kwargs,
|
||||
"OO|$p:" MODULE_NAME_STR ".set___main___attrs",
|
||||
kwlist, &id, &updates, &restricted))
|
||||
"OO!|$p:" MODULE_NAME_STR ".set___main___attrs",
|
||||
kwlist, &id, &PyDict_Type, &updates, &restricted))
|
||||
{
|
||||
return NULL;
|
||||
}
|
||||
|
@ -1054,16 +1054,14 @@ interp_set___main___attrs(PyObject *self, PyObject *args, PyObject *kwargs)
|
|||
}
|
||||
|
||||
// Check the updates.
|
||||
if (updates != Py_None) {
|
||||
Py_ssize_t size = PyObject_Size(updates);
|
||||
if (size < 0) {
|
||||
return NULL;
|
||||
}
|
||||
if (size == 0) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"arg 2 must be a non-empty mapping");
|
||||
return NULL;
|
||||
}
|
||||
Py_ssize_t size = PyDict_Size(updates);
|
||||
if (size < 0) {
|
||||
return NULL;
|
||||
}
|
||||
if (size == 0) {
|
||||
PyErr_SetString(PyExc_ValueError,
|
||||
"arg 2 must be a non-empty dict");
|
||||
return NULL;
|
||||
}
|
||||
|
||||
_PyXI_session *session = _PyXI_NewSession();
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue