diff options
| author | Patrick Simianer <p@simianer.de> | 2013-01-21 12:29:43 +0100 | 
|---|---|---|
| committer | Patrick Simianer <p@simianer.de> | 2013-01-21 12:29:43 +0100 | 
| commit | 50f22047eb1b7f2d60e85cdcf0fcd86342e50523 (patch) | |
| tree | 730dabaf2fa57b1e4536d40f036b46795d37f289 /klm/lm/state.hh | |
| parent | 8b399cb09513cd79ed4182be9f75882c1e1b336a (diff) | |
| parent | 608886384da40aedfabd629c882b8ea9b3f6348e (diff) | |
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'klm/lm/state.hh')
| -rw-r--r-- | klm/lm/state.hh | 6 | 
1 files changed, 3 insertions, 3 deletions
| diff --git a/klm/lm/state.hh b/klm/lm/state.hh index 551510a8..d8e6c132 100644 --- a/klm/lm/state.hh +++ b/klm/lm/state.hh @@ -56,14 +56,14 @@ inline uint64_t hash_value(const State &state, uint64_t seed = 0) {  struct Left {    bool operator==(const Left &other) const {      return  -      (length == other.length) &&  -      pointers[length - 1] == other.pointers[length - 1] && -      full == other.full; +      length == other.length && +      (!length || (pointers[length - 1] == other.pointers[length - 1] && full == other.full));    }    int Compare(const Left &other) const {      if (length < other.length) return -1;      if (length > other.length) return 1; +    if (length == 0) return 0; // Must be full.      if (pointers[length - 1] > other.pointers[length - 1]) return 1;      if (pointers[length - 1] < other.pointers[length - 1]) return -1;      return (int)full - (int)other.full; | 
