From 4c904262b51a4ffad47b56784c4e55bb94cbe274 Mon Sep 17 00:00:00 2001 From: Julien Rioux Date: Tue, 8 Jan 2013 16:24:11 +0100 Subject: [PATCH] Fix cache for getInfo() with/without richtext (fixes #8486). --- src/BiblioInfo.cpp | 11 +++++++++-- src/BiblioInfo.h | 2 ++ status.20x | 2 ++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/src/BiblioInfo.cpp b/src/BiblioInfo.cpp index 0df795e506..516d1b4670 100644 --- a/src/BiblioInfo.cpp +++ b/src/BiblioInfo.cpp @@ -524,8 +524,10 @@ docstring BibTeXInfo::expandFormat(string const & format, docstring const & BibTeXInfo::getInfo(BibTeXInfo const * const xref, Buffer const & buf, bool richtext) const { - if (!info_.empty()) + if (!richtext && !info_.empty()) return info_; + if (richtext && !info_richtext_.empty()) + return info_richtext_; if (!is_bibtex_) { BibTeXInfo::const_iterator it = find(from_ascii("ref")); @@ -536,10 +538,15 @@ docstring const & BibTeXInfo::getInfo(BibTeXInfo const * const xref, DocumentClass const & dc = buf.params().documentClass(); string const & format = dc.getCiteFormat(to_utf8(entry_type_)); int counter = 0; - info_ = expandFormat(format, xref, counter, buf, richtext); + info_ = expandFormat(format, xref, counter, buf, false); + info_richtext_ = expandFormat(format, xref, counter, buf, true); if (!info_.empty()) info_ = convertLaTeXCommands(info_); + if (!info_richtext_.empty()) + info_richtext_ = convertLaTeXCommands(info_richtext_); + if (richtext) + return info_richtext_; return info_; } diff --git a/src/BiblioInfo.h b/src/BiblioInfo.h index efe4bff233..acfc0222df 100644 --- a/src/BiblioInfo.h +++ b/src/BiblioInfo.h @@ -138,6 +138,8 @@ private: docstring entry_type_; /// a cache for getInfo() mutable docstring info_; + /// a cache for getInfo(richtext = true) + mutable docstring info_richtext_; /// docstring cite_number_; /// diff --git a/status.20x b/status.20x index d612849bfd..db7e4ffc2b 100644 --- a/status.20x +++ b/status.20x @@ -92,6 +92,8 @@ What's new - In order to avoid NFSS problems with certain font packages, load the needed font encodings when inserting cyrillic and/or greek characters (bug 8467). +- Fix the output of LyXHTML bibliography with richtext (bug 8486). + * USER INTERFACE -- 2.39.5