L.S.

Here's the patch for those interested:


--- sqlite-3.4.2-orig/src/printf.c      2007-06-28 14:46:19.000000000 +0200
+++ sqlite-3.4.2/src/printf.c   2007-10-08 11:56:49.000000000 +0200
@@ -158,7 +158,11 @@
 static int et_getdigit(LONGDOUBLE_TYPE *val, int *cnt){
   int digit;
   LONGDOUBLE_TYPE d;
+#ifdef SQLITE_FPE_FASTFPE
+  if( (*cnt)++ >= 10 ) return '0';
+#else
   if( (*cnt)++ >= 16 ) return '0';
+#endif /* SQLITE_FPE_FASTFPE */
   digit = (int)*val;
   d = digit;
   digit += '0';


and


diff -u -r sqlite-3.4.2-orig/src/vdbemem.c sqlite-3.4.2/src/vdbemem.c
--- sqlite-3.4.2-orig/src/vdbemem.c     2007-06-28 14:46:19.000000000 +0200
+++ sqlite-3.4.2/src/vdbemem.c  2007-10-08 11:58:07.000000000 +0200
@@ -217,7 +217,11 @@
     sqlite3_snprintf(NBFS, z, "%lld", pMem->u.i);
   }else{
     assert( fg & MEM_Real );
+#ifdef SQLITE_FPE_FASTFPE
+    sqlite3_snprintf(NBFS, z, "%!.9g", pMem->r);
+#else
     sqlite3_snprintf(NBFS, z, "%!.15g", pMem->r);
+#endif /* SQLITE_FPE_FASTFPE */
   }
   pMem->n = strlen(z);
   pMem->z = z;



FYI, the (latest?) 2.6 kernels seem to have ditched FASTFPE completely, so the 
above is probably a 2.4 - issue only.




-- 
Best,




Frank.

-----------------------------------------------------------------------------
To unsubscribe, send email to [EMAIL PROTECTED]
-----------------------------------------------------------------------------

Reply via email to