- Fix runtime core

- Fix minor nit in tqsl.cpp with use of WxString

Reported by:	Thomas Laus <lausts@acm.org>
This commit is contained in:
Diane Bruce 2014-02-02 02:16:37 +00:00
parent 0e5c4bcaa3
commit b6979dc6f2
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=342230
4 changed files with 68 additions and 15 deletions

View File

@ -2,7 +2,7 @@
PORTNAME= trustedqsl
PORTVERSION= 2.0
PORTREVISION= 1
PORTREVISION= 2
CATEGORIES= comms hamradio
MASTER_SITES= SF/${PORTNAME}/TrustedQSL/v${PORTVERSION}/
DISTNAME= tqsl-${PORTVERSION}
@ -16,11 +16,10 @@ LICENSE= BSD
LIB_DEPENDS= libdb-5.so:${PORTSDIR}/databases/db5 \
libcurl.so:${PORTSDIR}/ftp/curl
CXXFLAGS +=-std=gnu++0x
PKGMESSAGE= ${WRKDIR}/pkg-message
USES= compiler:c++11-lib cmake pkgconfig
USES= cmake pkgconfig
USES= compiler:features cmake pkgconfig
USE_WX= 2.8+
WX_UNICODE= yes
USE_LDCONFIG= yes

View File

@ -1,5 +1,5 @@
--- apps/tqsl.cpp.orig 2013-12-12 15:52:46.737002435 -0500
+++ apps/tqsl.cpp 2013-12-12 15:52:12.740004212 -0500
--- apps/tqsl.cpp.orig 2013-10-20 20:33:20.000000000 -0400
+++ apps/tqsl.cpp 2014-01-26 10:20:28.036914222 -0500
@@ -71,7 +71,7 @@
#endif
#include <zlib.h>
@ -9,6 +9,15 @@
#include "tqslwiz.h"
#include "qsodatadialog.h"
#include "tqslerrno.h"
@@ -1862,7 +1862,7 @@
return TQSL_EXIT_LIB_ERROR;
}
} else {
- out<<output;
+ out<<output.mb_str();
if (out.fail()) {
tqsl_converterRollBack(conv);
tqsl_endConverter(&conv);
@@ -2016,7 +2016,7 @@
} else {
//compress the upload

View File

@ -0,0 +1,36 @@
--- src/xml.cpp.orig 2013-10-20 20:33:20.000000000 -0400
+++ src/xml.cpp 2014-02-01 20:30:26.874285772 -0500
@@ -17,6 +17,33 @@
using namespace std;
namespace tqsllib {
+static XMLElementList::iterator _iter;
+
+bool
+XMLElement::getFirstElement(XMLElement& element) {
+ _iterByName = false;
+ _iter = _elements.begin();
+ return getNextElement(element);
+}
+
+bool
+XMLElement::getFirstElement(const std::string& name, XMLElement& element) {
+ _iterName = name;
+ _iterByName = true;
+ _iter = _elements.find(_iterName);
+ return getNextElement(element);
+}
+
+bool
+XMLElement::getNextElement(XMLElement& element) {
+ if (_iter == _elements.end())
+ return false;
+ if (_iterByName && _iter->second.getElementName() != _iterName)
+ return false;
+ element = _iter->second;
+ ++_iter;
+ return true;
+}
pair<string,bool>
XMLElement::getAttribute(const string& key) {

View File

@ -1,6 +1,6 @@
--- src/xml.h.orig 2013-12-12 13:03:46.814700681 -0500
+++ src/xml.h 2013-12-12 13:04:09.019718129 -0500
@@ -108,12 +108,13 @@
--- src/xml.h.orig 2013-10-20 20:33:20.000000000 -0400
+++ src/xml.h 2014-02-01 20:20:55.798824124 -0500
@@ -108,7 +108,6 @@
XMLElementAttributeList _attributes;
XMLElementList _elements;
std::vector<XMLElementList::iterator> _parsingStack;
@ -8,10 +8,19 @@
bool _iterByName;
std::string _iterName;
XMLElementAttributeList::iterator _aiter;
};
@@ -132,6 +131,7 @@
return it;
}
+static XMLElementList::iterator _iter;
+
inline void XMLElement::clear() {
_name = _text = _pretext = _iterName = "";
_attributes.clear();
+#if 0
inline bool
XMLElement::getFirstElement(XMLElement& element) {
_iterByName = false;
@@ -157,6 +157,7 @@
++_iter;
return true;
}
+#endif
inline bool
XMLElement::getFirstAttribute(std::string& key, std::string& attr) {