Avoid calling functions with an empty string as format string
Directly pass NULL rather than an empty string.
This commit is contained in:
parent
ad8c83ad6b
commit
3466bde1cc
|
@ -2306,7 +2306,7 @@ PyCurses_GetWin(PyCursesWindowObject *self, PyObject *stream)
|
|||
goto error;
|
||||
}
|
||||
|
||||
data = _PyObject_CallMethodId(stream, &PyId_read, "");
|
||||
data = _PyObject_CallMethodId(stream, &PyId_read, NULL);
|
||||
if (data == NULL)
|
||||
goto error;
|
||||
if (!PyBytes_Check(data)) {
|
||||
|
|
|
@ -3399,7 +3399,7 @@ _elementtree_XMLParser_close_impl(XMLParserObject *self)
|
|||
}
|
||||
else if (self->handle_close) {
|
||||
Py_DECREF(res);
|
||||
return PyObject_CallFunction(self->handle_close, "");
|
||||
return _PyObject_CallNoArg(self->handle_close);
|
||||
}
|
||||
else {
|
||||
return res;
|
||||
|
|
|
@ -672,7 +672,7 @@ static void _pysqlite_step_callback(sqlite3_context *context, int argc, sqlite3_
|
|||
aggregate_instance = (PyObject**)sqlite3_aggregate_context(context, sizeof(PyObject*));
|
||||
|
||||
if (*aggregate_instance == 0) {
|
||||
*aggregate_instance = PyObject_CallFunction(aggregate_class, "");
|
||||
*aggregate_instance = PyObject_CallFunction(aggregate_class, NULL);
|
||||
|
||||
if (PyErr_Occurred()) {
|
||||
*aggregate_instance = 0;
|
||||
|
@ -744,7 +744,7 @@ void _pysqlite_final_callback(sqlite3_context* context)
|
|||
PyErr_Fetch(&exception, &value, &tb);
|
||||
restore = 1;
|
||||
|
||||
function_result = _PyObject_CallMethodId(*aggregate_instance, &PyId_finalize, "");
|
||||
function_result = _PyObject_CallMethodId(*aggregate_instance, &PyId_finalize, NULL);
|
||||
|
||||
Py_DECREF(*aggregate_instance);
|
||||
|
||||
|
@ -960,7 +960,7 @@ static int _progress_handler(void* user_arg)
|
|||
|
||||
gilstate = PyGILState_Ensure();
|
||||
#endif
|
||||
ret = PyObject_CallFunction((PyObject*)user_arg, "");
|
||||
ret = PyObject_CallFunction((PyObject*)user_arg, NULL);
|
||||
|
||||
if (!ret) {
|
||||
if (_enable_callback_tracebacks) {
|
||||
|
@ -1291,7 +1291,7 @@ PyObject* pysqlite_connection_execute(pysqlite_Connection* self, PyObject* args)
|
|||
PyObject* result = 0;
|
||||
PyObject* method = 0;
|
||||
|
||||
cursor = _PyObject_CallMethodId((PyObject*)self, &PyId_cursor, "");
|
||||
cursor = _PyObject_CallMethodId((PyObject*)self, &PyId_cursor, NULL);
|
||||
if (!cursor) {
|
||||
goto error;
|
||||
}
|
||||
|
@ -1320,7 +1320,7 @@ PyObject* pysqlite_connection_executemany(pysqlite_Connection* self, PyObject* a
|
|||
PyObject* result = 0;
|
||||
PyObject* method = 0;
|
||||
|
||||
cursor = _PyObject_CallMethodId((PyObject*)self, &PyId_cursor, "");
|
||||
cursor = _PyObject_CallMethodId((PyObject*)self, &PyId_cursor, NULL);
|
||||
if (!cursor) {
|
||||
goto error;
|
||||
}
|
||||
|
@ -1349,7 +1349,7 @@ PyObject* pysqlite_connection_executescript(pysqlite_Connection* self, PyObject*
|
|||
PyObject* result = 0;
|
||||
PyObject* method = 0;
|
||||
|
||||
cursor = _PyObject_CallMethodId((PyObject*)self, &PyId_cursor, "");
|
||||
cursor = _PyObject_CallMethodId((PyObject*)self, &PyId_cursor, NULL);
|
||||
if (!cursor) {
|
||||
goto error;
|
||||
}
|
||||
|
@ -1519,7 +1519,7 @@ pysqlite_connection_create_collation(pysqlite_Connection* self, PyObject* args)
|
|||
goto finally;
|
||||
}
|
||||
|
||||
uppercase_name = _PyObject_CallMethodId(name, &PyId_upper, "");
|
||||
uppercase_name = _PyObject_CallMethodId(name, &PyId_upper, NULL);
|
||||
if (!uppercase_name) {
|
||||
goto finally;
|
||||
}
|
||||
|
@ -1611,7 +1611,7 @@ pysqlite_connection_exit(pysqlite_Connection* self, PyObject* args)
|
|||
method_name = "rollback";
|
||||
}
|
||||
|
||||
result = PyObject_CallMethod((PyObject*)self, method_name, "");
|
||||
result = PyObject_CallMethod((PyObject*)self, method_name, NULL);
|
||||
if (!result) {
|
||||
return NULL;
|
||||
}
|
||||
|
|
|
@ -143,7 +143,7 @@ PyObject* _pysqlite_get_converter(PyObject* key)
|
|||
PyObject* retval;
|
||||
_Py_IDENTIFIER(upper);
|
||||
|
||||
upcase_key = _PyObject_CallMethodId(key, &PyId_upper, "");
|
||||
upcase_key = _PyObject_CallMethodId(key, &PyId_upper, NULL);
|
||||
if (!upcase_key) {
|
||||
return NULL;
|
||||
}
|
||||
|
|
|
@ -192,7 +192,7 @@ static PyObject* module_register_converter(PyObject* self, PyObject* args)
|
|||
}
|
||||
|
||||
/* convert the name to upper case */
|
||||
name = _PyObject_CallMethodId(orig_name, &PyId_upper, "");
|
||||
name = _PyObject_CallMethodId(orig_name, &PyId_upper, NULL);
|
||||
if (!name) {
|
||||
goto error;
|
||||
}
|
||||
|
|
|
@ -2137,7 +2137,7 @@ _make_call(void *callable)
|
|||
PyObject *rc;
|
||||
int success;
|
||||
PyGILState_STATE s = PyGILState_Ensure();
|
||||
rc = PyObject_CallFunction((PyObject *)callable, "");
|
||||
rc = _PyObject_CallNoArg((PyObject *)callable);
|
||||
success = (rc != NULL);
|
||||
Py_XDECREF(rc);
|
||||
PyGILState_Release(s);
|
||||
|
@ -3406,7 +3406,7 @@ temporary_c_thread(void *data)
|
|||
/* Allocate a Python thread state for this thread */
|
||||
state = PyGILState_Ensure();
|
||||
|
||||
res = PyObject_CallFunction(test_c_thread->callback, "", NULL);
|
||||
res = _PyObject_CallNoArg(test_c_thread->callback);
|
||||
Py_CLEAR(test_c_thread->callback);
|
||||
|
||||
if (res == NULL) {
|
||||
|
|
|
@ -168,7 +168,7 @@ faulthandler_get_fileno(PyObject **file_ptr)
|
|||
return fd;
|
||||
}
|
||||
|
||||
result = _PyObject_CallMethodId(file, &PyId_fileno, "");
|
||||
result = _PyObject_CallMethodId(file, &PyId_fileno, NULL);
|
||||
if (result == NULL)
|
||||
return -1;
|
||||
|
||||
|
@ -186,7 +186,7 @@ faulthandler_get_fileno(PyObject **file_ptr)
|
|||
return -1;
|
||||
}
|
||||
|
||||
result = _PyObject_CallMethodId(file, &PyId_flush, "");
|
||||
result = _PyObject_CallMethodId(file, &PyId_flush, NULL);
|
||||
if (result != NULL)
|
||||
Py_DECREF(result);
|
||||
else {
|
||||
|
@ -1290,7 +1290,7 @@ faulthandler_env_options(void)
|
|||
if (module == NULL) {
|
||||
return -1;
|
||||
}
|
||||
res = _PyObject_CallMethodId(module, &PyId_enable, "");
|
||||
res = _PyObject_CallMethodId(module, &PyId_enable, NULL);
|
||||
Py_DECREF(module);
|
||||
if (res == NULL)
|
||||
return -1;
|
||||
|
|
|
@ -261,7 +261,7 @@ gen_close_iter(PyObject *yf)
|
|||
PyErr_WriteUnraisable(yf);
|
||||
PyErr_Clear();
|
||||
} else {
|
||||
retval = PyObject_CallFunction(meth, "");
|
||||
retval = _PyObject_CallNoArg(meth);
|
||||
Py_DECREF(meth);
|
||||
if (retval == NULL)
|
||||
return -1;
|
||||
|
|
|
@ -453,7 +453,7 @@ proxy_checkref(PyWeakReference *proxy)
|
|||
method(PyObject *proxy) { \
|
||||
_Py_IDENTIFIER(special); \
|
||||
UNWRAP(proxy); \
|
||||
return _PyObject_CallMethodId(proxy, &PyId_##special, ""); \
|
||||
return _PyObject_CallMethodId(proxy, &PyId_##special, NULL); \
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1784,7 +1784,7 @@ builtin_print(PyObject *self, PyObject *args, PyObject *kwds)
|
|||
if (do_flush == -1)
|
||||
return NULL;
|
||||
else if (do_flush) {
|
||||
tmp = _PyObject_CallMethodId(file, &PyId_flush, "");
|
||||
tmp = _PyObject_CallMethodId(file, &PyId_flush, NULL);
|
||||
if (tmp == NULL)
|
||||
return NULL;
|
||||
else
|
||||
|
@ -1850,7 +1850,7 @@ builtin_input_impl(PyObject *module, PyObject *prompt)
|
|||
}
|
||||
|
||||
/* First of all, flush stderr */
|
||||
tmp = _PyObject_CallMethodId(ferr, &PyId_flush, "");
|
||||
tmp = _PyObject_CallMethodId(ferr, &PyId_flush, NULL);
|
||||
if (tmp == NULL)
|
||||
PyErr_Clear();
|
||||
else
|
||||
|
@ -1859,7 +1859,7 @@ builtin_input_impl(PyObject *module, PyObject *prompt)
|
|||
/* We should only use (GNU) readline if Python's sys.stdin and
|
||||
sys.stdout are the same as C's stdin and stdout, because we
|
||||
need to pass it those. */
|
||||
tmp = _PyObject_CallMethodId(fin, &PyId_fileno, "");
|
||||
tmp = _PyObject_CallMethodId(fin, &PyId_fileno, NULL);
|
||||
if (tmp == NULL) {
|
||||
PyErr_Clear();
|
||||
tty = 0;
|
||||
|
@ -1872,7 +1872,7 @@ builtin_input_impl(PyObject *module, PyObject *prompt)
|
|||
tty = fd == fileno(stdin) && isatty(fd);
|
||||
}
|
||||
if (tty) {
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_fileno, "");
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_fileno, NULL);
|
||||
if (tmp == NULL) {
|
||||
PyErr_Clear();
|
||||
tty = 0;
|
||||
|
@ -1907,7 +1907,7 @@ builtin_input_impl(PyObject *module, PyObject *prompt)
|
|||
stdin_errors_str = _PyUnicode_AsString(stdin_errors);
|
||||
if (!stdin_encoding_str || !stdin_errors_str)
|
||||
goto _readline_errors;
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_flush, "");
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_flush, NULL);
|
||||
if (tmp == NULL)
|
||||
PyErr_Clear();
|
||||
else
|
||||
|
@ -1987,7 +1987,7 @@ builtin_input_impl(PyObject *module, PyObject *prompt)
|
|||
if (PyFile_WriteObject(prompt, fout, Py_PRINT_RAW) != 0)
|
||||
return NULL;
|
||||
}
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_flush, "");
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_flush, NULL);
|
||||
if (tmp == NULL)
|
||||
PyErr_Clear();
|
||||
else
|
||||
|
|
|
@ -493,7 +493,7 @@ flush_std_files(void)
|
|||
int status = 0;
|
||||
|
||||
if (fout != NULL && fout != Py_None && !file_is_closed(fout)) {
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_flush, "");
|
||||
tmp = _PyObject_CallMethodId(fout, &PyId_flush, NULL);
|
||||
if (tmp == NULL) {
|
||||
PyErr_WriteUnraisable(fout);
|
||||
status = -1;
|
||||
|
@ -503,7 +503,7 @@ flush_std_files(void)
|
|||
}
|
||||
|
||||
if (ferr != NULL && ferr != Py_None && !file_is_closed(ferr)) {
|
||||
tmp = _PyObject_CallMethodId(ferr, &PyId_flush, "");
|
||||
tmp = _PyObject_CallMethodId(ferr, &PyId_flush, NULL);
|
||||
if (tmp == NULL) {
|
||||
PyErr_Clear();
|
||||
status = -1;
|
||||
|
@ -1072,7 +1072,7 @@ create_stdio(PyObject* io,
|
|||
text = PyUnicode_FromString(name);
|
||||
if (text == NULL || _PyObject_SetAttrId(raw, &PyId_name, text) < 0)
|
||||
goto error;
|
||||
res = _PyObject_CallMethodId(raw, &PyId_isatty, "");
|
||||
res = _PyObject_CallMethodId(raw, &PyId_isatty, NULL);
|
||||
if (res == NULL)
|
||||
goto error;
|
||||
isatty = PyObject_IsTrue(res);
|
||||
|
@ -1343,7 +1343,7 @@ _Py_FatalError_PrintExc(int fd)
|
|||
Py_XDECREF(tb);
|
||||
|
||||
/* sys.stderr may be buffered: call sys.stderr.flush() */
|
||||
res = _PyObject_CallMethodId(ferr, &PyId_flush, "");
|
||||
res = _PyObject_CallMethodId(ferr, &PyId_flush, NULL);
|
||||
if (res == NULL)
|
||||
PyErr_Clear();
|
||||
else
|
||||
|
@ -1453,7 +1453,7 @@ wait_for_thread_shutdown(void)
|
|||
PyErr_Clear();
|
||||
return;
|
||||
}
|
||||
result = _PyObject_CallMethodId(threading, &PyId__shutdown, "");
|
||||
result = _PyObject_CallMethodId(threading, &PyId__shutdown, NULL);
|
||||
if (result == NULL) {
|
||||
PyErr_WriteUnraisable(threading);
|
||||
}
|
||||
|
|
|
@ -950,7 +950,7 @@ flush_io(void)
|
|||
|
||||
f = _PySys_GetObjectId(&PyId_stderr);
|
||||
if (f != NULL) {
|
||||
r = _PyObject_CallMethodId(f, &PyId_flush, "");
|
||||
r = _PyObject_CallMethodId(f, &PyId_flush, NULL);
|
||||
if (r)
|
||||
Py_DECREF(r);
|
||||
else
|
||||
|
@ -958,7 +958,7 @@ flush_io(void)
|
|||
}
|
||||
f = _PySys_GetObjectId(&PyId_stdout);
|
||||
if (f != NULL) {
|
||||
r = _PyObject_CallMethodId(f, &PyId_flush, "");
|
||||
r = _PyObject_CallMethodId(f, &PyId_flush, NULL);
|
||||
if (r)
|
||||
Py_DECREF(r);
|
||||
else
|
||||
|
|
|
@ -314,7 +314,7 @@ _Py_DisplaySourceLine(PyObject *f, PyObject *filename, int lineno, int indent)
|
|||
if (fob == NULL) {
|
||||
PyErr_Clear();
|
||||
|
||||
res = _PyObject_CallMethodId(binary, &PyId_close, "");
|
||||
res = _PyObject_CallMethodId(binary, &PyId_close, NULL);
|
||||
Py_DECREF(binary);
|
||||
if (res)
|
||||
Py_DECREF(res);
|
||||
|
@ -334,7 +334,7 @@ _Py_DisplaySourceLine(PyObject *f, PyObject *filename, int lineno, int indent)
|
|||
break;
|
||||
}
|
||||
}
|
||||
res = _PyObject_CallMethodId(fob, &PyId_close, "");
|
||||
res = _PyObject_CallMethodId(fob, &PyId_close, NULL);
|
||||
if (res)
|
||||
Py_DECREF(res);
|
||||
else
|
||||
|
|
Loading…
Reference in New Issue