Ignore _Py_write_noraise() result: cast to (void) (#108291)

Code using _Py_write_noraise() usually cannot report. Ignore errors
is the least surprising behavior for users.
This commit is contained in:
Victor Stinner 2023-08-22 16:28:20 +02:00 committed by GitHub
parent a541e01537
commit 6541fe4ad7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 9 additions and 9 deletions

View File

@ -26,7 +26,7 @@
/* Allocate at maximum 100 MiB of the stack to raise the stack overflow */ /* Allocate at maximum 100 MiB of the stack to raise the stack overflow */
#define STACK_OVERFLOW_MAX_SIZE (100 * 1024 * 1024) #define STACK_OVERFLOW_MAX_SIZE (100 * 1024 * 1024)
#define PUTS(fd, str) _Py_write_noraise(fd, str, strlen(str)) #define PUTS(fd, str) (void)_Py_write_noraise(fd, str, strlen(str))
// clang uses __attribute__((no_sanitize("undefined"))) // clang uses __attribute__((no_sanitize("undefined")))
@ -576,7 +576,7 @@ faulthandler_thread(void *unused)
/* Timeout => dump traceback */ /* Timeout => dump traceback */
assert(st == PY_LOCK_FAILURE); assert(st == PY_LOCK_FAILURE);
_Py_write_noraise(thread.fd, thread.header, (int)thread.header_len); (void)_Py_write_noraise(thread.fd, thread.header, (int)thread.header_len);
errmsg = _Py_DumpTracebackThreads(thread.fd, thread.interp, NULL); errmsg = _Py_DumpTracebackThreads(thread.fd, thread.interp, NULL);
ok = (errmsg == NULL); ok = (errmsg == NULL);

View File

@ -57,7 +57,7 @@
# undef BYTE # undef BYTE
#endif #endif
#define PUTS(fd, str) _Py_write_noraise(fd, str, (int)strlen(str)) #define PUTS(fd, str) (void)_Py_write_noraise(fd, str, (int)strlen(str))
#ifdef __cplusplus #ifdef __cplusplus

View File

@ -25,7 +25,7 @@
#define OFF(x) offsetof(PyTracebackObject, x) #define OFF(x) offsetof(PyTracebackObject, x)
#define PUTS(fd, str) _Py_write_noraise(fd, str, (int)strlen(str)) #define PUTS(fd, str) (void)_Py_write_noraise(fd, str, (int)strlen(str))
#define MAX_STRING_LENGTH 500 #define MAX_STRING_LENGTH 500
#define MAX_FRAME_DEPTH 100 #define MAX_FRAME_DEPTH 100
#define MAX_NTHREADS 100 #define MAX_NTHREADS 100
@ -1047,7 +1047,7 @@ _Py_DumpDecimal(int fd, size_t value)
value /= 10; value /= 10;
} while (value); } while (value);
_Py_write_noraise(fd, ptr, end - ptr); (void)_Py_write_noraise(fd, ptr, end - ptr);
} }
/* Format an integer as hexadecimal with width digits into fd file descriptor. /* Format an integer as hexadecimal with width digits into fd file descriptor.
@ -1072,7 +1072,7 @@ _Py_DumpHexadecimal(int fd, uintptr_t value, Py_ssize_t width)
value >>= 4; value >>= 4;
} while ((end - ptr) < width || value); } while ((end - ptr) < width || value);
_Py_write_noraise(fd, ptr, end - ptr); (void)_Py_write_noraise(fd, ptr, end - ptr);
} }
void void
@ -1125,7 +1125,7 @@ _Py_DumpASCII(int fd, PyObject *text)
} }
if (!need_escape) { if (!need_escape) {
// The string can be written with a single write() syscall // The string can be written with a single write() syscall
_Py_write_noraise(fd, str, size); (void)_Py_write_noraise(fd, str, size);
goto done; goto done;
} }
} }
@ -1135,7 +1135,7 @@ _Py_DumpASCII(int fd, PyObject *text)
if (' ' <= ch && ch <= 126) { if (' ' <= ch && ch <= 126) {
/* printable ASCII character */ /* printable ASCII character */
char c = (char)ch; char c = (char)ch;
_Py_write_noraise(fd, &c, 1); (void)_Py_write_noraise(fd, &c, 1);
} }
else if (ch <= 0xff) { else if (ch <= 0xff) {
PUTS(fd, "\\x"); PUTS(fd, "\\x");

View File

@ -1247,7 +1247,7 @@ tracemalloc_get_traceback(unsigned int domain, uintptr_t ptr)
} }
#define PUTS(fd, str) _Py_write_noraise(fd, str, (int)strlen(str)) #define PUTS(fd, str) (void)_Py_write_noraise(fd, str, (int)strlen(str))
static void static void
_PyMem_DumpFrame(int fd, frame_t * frame) _PyMem_DumpFrame(int fd, frame_t * frame)