From ecdcb977b143d57ae29ebd0e7f2727d8109fb9ed Mon Sep 17 00:00:00 2001 From: Thulinma Date: Tue, 11 Sep 2018 15:40:23 +0200 Subject: [PATCH 1/2] Updated sourcery to avoid trigraphs --- src/sourcery.cpp | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/sourcery.cpp b/src/sourcery.cpp index 4cf00b8c..27e34b25 100644 --- a/src/sourcery.cpp +++ b/src/sourcery.cpp @@ -16,6 +16,7 @@ int main(int argc, char* argv[]){ uint32_t i = 0; //Current line byte counter uint32_t total = 0; //Finished lines so far byte counter std::ifstream inFile(argv[1]); + bool sawQ = false; while (inFile.good()){ unsigned char thisChar = inFile.get(); if (!inFile.good()){break;} @@ -26,6 +27,11 @@ int main(int argc, char* argv[]){ case '\t': tmp << "\\t"; break; case '\\': tmp << "\\\\"; break; case '\"': tmp << "\\\""; break; + case '?': + if (sawQ){tmp << "\"\"";} + tmp << "?"; + sawQ = true; + break; default: if (thisChar < 32 || thisChar > 126){ //Convert to octal. @@ -33,6 +39,7 @@ int main(int argc, char* argv[]){ }else{ tmp << thisChar; } + sawQ = false; } ++i; // We print 80 bytes per line, regardless of special characters From c9dc42ff1814dc7867c610576f8f7e6f2e89a2bf Mon Sep 17 00:00:00 2001 From: Thulinma Date: Wed, 12 Sep 2018 14:00:59 +0200 Subject: [PATCH 2/2] Fixed support for gstreamer matroska streams --- lib/ebml.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/lib/ebml.cpp b/lib/ebml.cpp index c865f841..0670b6f1 100644 --- a/lib/ebml.cpp +++ b/lib/ebml.cpp @@ -509,7 +509,12 @@ namespace EBML{ return val; } - std::string Element::getValString() const{return std::string(getPayload(), getPayloadLen());} + std::string Element::getValString() const{ + uint64_t strLen = getPayloadLen(); + const char * strPtr = getPayload(); + while (strLen && strPtr[strLen-1] == 0){--strLen;} + return std::string(strPtr, strLen); + } uint64_t Block::getTrackNum() const{return UniInt::readInt(getPayload());}