]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
tests: Fix try_parse() tests to not compare to already free'd memory
authorRico Tzschichholz <ricotz@ubuntu.com>
Fri, 4 Jan 2019 19:02:18 +0000 (20:02 +0100)
committerRico Tzschichholz <ricotz@ubuntu.com>
Thu, 10 Jan 2019 20:54:25 +0000 (21:54 +0100)
Found with valgrind

tests/basic-types/integers.vala

index 90618351d5fa40d772f9fa6931ecd796b4642d67..1500ab26649b8cf84e833a396c50464ad0bfa0c5 100644 (file)
@@ -91,17 +91,21 @@ void test_int () {
        assert (s == "42");
 
        unowned string unparsed;
+       s = "%lim".printf (long.MIN);
        long l;
-       long.try_parse ("%lim".printf (long.MIN), out l, out unparsed);
+       long.try_parse (s, out l, out unparsed);
        assert (l == long.MIN);
        assert (unparsed == "m");
-       assert (!long.try_parse ("%lum".printf (ulong.MAX), out l));
+       s = "%lum".printf (ulong.MAX);
+       assert (!long.try_parse (s, out l));
 
+       s = "%lum".printf (ulong.MAX);
        ulong ul;
-       ulong.try_parse ("%lum".printf (ulong.MAX), out ul, out unparsed);
+       ulong.try_parse (s, out ul, out unparsed);
        assert (ul == ulong.MAX);
        assert (unparsed == "m");
-       assert (!ulong.try_parse ("%lim".printf (long.MIN), out ul));
+       s = "%lim".printf (long.MIN);
+       assert (!ulong.try_parse (s, out ul));
 
        int64 i64;
        int64.try_parse ("-4711inch", out i64, out unparsed);