diff options
author | drh <drh@noemail.net> | 2017-12-29 13:35:09 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2017-12-29 13:35:09 +0000 |
commit | 7a8573bafaba8b341ec033a0ecc810afeceda94e (patch) | |
tree | 67a72353c4313c2cadb24a46a54af0cf87104317 /src/malloc.c | |
parent | 2fc865c1153d739208657ea652f74426bf20f678 (diff) | |
parent | ee052a1c941920dab3fab38785fbf03237677b7a (diff) | |
download | sqlite-7a8573bafaba8b341ec033a0ecc810afeceda94e.tar.gz sqlite-7a8573bafaba8b341ec033a0ecc810afeceda94e.zip |
Merge recent enhancements from trunk.
FossilOrigin-Name: 6251e438f2a76170fd1e95aa512a46086ed88ab93b9b97a1dba97c4558689305
Diffstat (limited to 'src/malloc.c')
-rw-r--r-- | src/malloc.c | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/malloc.c b/src/malloc.c index b750f6e72..ec2d93ac8 100644 --- a/src/malloc.c +++ b/src/malloc.c @@ -628,6 +628,19 @@ char *sqlite3DbStrNDup(sqlite3 *db, const char *z, u64 n){ } /* +** The text between zStart and zEnd represents a phrase within a larger +** SQL statement. Make a copy of this phrase in space obtained form +** sqlite3DbMalloc(). Omit leading and trailing whitespace. +*/ +char *sqlite3DbSpanDup(sqlite3 *db, const char *zStart, const char *zEnd){ + int n; + while( sqlite3Isspace(zStart[0]) ) zStart++; + n = (int)(zEnd - zStart); + while( n>0 && sqlite3Isspace(zStart[n-1]) ) n--; + return sqlite3DbStrNDup(db, zStart, n); +} + +/* ** Free any prior content in *pz and replace it with a copy of zNew. */ void sqlite3SetString(char **pz, sqlite3 *db, const char *zNew){ |