aboutsummaryrefslogtreecommitdiff
path: root/src/engine/package.cpp
diff options
context:
space:
mode:
authorSean Hall <r.sean.hall@gmail.com>2021-04-16 10:09:26 -0500
committerSean Hall <r.sean.hall@gmail.com>2021-04-19 23:12:55 -0500
commit90cdf39e6e6b7d676ca33bee031fa2b865bb5fbd (patch)
tree901feb035d5ea9a13f306582cedd6668b539953f /src/engine/package.cpp
parentc88806b89293f5bb92c42e90230e48be6b79b7f4 (diff)
downloadwix-90cdf39e6e6b7d676ca33bee031fa2b865bb5fbd.tar.gz
wix-90cdf39e6e6b7d676ca33bee031fa2b865bb5fbd.tar.bz2
wix-90cdf39e6e6b7d676ca33bee031fa2b865bb5fbd.zip
Don't plan payloads.
Contributes to #3640 and #5253
Diffstat (limited to 'src/engine/package.cpp')
-rw-r--r--src/engine/package.cpp14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/engine/package.cpp b/src/engine/package.cpp
index 6ff59fe4..ecf1488b 100644
--- a/src/engine/package.cpp
+++ b/src/engine/package.cpp
@@ -349,7 +349,7 @@ extern "C" void PackageUninitialize(
349 MemFree(pPackage->rgDependencyProviders); 349 MemFree(pPackage->rgDependencyProviders);
350 } 350 }
351 351
352 ReleaseMem(pPackage->rgPayloads); 352 ReleaseMem(pPackage->payloads.rgpPayloads);
353 353
354 switch (pPackage->type) 354 switch (pPackage->type)
355 { 355 {
@@ -567,16 +567,14 @@ static HRESULT ParsePayloadRefsFromXml(
567 } 567 }
568 568
569 // allocate memory for payload pointers 569 // allocate memory for payload pointers
570 pPackage->rgPayloads = (BURN_PACKAGE_PAYLOAD*)MemAlloc(sizeof(BURN_PACKAGE_PAYLOAD) * cNodes, TRUE); 570 pPackage->payloads.rgpPayloads = (BURN_PAYLOAD**)MemAlloc(sizeof(BURN_PAYLOAD*) * cNodes, TRUE);
571 ExitOnNull(pPackage->rgPayloads, hr, E_OUTOFMEMORY, "Failed to allocate memory for package payloads."); 571 ExitOnNull(pPackage->payloads.rgpPayloads, hr, E_OUTOFMEMORY, "Failed to allocate memory for package payloads.");
572 572
573 pPackage->cPayloads = cNodes; 573 pPackage->payloads.cPayloads = cNodes;
574 574
575 // parse package elements 575 // parse package elements
576 for (DWORD i = 0; i < cNodes; ++i) 576 for (DWORD i = 0; i < cNodes; ++i)
577 { 577 {
578 BURN_PACKAGE_PAYLOAD* pPackagePayload = &pPackage->rgPayloads[i];
579
580 hr = XmlNextElement(pixnNodes, &pixnNode, NULL); 578 hr = XmlNextElement(pixnNodes, &pixnNode, NULL);
581 ExitOnFailure(hr, "Failed to get next node."); 579 ExitOnFailure(hr, "Failed to get next node.");
582 580
@@ -585,9 +583,11 @@ static HRESULT ParsePayloadRefsFromXml(
585 ExitOnFailure(hr, "Failed to get Id attribute."); 583 ExitOnFailure(hr, "Failed to get Id attribute.");
586 584
587 // find payload 585 // find payload
588 hr = PayloadFindById(pPayloads, sczId, &pPackagePayload->pPayload); 586 hr = PayloadFindById(pPayloads, sczId, &pPackage->payloads.rgpPayloads[i]);
589 ExitOnFailure(hr, "Failed to find payload."); 587 ExitOnFailure(hr, "Failed to find payload.");
590 588
589 pPackage->payloads.qwTotalSize += pPackage->payloads.rgpPayloads[i]->qwFileSize;
590
591 // prepare next iteration 591 // prepare next iteration
592 ReleaseNullObject(pixnNode); 592 ReleaseNullObject(pixnNode);
593 } 593 }