Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Create sqlite4_num_from_int64. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | num_work |
Files: | files | file ages | folders |
SHA1: |
2552bc97ef445f86158e57f6e21d4a3b |
User & Date: | peterreid 2013-02-09 05:32:33.162 |
Context
2013-02-09
| ||
05:33 | Make sqlite4_num's exponent signed. check-in: b320c13e42 user: peterreid tags: num_work | |
05:32 | Create sqlite4_num_from_int64. check-in: 2552bc97ef user: peterreid tags: num_work | |
05:31 | Prevent reading out of bounds in sqlite4_num_from_text. Parsing 'in' (prefix of 'inf') with byte count 2 triggered the bug. check-in: 408475b607 user: peterreid tags: num_work | |
Changes
Changes to src/math.c.
︙ | |||
386 387 388 389 390 391 392 393 394 395 396 397 398 399 | 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 | + + + + + + + + + + + + + + + + + + | return r; not_a_valid_number: r.e = SQLITE4_MX_EXP+1; r.m = 0; return r; } /* ** Convert an sqlite4_int64 to a number and return that number. */ sqlite4_num sqlite4_num_from_int64(sqlite4_int64 n){ sqlite4_num r; r.approx = 0; r.e = 0; r.sign = n < 0; if( n>=0 ){ r.m = n; }else if( n!=SMALLEST_INT64 ){ r.m = -n; }else{ r.m = 1+(u64)LARGEST_INT64; } return r; } /* ** Convert an integer into text in the buffer supplied. The ** text is zero-terminated and right-justified in the buffer. ** A pointer to the first character of text is returned. ** ** The buffer needs to be at least 21 bytes in length. |
︙ |