From 5a764fff042cd21756681bd08fe3afc172e3e070 Mon Sep 17 00:00:00 2001 From: Kim Kulling Date: Mon, 18 Jan 2021 19:44:10 +0100 Subject: [PATCH] Fix overflow in aiString --- include/assimp/types.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/include/assimp/types.h b/include/assimp/types.h index 74763d496..0e50ed0ae 100644 --- a/include/assimp/types.h +++ b/include/assimp/types.h @@ -307,7 +307,7 @@ struct aiString { void Set(const char *sz) { const ai_int32 len = (ai_uint32)::strlen(sz); if (len > (ai_int32)MAXLEN - 1) { - return; + len = (ai_int32) MAXLEN - 1; } length = len; memcpy(data, sz, len); @@ -321,7 +321,10 @@ struct aiString { } length = rOther.length; - ; + if (length >(MAXLEN - 1)) { + length = (ai_int32) MAXLEN - 1; + } + memcpy(data, rOther.data, length); data[length] = '\0'; return *this;