summary refs log tree commit diff stats
path: root/generator/generator.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'generator/generator.cpp')
-rw-r--r--generator/generator.cpp12
1 files changed, 9 insertions, 3 deletions
diff --git a/generator/generator.cpp b/generator/generator.cpp index 0d073be..ad665a2 100644 --- a/generator/generator.cpp +++ b/generator/generator.cpp
@@ -573,9 +573,15 @@ namespace verbly {
573 } 573 }
574 574
575 std::string phonemes = phoneme_data[2]; 575 std::string phonemes = phoneme_data[2];
576 pronunciations_.emplace_back(phonemes); 576 if (pronunciationByPhonemes_.count(phonemes)) {
577 pronunciation& p = pronunciations_.back(); 577 pronunciation& p = *pronunciationByPhonemes_[phonemes];
578 formByText_.at(canonical)->addPronunciation(p); 578 formByText_.at(canonical)->addPronunciation(p);
579 } else {
580 pronunciations_.emplace_back(phonemes);
581 pronunciation& p = pronunciations_.back();
582 pronunciationByPhonemes_[phonemes] = &p;
583 formByText_.at(canonical)->addPronunciation(p);
584 }
579 } 585 }
580 } 586 }
581 } 587 }