diff options
author | drh <> | 2025-06-11 00:01:42 +0000 |
---|---|---|
committer | drh <> | 2025-06-11 00:01:42 +0000 |
commit | 23e59b34e9d6c574280b7a1e29499c7d0805b01a (patch) | |
tree | 5d2c435b59eea21ff924f2f75f3e527488e6ccd1 /src/func.c | |
parent | a09a4fbac958ab3c130c73500cc3cf68f9151d50 (diff) | |
download | sqlite-23e59b34e9d6c574280b7a1e29499c7d0805b01a.tar.gz sqlite-23e59b34e9d6c574280b7a1e29499c7d0805b01a.zip |
Fix the concat_ws() SQL function so that it includes empty strings in the
concatenation. [forum:/forumpost/52503ac21d|Forum post 52503ac21d].
FossilOrigin-Name: 80a78987da484d435a8242c05c48d546d430920df713b24a9d9d9fff7ba1113d
Diffstat (limited to 'src/func.c')
-rw-r--r-- | src/func.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/func.c b/src/func.c index 9e2839336..b0a1359b7 100644 --- a/src/func.c +++ b/src/func.c @@ -1667,7 +1667,7 @@ static void concatFuncCore( int nSep, const char *zSep ){ - i64 j, k, n = 0; + i64 j, n = 0; int i; char *z; for(i=0; i<argc; i++){ @@ -1681,8 +1681,8 @@ static void concatFuncCore( } j = 0; for(i=0; i<argc; i++){ - k = sqlite3_value_bytes(argv[i]); - if( k>0 ){ + if( sqlite3_value_type(argv[i])!=SQLITE_NULL ){ + int k = sqlite3_value_bytes(argv[i]); const char *v = (const char*)sqlite3_value_text(argv[i]); if( v!=0 ){ if( j>0 && nSep>0 ){ |