diff options
| author | chenzizhan <[email protected]> | 2024-03-11 18:33:43 +0800 |
|---|---|---|
| committer | chenzizhan <[email protected]> | 2024-03-11 18:33:43 +0800 |
| commit | e1bacdcbc9996a213953669bc99b1499cfc48abf (patch) | |
| tree | 7c3f9568a0ab01827c4cd1540412e0688c45e5f4 | |
| parent | 03ad598949410a1d809c2a1ffd86387855c11099 (diff) | |
fix: forget to add cube when create cube in a used positionv4.4.11
| -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); } |
