diff options
-rw-r--r-- | src/storage/chewing_large_table2_bdb.cpp | 3 | ||||
-rw-r--r-- | src/storage/flexible_ngram_bdb.h | 4 | ||||
-rw-r--r-- | src/storage/ngram_bdb.cpp | 4 | ||||
-rw-r--r-- | src/storage/phrase_large_table3_bdb.cpp | 4 |
4 files changed, 15 insertions, 0 deletions
diff --git a/src/storage/chewing_large_table2_bdb.cpp b/src/storage/chewing_large_table2_bdb.cpp index 6741ffd..9813b57 100644 --- a/src/storage/chewing_large_table2_bdb.cpp +++ b/src/storage/chewing_large_table2_bdb.cpp @@ -448,6 +448,9 @@ bool ChewingLargeTable2::mask_out(phrase_token_t mask, #undef CASE + /* Initialize our DBTs. */ + memset(&db_key, 0, sizeof(DBT)); + memset(&db_data, 0, sizeof(DBT)); } assert(ret == DB_NOTFOUND); diff --git a/src/storage/flexible_ngram_bdb.h b/src/storage/flexible_ngram_bdb.h index 786cb76..e526e69 100644 --- a/src/storage/flexible_ngram_bdb.h +++ b/src/storage/flexible_ngram_bdb.h @@ -270,6 +270,10 @@ public: } phrase_token_t * token = (phrase_token_t *) key.data; g_array_append_val(items, *token); + + /* Initialize our DBTs. */ + memset(&key, 0, sizeof(DBT)); + memset(&data, 0, sizeof(DBT)); } if ( ret != DB_NOTFOUND ){ diff --git a/src/storage/ngram_bdb.cpp b/src/storage/ngram_bdb.cpp index a13b431..95afdbd 100644 --- a/src/storage/ngram_bdb.cpp +++ b/src/storage/ngram_bdb.cpp @@ -199,6 +199,10 @@ bool Bigram::get_all_items(GArray * items){ assert(key.size == sizeof(phrase_token_t)); phrase_token_t * token = (phrase_token_t *)key.data; g_array_append_val(items, *token); + + /* Initialize our DBTs. */ + memset(&key, 0, sizeof(DBT)); + memset(&data, 0, sizeof(DBT)); } assert (ret == DB_NOTFOUND); diff --git a/src/storage/phrase_large_table3_bdb.cpp b/src/storage/phrase_large_table3_bdb.cpp index 03632ae..cb2847e 100644 --- a/src/storage/phrase_large_table3_bdb.cpp +++ b/src/storage/phrase_large_table3_bdb.cpp @@ -302,6 +302,10 @@ bool PhraseLargeTable3::mask_out(phrase_token_t mask, db_data.size = entry.m_chunk.size(); int ret = cursorp->put(cursorp, &db_key, &db_data, DB_CURRENT); assert(ret == 0); + + /* Initialize our DBTs. */ + memset(&db_key, 0, sizeof(DBT)); + memset(&db_data, 0, sizeof(DBT)); } assert(ret == DB_NOTFOUND); |