From 3c0943126b33db72a3fd66b9efc9109be38cd51f Mon Sep 17 00:00:00 2001 From: Gregory Hellings Date: Sun, 26 Apr 2020 00:48:43 -0500 Subject: [PATCH] Add patch to fix divs --- sword-1.8.1-fix-divs.diff | 75 +++++++++++++++++++++++++++++++++++++++ sword.spec | 8 ++++- 2 files changed, 82 insertions(+), 1 deletion(-) create mode 100644 sword-1.8.1-fix-divs.diff diff --git a/sword-1.8.1-fix-divs.diff b/sword-1.8.1-fix-divs.diff new file mode 100644 index 0000000..d141c2e --- /dev/null +++ b/sword-1.8.1-fix-divs.diff @@ -0,0 +1,75 @@ +Index: trunk/src/mgr/stringmgr.cpp +=================================================================== +--- trunk/src/mgr/stringmgr.cpp (revision 3718) ++++ trunk/src/mgr/stringmgr.cpp (revision 3721) +@@ -20,6 +20,7 @@ + * + */ + ++#include + #include + #include + #include +Index: trunk/src/modules/filters/osisxhtml.cpp +=================================================================== +--- trunk/src/modules/filters/osisxhtml.cpp (revision 3718) ++++ trunk/src/modules/filters/osisxhtml.cpp (revision 3721) +@@ -849,7 +849,11 @@ + else if (tag.isEndTag()) { + outText("", buf, u); + } +- else if (!(type == "colophon")) outText(tag, buf, u); ++ else if (!(type == "colophon")) { ++ if (tag.getAttribute("sID")) tag.setEmpty(false); ++ if (tag.getAttribute("eID")) tag.setEndTag(true); ++ outText(tag, buf, u); ++ } + + } + else if (!strcmp(tag.getName(), "span")) { +Index: trunk/src/utilfuns/utilxml.cpp +=================================================================== +--- trunk/src/utilfuns/utilxml.cpp (revision 3718) ++++ trunk/src/utilfuns/utilxml.cpp (revision 3721) +@@ -291,13 +291,16 @@ + tag.append('/'); + + tag.append(getName()); +- for (StringPairMap::iterator it = attributes.begin(); it != attributes.end(); it++) { +- //tag.appendFormatted(" %s=\"%s\"", it->first.c_str(), it->second.c_str()); +- tag.append(' '); +- tag.append(it->first.c_str()); +- tag.append((strchr(it->second.c_str(), '\"')) ? "=\'" : "=\""); +- tag.append(it->second.c_str()); +- tag.append((strchr(it->second.c_str(), '\"'))? '\'' : '\"'); ++ ++ if (!isEndTag()) { ++ for (StringPairMap::iterator it = attributes.begin(); it != attributes.end(); it++) { ++ //tag.appendFormatted(" %s=\"%s\"", it->first.c_str(), it->second.c_str()); ++ tag.append(' '); ++ tag.append(it->first.c_str()); ++ tag.append((strchr(it->second.c_str(), '\"')) ? "=\'" : "=\""); ++ tag.append(it->second.c_str()); ++ tag.append((strchr(it->second.c_str(), '\"'))? '\'' : '\"'); ++ } + } + + if (isEmpty()) +Index: trunk/include/utilxml.h +=================================================================== +--- trunk/include/utilxml.h (revision 3718) ++++ trunk/include/utilxml.h (revision 3721) +@@ -75,6 +75,13 @@ + * otherwise, we return if we're a simple XML end . + */ + bool isEndTag(const char *eID = 0) const; ++ inline void setEndTag(bool value) { ++ if (!parsed) ++ parse(); ++ endTag = value; ++ if (value) ++ empty = false; ++ } + + const StringList getAttributeNames() const; + int getAttributePartCount(const char *attribName, char partSplit = '|') const; diff --git a/sword.spec b/sword.spec index 57dfd41..ac72493 100644 --- a/sword.spec +++ b/sword.spec @@ -2,7 +2,7 @@ Name: sword Version: 1.8.1 -Release: 15%{?dist} +Release: 19%{?dist} Summary: Free Bible Software Project License: GPLv2 URL: http://www.crosswire.org/sword/ @@ -12,6 +12,8 @@ Patch1: sword-1.8.1-icu61.diff Patch2: sword-1.8.1-swig.diff Patch3: sword-1.8.1-swig-perl.diff Patch4: sword-1.8.1-integer-types.diff +# svn diff -r3718:3721 +Patch5: sword-1.8.1-fix-divs.diff BuildRequires: cmake BuildRequires: cmake-data BuildRequires: openssl-devel @@ -86,6 +88,7 @@ Perl bindings for The SWORD Library. %patch2 -p1 %patch3 -p1 %patch4 -p1 +%patch5 -p1 %build mkdir build @@ -159,6 +162,9 @@ make tests %changelog +* Sun Apr 26 2020 Greg Hellings - 1.8.1-19 +- Added patch to fix upstream markup bug + * Mon Aug 19 2019 Jaak Ristioja - 1.8.1-15 - Fixed conflicting integer types being defined