Fix array-bounds compiler warnings with GCC 12

GCC isn't smart enough to recognise that the assertion on the size of
N_PROPERTIES also affects the assertion on the GParamSpec array access,
so we need to coalesce the two checks into one to avoid an array-bounds
compiler warning.

(cherry-picked from commit 903c004b37d723972b07ecbdd880ae0d2c8b767d)
This commit is contained in:
Emmanuele Bassi 2022-09-02 12:46:57 +01:00 committed by Marco Trevisan (Treviño)
parent df1e7dc5db
commit 8fb03af05d

View File

@ -104,8 +104,7 @@ test_object_set_property (GObject *gobject,
TestObject *tobj = (TestObject *) gobject; TestObject *tobj = (TestObject *) gobject;
g_assert_cmpint (prop_id, !=, 0); g_assert_cmpint (prop_id, !=, 0);
g_assert_cmpint (prop_id, !=, N_PROPERTIES); g_assert_true (prop_id < N_PROPERTIES && pspec == properties[prop_id]);
g_assert (pspec == properties[prop_id]);
switch (prop_id) switch (prop_id)
{ {
@ -139,8 +138,7 @@ test_object_get_property (GObject *gobject,
TestObject *tobj = (TestObject *) gobject; TestObject *tobj = (TestObject *) gobject;
g_assert_cmpint (prop_id, !=, 0); g_assert_cmpint (prop_id, !=, 0);
g_assert_cmpint (prop_id, !=, N_PROPERTIES); g_assert_true (prop_id < N_PROPERTIES && pspec == properties[prop_id]);
g_assert (pspec == properties[prop_id]);
switch (prop_id) switch (prop_id)
{ {