From b8763639bbef1f0f01cb83c4ac98eb9ff1827b96 Mon Sep 17 00:00:00 2001 From: drh Date: Tue, 19 Jan 2016 17:54:21 +0000 Subject: [PATCH] Fix two harmless compiler warnings about comparisons of dangling pointers. FossilOrigin-Name: 86944f193f1f06b64471953bb5713ecea7f3d803 --- manifest | 16 ++++++++-------- manifest.uuid | 2 +- src/vdbeaux.c | 2 +- src/whereexpr.c | 4 +++- 4 files changed, 13 insertions(+), 11 deletions(-) diff --git a/manifest b/manifest index a92d3b5535..4f8ac4d9b8 100644 --- a/manifest +++ b/manifest @@ -1,5 +1,5 @@ -C Add\sfurther\sfts5\stests.\s100%\scode\scoverage\sis\sfinally\srestored. -D 2016-01-19T16:06:23.776 +C Fix\stwo\sharmless\scompiler\swarnings\sabout\scomparisons\sof\sdangling\spointers. +D 2016-01-19T17:54:21.554 F Makefile.in a476545d0c8626224d0bacac85c6e2967474af81 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434 F Makefile.msc 01e855f958932d0d3ed62ec675fc63e2cef61fcb @@ -414,7 +414,7 @@ F src/vdbe.c b90d9d38e5e0260c2eafa3cb4c2274d8ea94da27 F src/vdbe.h 7a733ea8aac1b77305a67698e784fa3484ee3337 F src/vdbeInt.h 42eefa4f9e7432b9968d321b44e48821ec13b189 F src/vdbeapi.c ffae8f5af4570fbd548504e815e9fb7227f0822e -F src/vdbeaux.c 95e067a5e2a75e128d45ca597388dc83c58142f0 +F src/vdbeaux.c fcbca1519bdfe619edf2e95b64aad8e7b718494c F src/vdbeblob.c 37c3d11a753e403698c69e17383d282e1ae73e75 F src/vdbemem.c b9181e77eca2a095929d46250daf85c8d2621fc0 F src/vdbesort.c 0971557e5d3c289e46f56a52aed2197c13251de7 @@ -427,7 +427,7 @@ F src/walker.c 0f142b5bd3ed2041fc52d773880748b212e63354 F src/where.c bb69654f841ae7af0a20cc6fb8f0ac57901c31be F src/whereInt.h 78b6b4de94db84aecbdc07fe3e38f648eb391e9a F src/wherecode.c 8dee26eb181ea9daa8b1a4d96f34c0860aaf99bd -F src/whereexpr.c eebba8340c90de73b3d3bbe8c43b84559b8e6e2c +F src/whereexpr.c 197a448b52073aee43eca3a2233fc113369eb2d4 F test/8_3_names.test ebbb5cd36741350040fd28b432ceadf495be25b2 F test/affinity2.test a6d901b436328bd67a79b41bb0ac2663918fe3bd F test/aggerror.test a867e273ef9e3d7919f03ef4f0e8c0d2767944f2 @@ -1419,7 +1419,7 @@ F tool/vdbe_profile.tcl 246d0da094856d72d2c12efec03250d71639d19f F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4 F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f -P acaf426449bf6fd3140fd63141750ff69d1119a5 -R d08b3552b8f27561f27085942ba60d34 -U dan -Z 7a4ceb8872d3ff383d019f72843d63a3 +P b914ece0d146cfc8adba4dc4e8633e14f174d6ea +R 3e5d796fe259d88063a5203a70f6d659 +U drh +Z 42379f3c18aeff0e63b7fa93d55446fd diff --git a/manifest.uuid b/manifest.uuid index 0f9bae7512..5fc95f9db8 100644 --- a/manifest.uuid +++ b/manifest.uuid @@ -1 +1 @@ -b914ece0d146cfc8adba4dc4e8633e14f174d6ea \ No newline at end of file +86944f193f1f06b64471953bb5713ecea7f3d803 \ No newline at end of file diff --git a/src/vdbeaux.c b/src/vdbeaux.c index 492a41599b..7cce57a738 100644 --- a/src/vdbeaux.c +++ b/src/vdbeaux.c @@ -3655,9 +3655,9 @@ static int vdbeCompareMemString( v2 = sqlite3ValueText((sqlite3_value*)&c2, pColl->enc); n2 = v2==0 ? 0 : c2.n; rc = pColl->xCmp(pColl->pUser, n1, v1, n2, v2); + if( (v1==0 || v2==0) && prcErr ) *prcErr = SQLITE_NOMEM; sqlite3VdbeMemRelease(&c1); sqlite3VdbeMemRelease(&c2); - if( (v1==0 || v2==0) && prcErr ) *prcErr = SQLITE_NOMEM; return rc; } } diff --git a/src/whereexpr.c b/src/whereexpr.c index 99a97079be..e0b8bac1b7 100644 --- a/src/whereexpr.c +++ b/src/whereexpr.c @@ -202,6 +202,7 @@ static int isLikeOrGlob( sqlite3 *db = pParse->db; /* Database connection */ sqlite3_value *pVal = 0; int op; /* Opcode of pRight */ + int rc; /* Result code to return */ if( !sqlite3IsLikeFunction(db, pExpr, pnoCase, wc) ){ return 0; @@ -267,8 +268,9 @@ static int isLikeOrGlob( } } + rc = (z!=0); sqlite3ValueFree(pVal); - return (z!=0); + return rc; } #endif /* SQLITE_OMIT_LIKE_OPTIMIZATION */