From 3f4c4e7afe6075b18f99c67cf808e2300b3690c4 Mon Sep 17 00:00:00 2001 From: Brad King Date: Thu, 22 Aug 2019 10:56:55 -0400 Subject: cmVSSetupHelper: Fix SmartBSTR copy operations Fix the SmartBSTR copy constructor and copy assignment operator added by commit 18c8278b62 (VS: Add helper class to interact with Visual Studio Installer, 2016-12-14, v3.8.0-rc1~93^2~4) to use the string from the source of the copy. Issue: #19610 --- Source/cmVSSetupHelper.h | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Source/cmVSSetupHelper.h b/Source/cmVSSetupHelper.h index 1bda54a..9382c05 100644 --- a/Source/cmVSSetupHelper.h +++ b/Source/cmVSSetupHelper.h @@ -77,7 +77,8 @@ public: SmartBSTR(const SmartBSTR& src) { if (src.str != NULL) { - str = ::SysAllocStringByteLen((char*)str, ::SysStringByteLen(str)); + str = + ::SysAllocStringByteLen((char*)src.str, ::SysStringByteLen(src.str)); } else { str = ::SysAllocStringByteLen(NULL, 0); } @@ -87,7 +88,8 @@ public: if (str != src.str) { ::SysFreeString(str); if (src.str != NULL) { - str = ::SysAllocStringByteLen((char*)str, ::SysStringByteLen(str)); + str = + ::SysAllocStringByteLen((char*)src.str, ::SysStringByteLen(src.str)); } else { str = ::SysAllocStringByteLen(NULL, 0); } -- cgit v0.12