summaryrefslogtreecommitdiff
path: root/ext/sqlite/libsqlite/src/util.c
diff options
context:
space:
mode:
Diffstat (limited to 'ext/sqlite/libsqlite/src/util.c')
-rw-r--r--ext/sqlite/libsqlite/src/util.c11
1 files changed, 5 insertions, 6 deletions
diff --git a/ext/sqlite/libsqlite/src/util.c b/ext/sqlite/libsqlite/src/util.c
index ed399fde21..4fa09b3759 100644
--- a/ext/sqlite/libsqlite/src/util.c
+++ b/ext/sqlite/libsqlite/src/util.c
@@ -330,15 +330,15 @@ char *sqliteStrNDup(const char *z, int n){
** point to that string. The 1st argument must either be NULL or
** point to memory obtained from sqliteMalloc().
*/
-void sqliteSetString(char **pz, const char *zFirst, ...){
+void sqliteSetString(char **pz, ...){
va_list ap;
int nByte;
const char *z;
char *zResult;
if( pz==0 ) return;
- nByte = strlen(zFirst) + 1;
- va_start(ap, zFirst);
+ nByte = 1;
+ va_start(ap, pz);
while( (z = va_arg(ap, const char*))!=0 ){
nByte += strlen(z);
}
@@ -348,9 +348,8 @@ void sqliteSetString(char **pz, const char *zFirst, ...){
if( zResult==0 ){
return;
}
- strcpy(zResult, zFirst);
- zResult += strlen(zResult);
- va_start(ap, zFirst);
+ *zResult = 0;
+ va_start(ap, pz);
while( (z = va_arg(ap, const char*))!=0 ){
strcpy(zResult, z);
zResult += strlen(zResult);