vsprintf returns int not char*

From: Date: Tue, 04 Jan 2005 08:07:04 +0000
Subject: vsprintf returns int not char*
Groups: php.internals 
Request: Send a blank email to internals+get-14272@lists.php.net to get a copy of this message
Hi Derick, in php-src/main/php_sprintf.c PHPAPI int php_sprintf (char*s, const char* format, ...) { va_list args; char *ret; //ret should be of type integer as vsprintf returns int rather than char* va_start (args, format); s[0] = '\0'; ret = vsprintf (s, format, args); va_end (args); if (!ret) //This check should be if(ret < 0) as ret will have the number of characters printed to s //If an output error is encountered, a negative value is returned. return -1; return strlen (s); } ret should be of type integer as vsprintf returns int rather than char*. if (!ret) should be if(ret < 0) With regards Kamesh Jayachandran

« previous php.internals (#14272) next »