diff Include/pyerrors.h @ 21145:87fa6e9bd77e legacy-trunk

mysnprintf.c: Massive rewrite of PyOS_snprintf and PyOS_vsnprintf, to use wrappers on all platforms, to make this as consistent as possible x- platform (in particular, make sure there's at least one \0 byte in the output buffer). Also document more of the truth about what these do. getargs.c, seterror(): Three computations of remaining buffer size were backwards, thus telling PyOS_snprintf the buffer is larger than it actually is. This matters a lot now that PyOS_snprintf ensures there's a trailing \0 byte (because it didn't get the truth about the buffer size, it was storing \0 beyond the true end of the buffer). sysmodule.c, mywrite(): Simplify, now that PyOS_vsnprintf guarantees to produce a \0 byte.
author Tim Peters <tim.peters@gmail.com>
date Mon, 03 Dec 2001 00:43:33 +0000
parents ba67b9c97b69
children 3f242cdd0904
line wrap: on
line diff
--- a/Include/pyerrors.h	Mon Dec 03 00:37:28 2001 +0000
+++ b/Include/pyerrors.h	Mon Dec 03 00:43:33 2001 +0000
@@ -123,16 +123,11 @@
 # define vsnprintf _vsnprintf
 #endif
 
-#ifndef HAVE_SNPRINTF
 #include <stdarg.h>
 extern DL_IMPORT(int) PyOS_snprintf(char *str, size_t size, const char  *format, ...)
 			__attribute__((format(printf, 3, 4)));
 extern DL_IMPORT(int) PyOS_vsnprintf(char *str, size_t size, const char  *format, va_list va)
 			__attribute__((format(printf, 3, 0)));
-#else
-# define PyOS_vsnprintf	vsnprintf
-# define PyOS_snprintf	snprintf
-#endif
 
 #ifdef __cplusplus
 }