diff options
author | drh <drh@noemail.net> | 2004-09-08 20:13:04 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2004-09-08 20:13:04 +0000 |
commit | fe63d1c98b1a8e24d2598bb03f21c27a881ce905 (patch) | |
tree | 2147712f6afded5032b1e390ecac4b38d12988d9 /src/printf.c | |
parent | 03c898807635e9a7bad70bc34e18924c69f61097 (diff) | |
download | sqlite-fe63d1c98b1a8e24d2598bb03f21c27a881ce905.tar.gz sqlite-fe63d1c98b1a8e24d2598bb03f21c27a881ce905.zip |
More changes directed at getting things to work on 64-bit platforms. (CVS 1949)
FossilOrigin-Name: 39755d216608e9d12e1055433549f820f63608a7
Diffstat (limited to 'src/printf.c')
-rw-r--r-- | src/printf.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/printf.c b/src/printf.c index 22421f64f..f4dc4eeae 100644 --- a/src/printf.c +++ b/src/printf.c @@ -73,6 +73,7 @@ NULL pointers replaced by SQL NULL. %Q */ #define etTOKEN 14 /* a pointer to a Token structure */ #define etSRCLIST 15 /* a pointer to a SrcList */ +#define etPOINTER 16 /* The %p conversion */ /* @@ -123,7 +124,7 @@ static et_info fmtinfo[] = { { 'i', 10, 1, etRADIX, "0123456789", 0 }, { 'n', 0, 0, etSIZE, 0, 0 }, { '%', 0, 0, etPERCENT, 0, 0 }, - { 'p', 10, 0, etRADIX, "0123456789", 0 }, + { 'p', 16, 0, etPOINTER, "0123456789abcdef", "x0" }, { 'T', 0, 2, etTOKEN, 0, 0 }, { 'S', 0, 2, etSRCLIST, 0, 0 }, }; @@ -345,6 +346,10 @@ static int vxprintf( ** infop Pointer to the appropriate info struct. */ switch( xtype ){ + case etPOINTER: + flag_longlong = sizeof(char*)==sizeof(i64); + flag_long = sizeof(char*)==sizeof(long int); + /* Fall through into the next case */ case etRADIX: if( infop->flags & FLAG_SIGNED ){ i64 v; |