]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Redirect timer output just like any other text.
authordrh <>
Wed, 25 Sep 2024 14:09:47 +0000 (14:09 +0000)
committerdrh <>
Wed, 25 Sep 2024 14:09:47 +0000 (14:09 +0000)
FossilOrigin-Name: 3b5ae21074958788b23ccf449e52fbbad1f81779e07a6ca62ad8395f88a37286

manifest
manifest.uuid
src/shell.c.in

index e7cdcc47707d56838bf3079732b3ac526a3a3203..affcaf289a6ab2ebed6da4a327c0ac20676eeb03 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Improvements\sto\s".www"\sand\s".output\s-w"\sso\sthat\stext\sthat\sis\snot\spart\sof\nquery\soutput\sis\sshown\susing\s&lt;pre&gt;.
-D 2024-09-25T13:56:05.407
+C Redirect\stimer\soutput\sjust\slike\sany\sother\stext.
+D 2024-09-25T14:09:47.920
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
 F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
@@ -770,7 +770,7 @@ F src/random.c 606b00941a1d7dd09c381d3279a058d771f406c5213c9932bbd93d5587be4b9c
 F src/resolve.c 9750a281f7ba073b4e6da2be1a6c4071f5d841a7746c5fb3f70d6d793b6675ea
 F src/rowset.c 8432130e6c344b3401a8874c3cb49fefe6873fec593294de077afea2dce5ec97
 F src/select.c 4b14337a2742f0c0beeba490e9a05507e9b4b12184b9cd12773501d08d48e3fe
-F src/shell.c.in 053df097aad75a1ecdff3f71c8452efffc889cc3b88907c93325360340d8b977
+F src/shell.c.in 9e32f35af780b0369cac93730d6c7e4440c7ec8a7382525da913e406491a1e46
 F src/sqlite.h.in 77f55bd1978a04a14db211732f0a609077cf60ba4ccf9baf39988f508945419c
 F src/sqlite3.rc 5121c9e10c3964d5755191c80dd1180c122fc3a8
 F src/sqlite3ext.h 3f046c04ea3595d6bfda99b781926b17e672fd6d27da2ba6d8d8fc39981dcb54
@@ -2215,8 +2215,8 @@ F vsixtest/vsixtest.tcl 6195aba1f12a5e10efc2b8c0009532167be5e301abe5b31385638080
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P b06fd9e6bcce09f12c994dc34f329a8d267ea0601bb07c9b00903c5017d55d42
-R 322d10259a92b6303d31355dabde0d96
+P f8ef65c52305b2180ec56760f5762ac5638584cd504c79d57e86f61736901aa4
+R ac074bfeea03930c231c06a9d210f518
 U drh
-Z 8156bb15fa45205c46d5412fa2ec3c8c
+Z 51901a5607650ec168b6e659dbb210c8
 # Remove this line to create a well-formed Fossil manifest.
index 07c5b4e27c95a59fb33f3118a70c88c67ed7aadc..464094fc1b5c93936d6a47ffce099d2f0f5466de 100644 (file)
@@ -1 +1 @@
-f8ef65c52305b2180ec56760f5762ac5638584cd504c79d57e86f61736901aa4
+3b5ae21074958788b23ccf449e52fbbad1f81779e07a6ca62ad8395f88a37286
index 3bba26c7dd4cca03b848df7570aed6e0c3420d22..1c81a0bbabf5878f1e04fa5b6adfe3c3b42e7ba0 100644 (file)
@@ -321,12 +321,12 @@ static double timeDiff(struct timeval *pStart, struct timeval *pEnd){
 /*
 ** Print the timing results.
 */
-static void endTimer(void){
+static void endTimer(FILE *out){
   if( enableTimer ){
     sqlite3_int64 iEnd = timeOfDay();
     struct rusage sEnd;
     getrusage(RUSAGE_SELF, &sEnd);
-    sqlite3_fprintf(stdout, "Run Time: real %.3f user %f sys %f\n",
+    sqlite3_fprintf(out, "Run Time: real %.3f user %f sys %f\n",
           (iEnd - iBegin)*0.001,
           timeDiff(&sBegin.ru_utime, &sEnd.ru_utime),
           timeDiff(&sBegin.ru_stime, &sEnd.ru_stime));
@@ -334,7 +334,7 @@ static void endTimer(void){
 }
 
 #define BEGIN_TIMER beginTimer()
-#define END_TIMER endTimer()
+#define END_TIMER(X) endTimer(X)
 #define HAS_TIMER 1
 
 #elif (defined(_WIN32) || defined(WIN32))
@@ -400,12 +400,12 @@ static double timeDiff(FILETIME *pStart, FILETIME *pEnd){
 /*
 ** Print the timing results.
 */
-static void endTimer(void){
+static void endTimer(FILE *out){
   if( enableTimer && getProcessTimesAddr){
     FILETIME ftCreation, ftExit, ftKernelEnd, ftUserEnd;
     sqlite3_int64 ftWallEnd = timeOfDay();
     getProcessTimesAddr(hProcess,&ftCreation,&ftExit,&ftKernelEnd,&ftUserEnd);
-    sqlite3_fprintf(stdout, "Run Time: real %.3f user %f sys %f\n",
+    sqlite3_fprintf(out, "Run Time: real %.3f user %f sys %f\n",
           (ftWallEnd - ftWallBegin)*0.001,
           timeDiff(&ftUserBegin, &ftUserEnd),
           timeDiff(&ftKernelBegin, &ftKernelEnd));
@@ -413,12 +413,12 @@ static void endTimer(void){
 }
 
 #define BEGIN_TIMER beginTimer()
-#define END_TIMER endTimer()
+#define END_TIMER(X) endTimer(X)
 #define HAS_TIMER hasTimer()
 
 #else
 #define BEGIN_TIMER
-#define END_TIMER
+#define END_TIMER(X)  /*no-op*/
 #define HAS_TIMER 0
 #endif
 
@@ -12157,7 +12157,7 @@ static int runOneSqlLine(ShellState *p, char *zSql, FILE *in, int startline){
   if( p->flgProgress & SHELL_PROGRESS_RESET ) p->nProgress = 0;
   BEGIN_TIMER;
   rc = shell_exec(p, zSql, &zErrMsg);
-  END_TIMER;
+  END_TIMER(p->out);
   if( rc || zErrMsg ){
     char zPrefix[100];
     const char *zErrorTail;