Sync changes from upstream repository

Co-authored-by: croudyj <croudyj@gmail.com>
Co-authored-by: Dale Fugier <dale@mcneel.com>
Co-authored-by: Dan Rigdon-Bel <dan@mcneel.com>
Co-authored-by: kike-garbo <kike@mcneel.com>
Co-authored-by: piac <giulio@mcneel.com>
Co-authored-by: Pierre Cuvilliers <pierre@mcneel.com>
This commit is contained in:
Bozo The Builder
2022-08-12 10:22:45 -07:00
parent e68e534842
commit 679770e15c
29 changed files with 608 additions and 294 deletions

View File

@@ -1252,8 +1252,20 @@ void ON_wString::Append( const wchar_t* s, int count )
const ON_wString& ON_wString::operator+=(const ON_wString& s)
{
AppendToArray(s);
return *this;
// 28th July 2022 John Croudy, https://mcneel.myjetbrains.com/youtrack/issue/RH-69587
// When the strings are the same object AppendToArray() doesn't work properly. The safest
// thing to do is copy the incoming string so they are not the same object anymore.
if (this == &s)
{
ON_wString copy = s;
AppendToArray(copy);
}
else
{
AppendToArray(s);
}
return *this;
}
const ON_wString& ON_wString::operator+=(const ON_String& s)