Changeset: 5eca89f26310 for MonetDB
URL: http://dev.monetdb.org/hg/MonetDB?cmd=changeset;node=5eca89f26310
Modified Files:
        sql/server/sql_parser.y
Branch: Dec2016
Log Message:

Don't shift with a negative amount or with too many places.


diffs (20 lines):

diff --git a/sql/server/sql_parser.y b/sql/server/sql_parser.y
--- a/sql/server/sql_parser.y
+++ b/sql/server/sql_parser.y
@@ -4387,10 +4387,12 @@ literal:
                  if (!err) {
                    int bits = digits2bits(digits), obits = bits;
 
-                   for (;(one<<(bits-1)) > value; bits--)
-                           ;
-                  
-                   if (bits != obits && 
+                   while (bits > 0 &&
+                          (bits == sizeof(value) * 8 ||
+                           (one << (bits - 1)) > value))
+                         bits--;
+
+                   if (bits != obits &&
                       (bits == 8 || bits == 16 || bits == 32 || bits == 64))
                                bits++;
                
_______________________________________________
checkin-list mailing list
checkin-list@monetdb.org
https://www.monetdb.org/mailman/listinfo/checkin-list

Reply via email to