X-Git-Url: http://git.efficios.com/?p=babeltrace.git;a=blobdiff_plain;f=types%2Ftypes.c;h=3ffe7e2f1b83d0e92efb5d2796f15406ccaf9b98;hp=3b48d83abe0da025479690079d5a2a96cdd916eb;hb=08c82b90d94a6dfee1f3da4ec06864c6045c07f7;hpb=7d11cac68520597dfe2cbb67f17a1340d41fc0d9 diff --git a/types/types.c b/types/types.c index 3b48d83a..3ffe7e2f 100644 --- a/types/types.c +++ b/types/types.c @@ -5,7 +5,9 @@ * * Types registry. * - * Copyright 2010, 2011 - Mathieu Desnoyers + * Copyright 2010-2011 EfficiOS Inc. and Linux Foundation + * + * Author: Mathieu Desnoyers * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal @@ -19,7 +21,8 @@ */ #include -#include +#include +#include #include #include #include @@ -29,10 +32,13 @@ GQuark prefix_quark(const char *prefix, GQuark quark) { GQuark nq; GString *str; + char *quark_str; str = g_string_new(prefix); g_string_append(str, g_quark_to_string(quark)); - nq = g_quark_from_string(g_string_free(str, FALSE)); + quark_str = g_string_free(str, FALSE); + nq = g_quark_from_string(quark_str); + g_free(quark_str); return nq; } @@ -111,10 +117,10 @@ static int compare_paths(GArray *a, GArray *b, int len) static int is_path_child_of(GArray *path, GArray *maybe_parent) { - int i, ret; + int ret; if (babeltrace_debug) { - int need_dot = 0; + int i, need_dot = 0; printf_debug("Is path \""); for (i = 0; i < path->len; need_dot = 1, i++) @@ -144,7 +150,7 @@ end: } static struct definition_scope * - get_definition_scope(struct definition *definition) + get_definition_scope(const struct definition *definition) { return definition->scope; } @@ -491,7 +497,6 @@ GQuark new_definition_path(struct definition_scope *parent_scope, GQuark path; GString *str; gchar *c_str; - int i; int need_dot = 0; str = g_string_new(""); @@ -499,6 +504,8 @@ GQuark new_definition_path(struct definition_scope *parent_scope, g_string_append(str, root_name); need_dot = 1; } else if (parent_scope) { + int i; + for (i = 0; i < parent_scope->scope_path->len; i++) { GQuark q = g_array_index(parent_scope->scope_path, GQuark, i); @@ -597,8 +604,7 @@ void free_definition_scope(struct definition_scope *scope) g_free(scope); } -static -struct definition *lookup_definition(struct definition *definition, +struct definition *lookup_definition(const struct definition *definition, const char *field_name) { struct definition_scope *scope = get_definition_scope(definition); @@ -610,7 +616,7 @@ struct definition *lookup_definition(struct definition *definition, scope); } -struct definition_integer *lookup_integer(struct definition *definition, +struct definition_integer *lookup_integer(const struct definition *definition, const char *field_name, int signedness) { @@ -628,7 +634,7 @@ struct definition_integer *lookup_integer(struct definition *definition, return lookup_integer; } -struct definition_enum *lookup_enum(struct definition *definition, +struct definition_enum *lookup_enum(const struct definition *definition, const char *field_name, int signedness) { @@ -646,7 +652,7 @@ struct definition_enum *lookup_enum(struct definition *definition, return lookup_enum; } -struct definition *lookup_variant(struct definition *definition, +struct definition *lookup_variant(const struct definition *definition, const char *field_name) { struct definition *lookup;