Add the SQLITE_STATUS_MALLOC_COUNT option for sqlite3_status().

FossilOrigin-Name: 8f8e442b3af553753e25c304efa289b626e3a227
diff --git a/src/malloc.c b/src/malloc.c
index 6c107f9..4222900 100644
--- a/src/malloc.c
+++ b/src/malloc.c
@@ -251,6 +251,7 @@
   if( p ){
     nFull = sqlite3MallocSize(p);
     sqlite3StatusAdd(SQLITE_STATUS_MEMORY_USED, nFull);
+    sqlite3StatusAdd(SQLITE_STATUS_MALLOC_COUNT, 1);
   }
   *pp = p;
   return nFull;
@@ -446,6 +447,7 @@
   if( sqlite3GlobalConfig.bMemstat ){
     sqlite3_mutex_enter(mem0.mutex);
     sqlite3StatusAdd(SQLITE_STATUS_MEMORY_USED, -sqlite3MallocSize(p));
+    sqlite3StatusAdd(SQLITE_STATUS_MALLOC_COUNT, -1);
     sqlite3GlobalConfig.m.xFree(p);
     sqlite3_mutex_leave(mem0.mutex);
   }else{
diff --git a/src/sqlite.h.in b/src/sqlite.h.in
index 89bcf1c..0c71848 100644
--- a/src/sqlite.h.in
+++ b/src/sqlite.h.in
@@ -5204,6 +5204,7 @@
 #define SQLITE_STATUS_PARSER_STACK         6
 #define SQLITE_STATUS_PAGECACHE_SIZE       7
 #define SQLITE_STATUS_SCRATCH_SIZE         8
+#define SQLITE_STATUS_MALLOC_COUNT         9
 
 /*
 ** CAPI3REF: Database Connection Status
diff --git a/src/status.c b/src/status.c
index da908bb..6f14166 100644
--- a/src/status.c
+++ b/src/status.c
@@ -21,8 +21,8 @@
 */
 typedef struct sqlite3StatType sqlite3StatType;
 static SQLITE_WSD struct sqlite3StatType {
-  int nowValue[9];         /* Current value */
-  int mxValue[9];          /* Maximum value */
+  int nowValue[10];         /* Current value */
+  int mxValue[10];          /* Maximum value */
 } sqlite3Stat = { {0,}, {0,} };
 
 
diff --git a/src/test_malloc.c b/src/test_malloc.c
index e32b78e..3fa753b 100644
--- a/src/test_malloc.c
+++ b/src/test_malloc.c
@@ -1237,6 +1237,7 @@
     { "SQLITE_STATUS_SCRATCH_OVERFLOW",    SQLITE_STATUS_SCRATCH_OVERFLOW    },
     { "SQLITE_STATUS_SCRATCH_SIZE",        SQLITE_STATUS_SCRATCH_SIZE        },
     { "SQLITE_STATUS_PARSER_STACK",        SQLITE_STATUS_PARSER_STACK        },
+    { "SQLITE_STATUS_MALLOC_COUNT",        SQLITE_STATUS_MALLOC_COUNT        },
   };
   Tcl_Obj *pResult;
   if( objc!=3 ){