]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Avoid a technically undefined right-shift of a signed value in rtree.c.
authordan <dan@noemail.net>
Mon, 20 Mar 2017 19:26:27 +0000 (19:26 +0000)
committerdan <dan@noemail.net>
Mon, 20 Mar 2017 19:26:27 +0000 (19:26 +0000)
FossilOrigin-Name: a144875fe44ff3a30bab299d50b7dbec2ee21f8c73e692a71ee1f7c54b5f0c76

ext/rtree/rtree.c
manifest
manifest.uuid

index 63838a4eef8546ee996cc218b922470f32011c12..42f08a9628279682d6990d1b3b8e037742a1e888 100644 (file)
@@ -458,15 +458,15 @@ static i64 readInt64(u8 *p){
   memcpy(&x, p, 8);
   return x;
 #else
-  return (
-    (((i64)p[0]) << 56) + 
-    (((i64)p[1]) << 48) + 
-    (((i64)p[2]) << 40) + 
-    (((i64)p[3]) << 32) + 
-    (((i64)p[4]) << 24) + 
-    (((i64)p[5]) << 16) + 
-    (((i64)p[6]) <<  8) + 
-    (((i64)p[7]) <<  0)
+  return (i64)(
+    (((u64)p[0]) << 56) + 
+    (((u64)p[1]) << 48) + 
+    (((u64)p[2]) << 40) + 
+    (((u64)p[3]) << 32) + 
+    (((u64)p[4]) << 24) + 
+    (((u64)p[5]) << 16) + 
+    (((u64)p[6]) <<  8) + 
+    (((u64)p[7]) <<  0)
   );
 #endif
 }
index 882e3cc273fd6ad1f5c54eac3bdfcb07d3916a96..180628583d7753095e00b8fa098f9d3b12c98071 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Fix\ssome\sproblems\sin\sfts3\sfound\sby\saddress-sanitizer.
-D 2017-03-20T18:53:32.346
+C Avoid\sa\stechnically\sundefined\sright-shift\sof\sa\ssigned\svalue\sin\srtree.c.
+D 2017-03-20T19:26:27.669
 F Makefile.in 1cc758ce3374a32425e4d130c2fe7b026b20de5b8843243de75f087c0a2661fb
 F Makefile.linux-gcc 7bc79876b875010e8c8f9502eb935ca92aa3c434
 F Makefile.msc 1faf9f06aadc9284c212dea7bbc7c0dea7e8337f0287c81001eff500912c790a
@@ -270,7 +270,7 @@ F ext/rbu/sqlite3rbu.c 2a89efba9eeba8e6c89a498dc195e8efbdde2694
 F ext/rbu/sqlite3rbu.h 6fb6294c34a9ca93b5894a33bca530c6f08decba
 F ext/rbu/test_rbu.c 5aa22616afac6f71ebd3d9bc9bf1006cfabcca88
 F ext/rtree/README 6315c0d73ebf0ec40dedb5aa0e942bc8b54e3761
-F ext/rtree/rtree.c 3f3a595dba485e340246fa2c8ba330a6b9768b00
+F ext/rtree/rtree.c 0acd285bfacc347579a5df9fe947212fb99e2775a40c43f027c3a16936c58e7e
 F ext/rtree/rtree.h 834dbcb82dc85b2481cde6a07cdadfddc99e9b9e
 F ext/rtree/rtree1.test 42dadfc7b44a436cd74a1bebc0b9b689e4eaf7ec
 F ext/rtree/rtree2.test acbb3a4ce0f4fbc2c304d2b4b784cfa161856bba
@@ -1566,7 +1566,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
 F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
 F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
 F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
-P ef3a7c877a7549b351aafd983cfa96c863eb2641b6218bdd5cb563f659f879d8
-R 646761e50bb7679c40f23d2ddea8c902
+P 16a8e84fa7f67a467f824bdd7f72cbd6a6e95dab8cc7aa1e0e751720b98f3e31
+R 3866887b2e2a6895d2c139049fd577ac
 U dan
-Z f4376c790f10e78888f80aca2d0f09f6
+Z 940954dc69a4e0a1139a0110a41a8583
index c4f06f22c9ecc61034f3d4cd6c643026b39ef293..97c8d213487e45f720d1a9baa0ca68a1b2abbeb7 100644 (file)
@@ -1 +1 @@
-16a8e84fa7f67a467f824bdd7f72cbd6a6e95dab8cc7aa1e0e751720b98f3e31
\ No newline at end of file
+a144875fe44ff3a30bab299d50b7dbec2ee21f8c73e692a71ee1f7c54b5f0c76
\ No newline at end of file