]> git.ipfire.org Git - thirdparty/krb5.git/commit
Stop using the WiX Registry element
authorBen Kaduk <kaduk@mit.edu>
Wed, 27 May 2015 19:36:51 +0000 (15:36 -0400)
committerTom Yu <tlyu@mit.edu>
Wed, 24 Jun 2015 21:40:54 +0000 (17:40 -0400)
commite0fa3bb33b7e7b05c584e0529364d8f1d914048c
tree46f332dbaadb7f90822c62a89fddf04901bf5e1b
parentb1ec8b1306f31d92235ec795d01801f11a7b38fe
Stop using the WiX Registry element

It is deprecated in favor of more specific XML elements such
as RegistryKey, RegistryValue, and RemoveRegistryKey, so as to
stop overloading a single element for what are fundamentally
different types and operations.

RegistryValue elements can be children of RegistryKey elements,
allowing the Key attribute to be inherited, or bare within the
containing Component.  We do not take advantage of the inheritance
at this time, since that would be a more disruptive change.

WiX would prefer for us to not use the createAndRemoveOnUninstall
attribute of <RegistryKey>, in favor of ForceCreateOnInstall
and/or ForceRemoveOnUninstall, but that can wait for a follow-up
commit.

Some instances of <Registry> were commented-out and can simply be
removed.

Some of the <Registry> elements used to create keys were also
setting the KeyPath attribute, which is not permitted in the
<RegistryKey> element.  According to
http://sourceforge.net/p/wix/bugs/3197/ , this should never have
been allowed, and non-value registry keys should not be used as
MSI KeyPaths.  In all affected cases, there are child
RegistryValue elements that are suitable for use as KeyPath
elements instead.

Some of the <Registry> elements were present with a duplicate
element with different Id that added no new attributes; those
duplicate elements can safely be removed.

<RemoveRegistryKey> is used to replace <Registry> elements
with Action=removeKeyOnInstall.

(cherry picked from commit 280a4b1125743bae3bf05af266131e2a524c8adf)

ticket: 7392
version_fixed: 1.13.3
status: resolved
src/windows/installer/wix/files.wxi