Fix: overflow of signed integer results in undefined behaviour
[babeltrace.git] / formats / ctf / writer / event-fields.c
index c49bc3fa6dc1bca5b325b1be872480c9e68a1487..1ffbd4a350b53741b00523f4f392fbc2934872c7 100644 (file)
@@ -524,8 +524,8 @@ int bt_ctf_field_signed_integer_set_value(struct bt_ctf_field *field,
        }
 
        size = integer_type->declaration.len;
-       min_value = -((int64_t)1 << (size - 1));
-       max_value = ((int64_t)1 << (size - 1)) - 1;
+       min_value = -(1ULL << (size - 1));
+       max_value = (1ULL << (size - 1)) - 1;
        if (value < min_value || value > max_value) {
                ret = -1;
                goto end;
This page took 0.023126 seconds and 4 git commands to generate.