summaryrefslogtreecommitdiff
path: root/src/KM_memio.h
diff options
context:
space:
mode:
authormikey <mikey@cinecert.com>2014-04-29 15:31:21 +0000
committermikey <>2014-04-29 15:31:21 +0000
commitdd03f3ae2c71df2c4eb89804293e621777a050cf (patch)
tree1e26fd0dab7c97aa82ce03f284ae449f0bb87b47 /src/KM_memio.h
parent5fae5df9b1cf2990b0383e1b633bdab4476a9669 (diff)
added a note about AS-02 support.
Diffstat (limited to 'src/KM_memio.h')
-rwxr-xr-xsrc/KM_memio.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/src/KM_memio.h b/src/KM_memio.h
index defea5e..caf4fc0 100755
--- a/src/KM_memio.h
+++ b/src/KM_memio.h
@@ -128,7 +128,7 @@ namespace Kumu
if ( ! WriteRaw((const byte_t*)str.c_str(), len) ) return false;
return true;
}
- };
+ };
//
class MemIOReader
@@ -217,11 +217,16 @@ namespace Kumu
inline bool ReadString(std::string& str)
{
- ui32_t str_length;
+ ui32_t str_length = 0;
if ( ! ReadUi32BE(&str_length) ) return false;
- if ( ( m_size + str_length ) > m_capacity ) return false;
- str.assign((const char*)CurrentData(), str_length);
- if ( ! SkipOffset(str_length) ) return false;
+
+ if ( str_length > 0 )
+ {
+ if ( ( m_size + str_length ) > m_capacity ) return false;
+ str.assign((const char*)CurrentData(), str_length);
+ if ( ! SkipOffset(str_length) ) return false;
+ }
+
return true;
}
};