diff options
Diffstat (limited to 'decoder/apply_models.cc')
-rw-r--r-- | decoder/apply_models.cc | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/decoder/apply_models.cc b/decoder/apply_models.cc index 78f37e68..4093f667 100644 --- a/decoder/apply_models.cc +++ b/decoder/apply_models.cc @@ -254,7 +254,8 @@ public: make_heap(cand.begin(), cand.end(), HeapCandCompare()); State2Node state2node; // "buf" in Figure 2 int pops = 0; - while(!cand.empty() && pops < pop_limit_) { + int pop_limit_eff=max(1,int(v.promise*pop_limit_)); + while(!cand.empty() && pops < pop_limit_eff) { pop_heap(cand.begin(), cand.end(), HeapCandCompare()); Candidate* item = cand.back(); cand.pop_back(); |