From 8b4a011b8d95bcb711f058fdc28b68ddd729a1c6 Mon Sep 17 00:00:00 2001 From: Victor Stinner Date: Tue, 7 Nov 2023 23:04:33 +0100 Subject: [PATCH] Revert "gh-111089: Use PyUnicode_AsUTF8() in sqlite3 (#111122)" This reverts commit 37e4e20eaa8f27ada926d49e5971fecf0477ad26. --- Modules/_sqlite/connection.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/Modules/_sqlite/connection.c b/Modules/_sqlite/connection.c index ce46c1e69f3131..319ed0c29c7a9b 100644 --- a/Modules/_sqlite/connection.c +++ b/Modules/_sqlite/connection.c @@ -76,10 +76,15 @@ isolation_level_converter(PyObject *str_or_none, const char **result) *result = NULL; } else if (PyUnicode_Check(str_or_none)) { - const char *str = PyUnicode_AsUTF8(str_or_none); + Py_ssize_t sz; + const char *str = PyUnicode_AsUTF8AndSize(str_or_none, &sz); if (str == NULL) { return 0; } + if (strlen(str) != (size_t)sz) { + PyErr_SetString(PyExc_ValueError, "embedded null character"); + return 0; + } const char *level = get_isolation_level(str); if (level == NULL) {