X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=types%2Fenum.c;h=6ad4d45038eabf37da04b05944b290d3bff983fe;hp=daf135076e00f1684dcb47bba611affc57cbbfc2;hb=fdacfb7382aad4a19dc48f8a0d830ae5b8597498;hpb=47e0f2e23aef98a584bf964754ab1e29c2897cfb diff --git a/types/enum.c b/types/enum.c index daf13507..6ad4d450 100644 --- a/types/enum.c +++ b/types/enum.c @@ -62,8 +62,10 @@ GArray *enum_uint_to_quark_set(const struct type_class_enum *enum_class, g_array_index(ranges, struct enum_range, ranges->len) = iter->range; } } - if (!ranges) + if (!ranges) { ranges = qs; + g_array_ref(ranges); + } return ranges; } @@ -101,8 +103,10 @@ GArray *enum_int_to_quark_set(const struct type_class_enum *enum_class, uint64_t g_array_index(ranges, struct enum_range, ranges->len) = iter->range; } } - if (!ranges) + if (!ranges) { ranges = qs; + g_array_ref(ranges); + } return ranges; } @@ -202,7 +206,7 @@ void enum_signed_insert_value_to_quark_set(struct type_class_enum *enum_class, g_array_set_size(array, 1); g_array_index(array, GQuark, array->len - 1) = q; g_hash_table_insert(enum_class->table.value_to_quark_set, - (gconstpointer) v, array); + (gpointer) v, array); } else { g_array_set_size(array, array->len + 1); g_array_index(array, GQuark, array->len - 1) = q; @@ -222,7 +226,7 @@ void enum_unsigned_insert_value_to_quark_set(struct type_class_enum *enum_class, g_array_set_size(array, 1); g_array_index(array, GQuark, array->len - 1) = q; g_hash_table_insert(enum_class->table.value_to_quark_set, - (gconstpointer) v, array); + (gpointer) v, array); } else { g_array_set_size(array, array->len + 1); g_array_index(array, GQuark, array->len - 1) = q;