diff --git a/src/paramdict.cpp b/src/paramdict.cpp index 4704ea169e6..0bbfb467824 100644 --- a/src/paramdict.cpp +++ b/src/paramdict.cpp @@ -555,7 +555,15 @@ int ParamDict::load_param_bin(const DataReader& dr) tmpstr[len_padded] = '\0'; +#if NCNN_SIMPLESTL + // simple stl string has no tail zero by default, append one + d->params[id].s.resize(len + 1); + memcpy(d->params[id].s.data(), tmpstr.data(), len); + d->params[id].s[len] = '\0'; + d->params[id].s.resize(len); +#else d->params[id].s = tmpstr.data(); +#endif d->params[id].type = 7; }