From f568adc795e30b2e641f416bdceee0921c2183b4 Mon Sep 17 00:00:00 2001 From: zhengchao Date: Sat, 8 Jul 2017 19:42:30 +0800 Subject: [PATCH] =?UTF-8?q?=E6=97=A0=E5=88=9D=E5=A7=8B=E9=95=BF=E5=BA=A6?= =?UTF-8?q?=E7=9A=84=E6=96=87=E4=BB=B6=EF=BC=8C=E6=AF=8F=E6=AC=A1=E8=BE=93?= =?UTF-8?q?=E5=85=A5=E9=83=BD=E8=BF=9B=E8=A1=8C=E6=9F=A5=E8=AF=A2=E3=80=82?= =?UTF-8?q?=E4=BB=A5=E5=90=8E=E9=9C=80=E8=A6=81=E6=94=B9=E8=BF=9B=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/entry/Maat_api.cpp | 10 ++++++---- src/entry/gram_index_engine.c | 24 +++++++++--------------- 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/src/entry/Maat_api.cpp b/src/entry/Maat_api.cpp index e31fefb..f2dcc17 100644 --- a/src/entry/Maat_api.cpp +++ b/src/entry/Maat_api.cpp @@ -1543,6 +1543,11 @@ inline int REACH_QUERY_THRESH(unsigned long long total_len,unsigned long long ac // { // return 1; // } + //TODO use a more thorough strategy. + if(total_len==0) + { + return 1; + } if(rate>(unsigned long long)(point_size+QUERY_MIN_RATE)) { return 0; @@ -1578,10 +1583,7 @@ int Maat_stream_scan_digest(stream_para_t * stream_para, const char * data, int { clock_gettime(CLOCK_MONOTONIC,&start); } - if(sp->acc_scan_len+(unsigned long long)data_len > sp->total_len) - { - goto fast_out; - } + aligment_int64_array_add(sp->feather->thread_call_cnt, sp->thread_num, 1); pthread_mutex_lock(&(sp->fuzzy_mutex)); sp->acc_scan_len+=SFH_feed(sp->fuzzy_hash_handle, data, (unsigned int)data_len,offset); diff --git a/src/entry/gram_index_engine.c b/src/entry/gram_index_engine.c index a672a5f..ef4475d 100644 --- a/src/entry/gram_index_engine.c +++ b/src/entry/gram_index_engine.c @@ -1291,15 +1291,15 @@ int GIE_query(GIE_handle_t * handle, const char * data, int data_len, GIE_result if(_handle->ED_reexamine == 1) { - if(_handle->input_format == GIE_INPUT_FORMAT_SFH) - { - conf = GIE_comp_edit_distance(data, fuzzy_string_len, tmp_gram, length); - } - else - { - edit_distance = edit_distn(data, fuzzy_string_len,tmp_gram,length); - conf = 100-(edit_distance*100)/(fuzzy_string_len + length); - } + if(_handle->input_format == GIE_INPUT_FORMAT_SFH) + { + conf = GIE_comp_edit_distance(data, fuzzy_string_len, tmp_gram, length); + } + else + { + edit_distance = edit_distn(data, fuzzy_string_len,tmp_gram,length); + conf = 100-(edit_distance*100)/(fuzzy_string_len + length); + } } if(conf >= ret_tmp->cfds_lvl) @@ -1351,9 +1351,3 @@ unsigned long long GIE_status(GIE_handle_t * handle, int type) return length; } - - - - - -