From 1b440a55d325adf66dbc3363215eac8ab96f612c Mon Sep 17 00:00:00 2001
From: Terraneo Federico <fede.tft@miosix.org>
Date: Sun, 6 May 2018 23:43:51 +0200
Subject: [PATCH] Fix unserializeUnknown not returning the correct error code

---
 tscpp.cpp | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/tscpp.cpp b/tscpp.cpp
index 934ed80..28fbd93 100644
--- a/tscpp.cpp
+++ b/tscpp.cpp
@@ -97,7 +97,9 @@ int unserializeUnknown(const TypePool& tp, const void *buffer, int bufSize)
     const char *name=buf;
     buf+=nameSize+1;
     bufSize-=nameSize+1;
-    return tp.unserializeUnknownImpl(name,buf,bufSize)+nameSize+1;
+    auto result=tp.unserializeUnknownImpl(name,buf,bufSize);
+    if(result<0) return result;
+    return result+nameSize+1;
 }
 
 string peekTypeName(const void *buffer, int bufSize)
-- 
GitLab