From nobody Fri Apr 26 05:30:50 2024 Delivered-To: importer@patchew.org Received-SPF: pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) client-ip=209.51.188.17; envelope-from=qemu-devel-bounces+importer=patchew.org@nongnu.org; helo=lists.gnu.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org ARC-Seal: i=1; a=rsa-sha256; t=1585070706; cv=none; d=zohomail.com; s=zohoarc; b=g+NhKZV3MBJAKmUQ57eGQRpxCMCRzAPj/7fDSG39GaaGxfxvHBtC/GafIJoe7TzuYIr8IlkNJ4+k28pKLu7dFvf4l+zKYI299rJBGEbwiJT7yg8L2Aarko7A7DEIEcL4h8fSDjYDAS9gLfxwdAgopWm6y7Xf+Cj2Nu6nOzxsmW8= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1585070706; h=Cc:Date:From:In-Reply-To:List-Subscribe:List-Post:List-Id:List-Archive:List-Help:List-Unsubscribe:Message-ID:References:Sender:Subject:To; bh=WZwD83D9KTX1uO8cXedRJd4vyXXnAoxqc7Y/V7iuhWE=; b=MbugVTtxHh8N3GMM0cBUo2q+AwzowWsoYhtdDii1Vfkx3n/PB+24mwDnI9veNQ+XyD8oToHjqLCZAYaaTqqYDLw/BQdzQcjMaEfR85Rcvb3Wgh8TT/SViFF84vFiGRIldy/VHyno3JpVwaQ39O2dbKiuMABF9plUQxDSqylG0xY= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=fail; spf=pass (zohomail.com: domain of gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=qemu-devel-bounces+importer=patchew.org@nongnu.org Return-Path: Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mx.zohomail.com with SMTPS id 1585070706240312.5813159869839; Tue, 24 Mar 2020 10:25:06 -0700 (PDT) Received: from localhost ([::1]:52542 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jGnIW-0002ja-Qc for importer@patchew.org; Tue, 24 Mar 2020 13:25:04 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:51071) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1jGmiQ-0003S6-8g for qemu-devel@nongnu.org; Tue, 24 Mar 2020 12:47:47 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1jGmiP-0007u9-AH for qemu-devel@nongnu.org; Tue, 24 Mar 2020 12:47:46 -0400 Received: from mail-oi1-x234.google.com ([2607:f8b0:4864:20::234]:41717) by eggs.gnu.org with esmtps (TLS1.0:RSA_AES_128_CBC_SHA1:16) (Exim 4.71) (envelope-from ) id 1jGmiP-0007tW-5p for qemu-devel@nongnu.org; Tue, 24 Mar 2020 12:47:45 -0400 Received: by mail-oi1-x234.google.com with SMTP id k9so6476939oia.8 for ; Tue, 24 Mar 2020 09:47:45 -0700 (PDT) Received: from localhost (76-251-165-188.lightspeed.austtx.sbcglobal.net. [76.251.165.188]) by smtp.gmail.com with ESMTPSA id u199sm6426273oif.25.2020.03.24.09.47.42 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Tue, 24 Mar 2020 09:47:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=sender:from:to:cc:subject:date:message-id:in-reply-to:references; bh=WZwD83D9KTX1uO8cXedRJd4vyXXnAoxqc7Y/V7iuhWE=; b=Wxt5Cw3MmT9nr/AJwJ+2oNXZzFTqnx3JUIgmQG4IUJ6rlCGcxa2ccIk2051uXdoTkS Ki4Vfx7sxV4xJWL+tOnp2EsVG7n2zpJDNcH+sws4p7ghwpOiFbWmDmfMO30omM2FyMdn 8njSrLoQHA+vuy3KaH3E4sJuwei1IEz2aZ/Jeq3+kfnPtWKsq35xYy4eGbYIdyRPWklh qfyCwnhR3/npT/4eFEEvQ5EblglSqresVBQpI0zpDXcH8hbzQlr5kp2Zw4MoBCJGTZ42 sG16G3UpSEcpQ2XcQEPB7W1f3BiHxp/ZfvVY1EnFEP5DPEEtcMBy+uAi6k7AZHvz4nlI WVVQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:sender:from:to:cc:subject:date:message-id :in-reply-to:references; bh=WZwD83D9KTX1uO8cXedRJd4vyXXnAoxqc7Y/V7iuhWE=; b=g/HBI9HoG2KFVczFo3sdm6akFI21MrIZogK/1k7xfoqBYRxys9oAAg7stJUFqpQ52x B6vVxFchA9vTpN1EepUiK4ZZXw34sHDV2adlaxtcAlnSp3e2u5kzJ4XKrNfbqxNHhlne 10T9z+VYi1KUUoCicOuarMz2au0ET8x0B0fNL+DADSm8Wjst3x3GdHcCAywsp18CU2ob ktLAdXTUcyJ25vnVEtQAv5qEAu6e1adcQYjxAd5x28HvCqouFPBuhsB62I72913mQx9+ 13YH0xbnQ5n2lzJ/mkwT/ROhP8qAQk0AAVhFMHlbYPBs9oCIaBVJkl3t5pvdpo3xrDVr L5xQ== X-Gm-Message-State: ANhLgQ1FoUuQb1PgGNxdVMlEDDSl3LX10En+i4fbbIYGMEdMS39eoqj7 edA6zDuiaBN7tbUEWa4cqYWx5aojlyU= X-Google-Smtp-Source: ADFU+vs35On4tbN/D2d4gao0vsJKJktgz3Sx63Pk6XnbXpDGAhEPiGJpwT0ozTUgN75ZopWVvlTbjw== X-Received: by 2002:a05:6808:56:: with SMTP id v22mr3914893oic.116.1585068463565; Tue, 24 Mar 2020 09:47:43 -0700 (PDT) From: Michael Roth To: qemu-devel@nongnu.org Subject: [PULL for-5.0 2/5] qga-win: Handle VSS_E_PROVIDER_ALREADY_REGISTERED error Date: Tue, 24 Mar 2020 11:46:50 -0500 Message-Id: <20200324164653.19449-3-mdroth@linux.vnet.ibm.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200324164653.19449-1-mdroth@linux.vnet.ibm.com> References: <20200324164653.19449-1-mdroth@linux.vnet.ibm.com> X-detected-operating-system: by eggs.gnu.org: Genre and OS details not recognized. X-Received-From: 2607:f8b0:4864:20::234 X-Mailman-Approved-At: Tue, 24 Mar 2020 13:24:16 -0400 X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Sameeh Jubran , peter.maydell@linaro.org, Basil Salman Errors-To: qemu-devel-bounces+importer=patchew.org@nongnu.org Sender: "Qemu-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" From: Sameeh Jubran This patch handles the case where VSS Provider is already registered, where in such case qga uninstalls the provider and registers it again. Signed-off-by: Sameeh Jubran Signed-off-by: Basil Salman Signed-off-by: Michael Roth --- qga/vss-win32/install.cpp | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/qga/vss-win32/install.cpp b/qga/vss-win32/install.cpp index 6713e58670..a456841360 100644 --- a/qga/vss-win32/install.cpp +++ b/qga/vss-win32/install.cpp @@ -443,6 +443,17 @@ STDAPI DllRegisterServer(void) VSS_PROV_SOFTWARE, const_cast(QGA_PROVIDER_VERSI= ON), g_gProviderVersion); + if (hr =3D=3D (long int) VSS_E_PROVIDER_ALREADY_REGISTERED) { + DllUnregisterServer(); + hr =3D pVssAdmin->RegisterProvider(g_gProviderId, CLSID_QGAVSSProv= ider, + const_cast + (QGA_PROVIDER_LNAME), + VSS_PROV_SOFTWARE, + const_cast + (QGA_PROVIDER_VERSION), + g_gProviderVersion); + } + if (FAILED(hr)) { errmsg_dialog(hr, "RegisterProvider failed"); } --=20 2.17.1