summaryrefslogtreecommitdiffstats
path: root/src/storage/phrase_index.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/storage/phrase_index.cpp')
-rw-r--r--src/storage/phrase_index.cpp16
1 files changed, 10 insertions, 6 deletions
diff --git a/src/storage/phrase_index.cpp b/src/storage/phrase_index.cpp
index 5f468b3..930d606 100644
--- a/src/storage/phrase_index.cpp
+++ b/src/storage/phrase_index.cpp
@@ -519,14 +519,18 @@ bool FacadePhraseIndex::load_text(guint8 phrase_index, FILE * infile){
char phrase[256];
phrase_token_t token;
size_t freq;
+
PhraseItem * item_ptr = new PhraseItem;
phrase_token_t cur_token = 0;
- while ( !feof(infile)){
- fscanf(infile, "%s", pinyin);
- fscanf(infile, "%s", phrase);
- fscanf(infile, "%u", &token);
- fscanf(infile, "%ld", &freq);
- if ( feof(infile) )
+
+ while (!feof(infile)){
+ int num = fscanf(infile, "%s %s %u %ld",
+ pinyin, phrase, &token, &freq);
+
+ if (4 != num)
+ continue;
+
+ if (feof(infile))
break;
assert(PHRASE_INDEX_LIBRARY_INDEX(token) == phrase_index );