aboutsummaryrefslogtreecommitdiff
path: root/src/malloc.c
diff options
context:
space:
mode:
authordan <Dan Kennedy>2022-04-12 11:02:06 +0000
committerdan <Dan Kennedy>2022-04-12 11:02:06 +0000
commitf7413d9acf1e9aefc2226baf77852b67efb58e2a (patch)
tree3a40159602359196fa803324c6a37a9aa90ab59f /src/malloc.c
parentd198526289eb59cd19529c6c70ce0d8d40bf167a (diff)
downloadsqlite-f7413d9acf1e9aefc2226baf77852b67efb58e2a.tar.gz
sqlite-f7413d9acf1e9aefc2226baf77852b67efb58e2a.zip
Modify utility function sqlite3SetString() so that it may be used safely on Parse.zErrMsg. Fuzzer test case "crash-1604e5d76c92574e21e437049dab9b672e06b767.txt".
FossilOrigin-Name: 09c5a4ec13b02efd6207e26dab7beaf184f0d8ccea0bd0dfe94fc803fe5636ce
Diffstat (limited to 'src/malloc.c')
-rw-r--r--src/malloc.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/malloc.c b/src/malloc.c
index 21e524589..cfda60a0b 100644
--- a/src/malloc.c
+++ b/src/malloc.c
@@ -750,8 +750,9 @@ char *sqlite3DbSpanDup(sqlite3 *db, const char *zStart, const char *zEnd){
** Free any prior content in *pz and replace it with a copy of zNew.
*/
void sqlite3SetString(char **pz, sqlite3 *db, const char *zNew){
+ char *z = sqlite3DbStrDup(db, zNew);
sqlite3DbFree(db, *pz);
- *pz = sqlite3DbStrDup(db, zNew);
+ *pz = z;
}
/*