Skip to content

Commit 66a6979

Browse files
Update helper fuction
1 parent c56d358 commit 66a6979

File tree

1 file changed

+12
-12
lines changed

1 file changed

+12
-12
lines changed

Objects/unicodeobject.c

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -13090,6 +13090,7 @@ unicode_maketrans_from_dict(PyObject *x, PyObject *newdict)
1309013090
PyObject *key, *value;
1309113091
Py_ssize_t i = 0;
1309213092
int res;
13093+
int ret = -1; /* assume failure */
1309313094

1309413095
Py_BEGIN_CRITICAL_SECTION(x);
1309513096
while (PyDict_Next(x, &i, &key, &value)) {
@@ -13098,35 +13099,34 @@ unicode_maketrans_from_dict(PyObject *x, PyObject *newdict)
1309813099
int kind;
1309913100
const void *data;
1310013101
if (PyUnicode_GET_LENGTH(key) != 1) {
13101-
PyErr_SetString(PyExc_ValueError, "string keys in translate "
13102+
PyErr_SetString(PyExc_ValueError, "string keys in translate"
1310213103
"table must be of length 1");
13103-
goto error;
13104+
goto done;
1310413105
}
1310513106
kind = PyUnicode_KIND(key);
1310613107
data = PyUnicode_DATA(key);
1310713108
newkey = PyLong_FromLong(PyUnicode_READ(kind, data, 0));
1310813109
if (!newkey)
13109-
goto error;
13110+
goto done;
1311013111
res = PyDict_SetItem(newdict, newkey, value);
1311113112
Py_DECREF(newkey);
13112-
if(res < 0)
13113-
goto error;
13113+
if (res < 0)
13114+
goto done;
1311413115
}
1311513116
else if (PyLong_Check(key)) {
1311613117
if (PyDict_SetItem(newdict, key, value) < 0)
13117-
goto error;
13118+
goto done;
1311813119
}
1311913120
else {
13120-
PyErr_SetString(PyExc_TypeError, "keys in translate table must "
13121+
PyErr_SetString(PyExc_TypeError, "keys in translate table must"
1312113122
"be strings or integers");
13122-
goto error;
13123+
goto done;
1312313124
}
1312413125
}
13126+
ret = 0;
13127+
done:
1312513128
Py_END_CRITICAL_SECTION();
13126-
return 0;
13127-
error:
13128-
Py_END_CRITICAL_SECTION();
13129-
return -1;
13129+
return ret;
1313013130
}
1313113131

1313213132
static PyObject *

0 commit comments

Comments
 (0)