From: drh <> Date: Fri, 19 Jun 2026 23:53:29 +0000 (+0000) Subject: Add the sqlite3_result_str() interface and use it to simplify the code. X-Git-Url: http://git.ipfire.org/gitweb/?a=commitdiff_plain;h=ae3c30e318c5bd932ff72a784076628fc68cebdd;p=thirdparty%2Fsqlite.git Add the sqlite3_result_str() interface and use it to simplify the code. FossilOrigin-Name: 8f8361edf82233d6cd53bf8cd2f7fbf0cb3552228c9202395ef1e3383ed559ff --- ae3c30e318c5bd932ff72a784076628fc68cebdd diff --cc manifest index 40c7a07bd8,3c3b0ff61f..32a96f436f --- a/manifest +++ b/manifest @@@ -1,5 -1,5 +1,5 @@@ - C Fix\sthe\sformat()\sSQL\sfunction\sso\sthat\sit\sreturns\san\sempty\sstring\snot\sa\nNULL\sif\sthe\sfirst\sargument\sis\san\sempty\sstring.\n[bugs:/info/2026-06-19T16:40:04Z|Bug\s2026-06-19T16:40:04Z] - D 2026-06-19T16:55:08.727 -C Use\sSQLITE_FINISH\sin\sa\sfew\splaces\sin\sthe\score,\sto\shelp\sensure\sthat\spath\sis\nwell\stested. -D 2026-06-19T22:57:44.085 ++C Add\sthe\ssqlite3_result_str()\sinterface\sand\suse\sit\sto\ssimplify\sthe\scode. ++D 2026-06-19T23:53:29.221 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea @@@ -670,8 -670,8 +670,8 @@@ F mptest/multiwrite01.test dab5c5f8f953 F sqlite.pc.in 42b7bf0d02e08b9e77734a47798d1a55a9e0716b F sqlite3.1 1b9c24374a85dfc7eb8fa7c4266ee0db4f9609cceecfc5481cd8307e5af04366 F sqlite3.pc.in e6dee284fba59ef500092fdc1843df3be8433323a3733c91da96690a50a5b398 - F src/alter.c d7cbe4332a7a2c3a21ab58ee2609efade493f6ae78254613ada0759898629ee3 - F src/analyze.c 42ed904f4a81d0e4f32491e10ff8ea3cdf2f98a29b04a015f0a29046b32b4e0f -F src/alter.c ff7f795c602751a574488780cfa1259f24cccbf32ddf2205b6283c0e6998ae50 ++F src/alter.c da59ac700b52ba5d0e4dd099fb1818975cf8a79a546594da586b4e1eba3ae405 + F src/analyze.c 73162482c656187823217f4c00758c9ee13a420c8745bc542129e0279b792287 F src/attach.c c58278c7d2d954785591c4fde81669ec3e4d52f348c453b028a19ae8adf4f338 F src/auth.c b5ece4e1edccad082c0332fa0087df225473bae0feea9269f824312201377185 F src/backup.c 6ebe22ccbedfcb92423833992130e8d65824be4e6599c3a03f540ab38fc7d13c @@@ -2208,8 -2208,8 +2208,9 @@@ F tool/warnings-clang.sh bbf6a1e685e534 F tool/warnings.sh a554d13f6e5cf3760f041b87939e3d616ec6961859c3245e8ef701d1eafc2ca2 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f F tool/winmain.c 00c8fb88e365c9017db14c73d3c78af62194d9644feaf60e220ab0f411f3604c - P d6a3272e5592bcfeecf8a06dd8330cce57ff6603b24994b533d1fdcd48b5dc66 - R 7e7c087b6061ec959347a00d450a39f7 -P 2fe53e6d68c3f9f1c4b064fa40fe8efe12025179a973182f0bb256acb9b5d58d -R 3de030f0b5267bf636ad519cf6229737 ++P ece7af98a8bf982567b489cf82a52519f46a1c9360c82a486dbe1cd0664b1555 7356bf3a813bcd9082a7fdef5e2cc38c7a0f142f0ef4c948f78e4dafa216c039 ++R 0fa5f372fdd27979e749925fe2796454 ++T +closed 7356bf3a813bcd9082a7fdef5e2cc38c7a0f142f0ef4c948f78e4dafa216c039 U drh - Z 9591ba0273abaf6614bea46629e85033 -Z e6a5bf5d9c5bcab97848f385d89977e5 ++Z 40775e5df77bdbb5b520868c76d98e2b # Remove this line to create a well-formed Fossil manifest. diff --cc manifest.uuid index 88b0ccbb10,bf4b955737..247a0fa8bc --- a/manifest.uuid +++ b/manifest.uuid @@@ -1,1 -1,1 +1,1 @@@ - ece7af98a8bf982567b489cf82a52519f46a1c9360c82a486dbe1cd0664b1555 -7356bf3a813bcd9082a7fdef5e2cc38c7a0f142f0ef4c948f78e4dafa216c039 ++8f8361edf82233d6cd53bf8cd2f7fbf0cb3552228c9202395ef1e3383ed559ff diff --cc src/alter.c index 7e6ab32557,a654a7cde7..7d3c85b5ae --- a/src/alter.c +++ b/src/alter.c @@@ -2683,13 -2682,11 +2682,11 @@@ static void addConstraintFunc iOff += getWhitespace(&zSql[iOff]); - db = sqlite3_context_db_handle(ctx); - if( iCol<0 ){ - zNew = sqlite3MPrintf(db, "%.*s, %s%s", iOff, zSql, zCons, &zSql[iOff]); - }else{ - zNew = sqlite3MPrintf(db, "%.*s %s%s", iOff, zSql, zCons, &zSql[iOff]); - } - sqlite3_result_text(ctx, zNew, -1, SQLITE_DYNAMIC); + pNew = sqlite3_str_new(sqlite3_context_db_handle(ctx)); - sqlite3_str_append(pNew, zSql, iOff); ++ sqlite3_str_append(pNew, (const char*)zSql, iOff); + if( iCol<0 ) sqlite3_str_append(pNew, ",", 1); + sqlite3_str_appendf(pNew, " %s%s", zCons, &zSql[iOff]); + sqlite3_result_str(ctx, pNew, SQLITE_FINISH); } /*