#include "common/assert.h"
#include "common/common.h"
#include <glib.h>
+#include <stdbool.h>
#include <stdint.h>
#include <string.h>
#include <inttypes.h>
static
struct field_class_stack_frame *field_class_stack_peek(field_class_stack *stack)
{
- struct field_class_stack_frame *entry = NULL;
+ BT_ASSERT(stack);
+ BT_ASSERT(!field_class_stack_empty(stack));
- if (!stack || field_class_stack_empty(stack)) {
- goto end;
- }
-
- entry = g_ptr_array_index(stack, stack->len - 1);
-end:
- return entry;
+ return g_ptr_array_index(stack, stack->len - 1);
}
/*
struct field_class_stack_frame *field_class_stack_at(field_class_stack *stack,
size_t index)
{
- struct field_class_stack_frame *entry = NULL;
-
- if (!stack || index >= stack->len) {
- goto end;
- }
-
- entry = g_ptr_array_index(stack, index);
+ BT_ASSERT(stack);
+ BT_ASSERT(index < stack->len);
-end:
- return entry;
+ return g_ptr_array_index(stack, index);
}
/*
struct resolve_context *ctx)
{
enum ctf_scope scope;
- enum ctf_scope ret = -1;
+ enum ctf_scope ret = CTF_SCOPE_PACKET_UNKNOWN;
const size_t prefixes_count = sizeof(absolute_path_prefixes) /
sizeof(*absolute_path_prefixes);
for (scope = CTF_SCOPE_PACKET_HEADER; scope < CTF_SCOPE_PACKET_HEADER +
prefixes_count; scope++) {
/*
- * Chech if path string starts with a known absolute
+ * Check if path string starts with a known absolute
* path prefix.
*
* Refer to CTF 7.3.2 STATIC AND DYNAMIC SCOPES.
/* Absolute or relative path? */
root_scope = get_root_scope_from_absolute_pathstr(pathstr, ctx);
- if (root_scope == -1) {
+ if (root_scope == CTF_SCOPE_PACKET_UNKNOWN) {
/* Relative path: start with current root scope */
field_path->root = ctx->root_scope;
BT_COMP_LOGD("Detected relative path: starting with current root scope: "
* Returns the index of the lowest common ancestor of two field path
* objects having the same root scope.
*/
+static
int64_t get_field_paths_lca_index(struct ctf_field_path *field_path1,
struct ctf_field_path *field_path2,
struct resolve_context *ctx)