浏览代码

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
Brad King 6 年之前
父节点
当前提交
3f4c4e7afe
共有 1 个文件被更改,包括 4 次插入2 次删除
  1. 4 2
      Source/cmVSSetupHelper.h

+ 4 - 2
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);
       }