diff options
| -rw-r--r-- | src/fieldstat.c | 3 | ||||
| -rw-r--r-- | test/test_register_and_reset.cpp | 1 |
2 files changed, 3 insertions, 1 deletions
diff --git a/src/fieldstat.c b/src/fieldstat.c index 6e37a36..5c8235c 100644 --- a/src/fieldstat.c +++ b/src/fieldstat.c @@ -229,7 +229,7 @@ void add_cube_to_position(struct fieldstat *instance, struct fs_cube *cube, int } instance->cube[cube_id] = cube; instance->cube_version[cube_id] = 0; - instance->valid_cube_arr_length++; + instance->valid_cube_arr_length = cube_id + 1; cube_manager_add(instance->shared_tag_cube_manager, cube->key_tag, cube_id); } @@ -239,6 +239,7 @@ int fieldstat_append_cube_to_instance(struct fieldstat *instance, struct fs_cube for (int i = 0; i < instance->valid_cube_arr_length; i++) { if (instance->cube[i] == NULL) { instance->cube[i] = cube; + cube_manager_add(instance->shared_tag_cube_manager, cube->key_tag, i); return i; } } diff --git a/test/test_register_and_reset.cpp b/test/test_register_and_reset.cpp index 63c6d11..820d070 100644 --- a/test/test_register_and_reset.cpp +++ b/test/test_register_and_reset.cpp @@ -48,6 +48,7 @@ TEST(test_register, delete_cube_and_register_and_origin_position) fieldstat_destroy_cube(instance, cube_id); cube_id = fieldstat_create_cube(instance, &TEST_SHARED_TAG, 1, SAMPLING_MODE_COMPREHENSIVE, 10); EXPECT_EQ(cube_id, 0); + EXPECT_EQ(fieldstat_find_cube(instance, &TEST_SHARED_TAG, 1) , 0); fieldstat_free(instance); } |
