summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorfalkTX <falktx@gmail.com>2018-11-08 22:13:50 +0100
committerfalkTX <falktx@gmail.com>2018-11-08 22:13:50 +0100
commit943eb1197ac20cd629ad76b2980364c9d1be4275 (patch)
tree99234b8527442ea6241a656ec59e850375d59346
parent3a25a6696311cc907b835af816d738b155ecf65f (diff)
Fix previous commit
Signed-off-by: falkTX <falktx@gmail.com>
-rw-r--r--distrho/src/DistrhoPluginVST.cpp13
1 files changed, 10 insertions, 3 deletions
diff --git a/distrho/src/DistrhoPluginVST.cpp b/distrho/src/DistrhoPluginVST.cpp
index ef814b1d..e7ac2e54 100644
--- a/distrho/src/DistrhoPluginVST.cpp
+++ b/distrho/src/DistrhoPluginVST.cpp
@@ -72,9 +72,16 @@ static const writeMidiFunc writeMidiCallback = nullptr;
void strncpy(char* const dst, const char* const src, const size_t size)
{
DISTRHO_SAFE_ASSERT_RETURN(size > 0,);
- if (const size_t len = std::strlen(src))
- std::memcpy(dst, src, std::min(len, size)-1);
- dst[size-1] = '\0';
+
+ if (const size_t len = std::min(std::strlen(src), size-1U))
+ {
+ std::memcpy(dst, src, len);
+ dst[len-1] = '\0';
+ }
+ else
+ {
+ dst[0] = '\0';
+ }
}
void snprintf_param(char* const dst, const float value, const size_t size)