Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Use memcpy() instead of casting to copy the content of a long long int into a double. Ticket #3101. (CVS 5117) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
88e12caca99d1d54cfe6228cb0de1ecc |
User & Date: | drh 2008-05-11 17:22:01.000 |
Context
2008-05-12
| ||
00:29 | Correctly test DosWrite() for failure return code (CVS 5118) (check-in: 3eff0ef2cf user: pweilbacher tags: trunk) | |
2008-05-11
| ||
17:22 | Use memcpy() instead of casting to copy the content of a long long int into a double. Ticket #3101. (CVS 5117) (check-in: 88e12caca9 user: drh tags: trunk) | |
11:07 | New test cases to verify that SQLite handles bound NaN, +Inf, and -Inf floating point values correctly. Improvements to the text->real conversion routine so that it generates +Inf and -Inf at appropriate times. Tickets #3101 and #3060. (CVS 5116) (check-in: 3ff2f1cdc9 user: drh tags: trunk) | |
Changes
Changes to src/test1.c.
︙ | ︙ | |||
9 10 11 12 13 14 15 | ** May you share freely, never taking more than you give. ** ************************************************************************* ** Code for testing all sorts of SQLite interfaces. This code ** is not included in the SQLite library. It is used for automated ** testing of the SQLite library. ** | | | 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | ** May you share freely, never taking more than you give. ** ************************************************************************* ** Code for testing all sorts of SQLite interfaces. This code ** is not included in the SQLite library. It is used for automated ** testing of the SQLite library. ** ** $Id: test1.c,v 1.303 2008/05/11 17:22:01 drh Exp $ */ #include "sqliteInt.h" #include "tcl.h" #include <stdlib.h> #include <string.h> /* |
︙ | ︙ | |||
2650 2651 2652 2653 2654 2655 2656 | zVal = Tcl_GetString(objv[3]); for(i=0; i<sizeof(aSpecialFp)/sizeof(aSpecialFp[0]); i++){ if( strcmp(aSpecialFp[i].zName, zVal)==0 ){ sqlite3_uint64 x; x = aSpecialFp[i].iUpper; x <<= 32; x |= aSpecialFp[i].iLower; | > > | | 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 | zVal = Tcl_GetString(objv[3]); for(i=0; i<sizeof(aSpecialFp)/sizeof(aSpecialFp[0]); i++){ if( strcmp(aSpecialFp[i].zName, zVal)==0 ){ sqlite3_uint64 x; x = aSpecialFp[i].iUpper; x <<= 32; x |= aSpecialFp[i].iLower; assert( sizeof(value)==8 ); assert( sizeof(x)==8 ); memcpy(&value, &x, 8); break; } } if( i>=sizeof(aSpecialFp)/sizeof(aSpecialFp[0]) && Tcl_GetDoubleFromObj(interp, objv[3], &value) ){ return TCL_ERROR; } |
︙ | ︙ |