summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorzhengchao <[email protected]>2020-07-07 17:57:11 +0800
committerzhengchao <[email protected]>2020-07-07 17:57:11 +0800
commit121cfea4fc8ae6fdd63d87fddd2c29c43381f1e5 (patch)
tree66c30c47bf33a8276839331e5793ecbdac1c5c10
parent2962c6c90a2d0d98f8964724f4658f836774e88b (diff)
fix #23 Maat_plugin_exdata的回调使用以'\0'结尾的key。
-rw-r--r--src/entry/Maat_ex_data.cpp7
-rw-r--r--src/entry/Maat_rule.cpp2
-rw-r--r--src/inc_internal/Maat_rule_internal.h4
3 files changed, 7 insertions, 6 deletions
diff --git a/src/entry/Maat_ex_data.cpp b/src/entry/Maat_ex_data.cpp
index e78acea..7cf2a77 100644
--- a/src/entry/Maat_ex_data.cpp
+++ b/src/entry/Maat_ex_data.cpp
@@ -135,13 +135,14 @@ int EX_data_rt_row2EX_data(struct EX_data_rt* ex_rt,
return -1;
}
ex_container=ALLOC(struct EX_data_container, 1);
- ex_schema->new_func(ex_rt->table_id, key, row, &ex_data,
+ ex_container->key=ALLOC(char, key_len+1);
+ memcpy(ex_container->key, key, key_len);
+ ex_schema->new_func(ex_rt->table_id, ex_container->key, row, &ex_data,
ex_schema->argl, ex_schema->argp);
ex_container->ex_data=ex_data;
ex_container->rt=ex_rt;
ex_container->user_data=user_data;
- ex_container->key=ALLOC(char, key_len);
- memcpy(ex_container->key, key, key_len);
+
ex_container->key_len=key_len;
HASH_ADD_KEYPTR(hh, ex_rt->hash_key2ex, ex_container->key, ex_container->key_len, ex_container);
return 0;
diff --git a/src/entry/Maat_rule.cpp b/src/entry/Maat_rule.cpp
index ad029f1..fac6b42 100644
--- a/src/entry/Maat_rule.cpp
+++ b/src/entry/Maat_rule.cpp
@@ -34,7 +34,7 @@
#include "stream_fuzzy_hash.h"
#include "gram_index_engine.h"
-int MAAT_FRAME_VERSION_3_0_20200706=1;
+int MAAT_FRAME_VERSION_3_0_20200707=1;
int is_valid_table_name(const char* str)
{
diff --git a/src/inc_internal/Maat_rule_internal.h b/src/inc_internal/Maat_rule_internal.h
index df61050..d151fc8 100644
--- a/src/inc_internal/Maat_rule_internal.h
+++ b/src/inc_internal/Maat_rule_internal.h
@@ -147,8 +147,8 @@ struct Maat_region_inner
int district_id;
int table_id;
int expr_id_cnt;
- int expr_id_lb;
- int expr_id_ub;
+ int expr_id_lb; //low boundary
+ int expr_id_ub; //up boundary
enum MAAT_TABLE_TYPE table_type;
};