summaryrefslogtreecommitdiff
path: root/decoder/apply_models.cc
diff options
context:
space:
mode:
Diffstat (limited to 'decoder/apply_models.cc')
-rw-r--r--decoder/apply_models.cc3
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();