Change two MallocZero() calls into MallocRaw() to avoid unnecessary memset().

FossilOrigin-Name: ff5e733cbffd73faa4046e0f1c7f24bb6e131738
diff --git a/src/expr.c b/src/expr.c
index 505e56a..2bf76eb 100644
--- a/src/expr.c
+++ b/src/expr.c
@@ -2367,7 +2367,7 @@
   char *zRet;
 
   assert( pExpr->op==TK_IN );
-  zRet = sqlite3DbMallocZero(pParse->db, nVal+1);
+  zRet = sqlite3DbMallocRaw(pParse->db, nVal+1);
   if( zRet ){
     int i;
     for(i=0; i<nVal; i++){
diff --git a/src/legacy.c b/src/legacy.c
index bd34512..df8e278 100644
--- a/src/legacy.c
+++ b/src/legacy.c
@@ -73,7 +73,7 @@
           (SQLITE_DONE==rc && !callbackIsInit
                            && db->flags&SQLITE_NullCallback)) ){
         if( !callbackIsInit ){
-          azCols = sqlite3DbMallocZero(db, 2*nCol*sizeof(const char*) + 1);
+          azCols = sqlite3DbMallocRaw(db, (2*nCol+1)*sizeof(const char*));
           if( azCols==0 ){
             goto exec_out;
           }
@@ -94,6 +94,7 @@
               goto exec_out;
             }
           }
+          azVals[i] = 0;
         }
         if( xCallback(pArg, nCol, azVals, azCols) ){
           /* EVIDENCE-OF: R-38229-40159 If the callback function to