diff --git a/src/book.cpp b/src/book.cpp index 316645ccf..55d38df48 100644 --- a/src/book.cpp +++ b/src/book.cpp @@ -117,11 +117,12 @@ void Book::updateFromXml(const pugi::xml_node& node, const std::string& baseDir) m_articleCount = strtoull(ATTR("articleCount"), 0, 0); m_mediaCount = strtoull(ATTR("mediaCount"), 0, 0); m_size = strtoull(ATTR("size"), 0, 0) << 10; - std::string favicon_mimetype = ATTR("faviconMimeType"); - if (! favicon_mimetype.empty()) { + const std::string faviconMimeType = ATTR("faviconMimeType"); + const std::string faviconBase64EncodedData = ATTR("favicon"); + if ( !faviconMimeType.empty() && !faviconBase64EncodedData.empty() ) { const auto favicon = std::make_shared(); - favicon->data = base64_decode(ATTR("favicon")); - favicon->mimeType = favicon_mimetype; + favicon->data = base64_decode(faviconBase64EncodedData); + favicon->mimeType = faviconMimeType; favicon->url = ATTR("faviconUrl"); m_illustrations.assign(1, favicon); } diff --git a/test/data/library.xml b/test/data/library.xml index 1f569f09e..7a2fcdf9c 100644 --- a/test/data/library.xml +++ b/test/data/library.xml @@ -32,6 +32,7 @@ articleCount="284" mediaCount="2" size="123" + faviconMimeType="image/png;favicon_attribute_is_absent" >