contrib/wix/help.wxs
author Mads Kiilerich <madski@unity3d.com>
Thu, 27 Oct 2016 20:06:33 +0200
branchstable
changeset 30233 3afde791dce1
parent 29865 a1092e2d70a3
child 30615 66cffa87d2f2
permissions -rw-r--r--
largefiles: handle that a found standin file doesn't exist when removing it I somehow ended up in a situation where hg crashed on an unlink I introduced in 328545c7d8a1. I don't know how it happened and can't reproduce it. It seems like it only can happen when the file is removed between the time of check in a working directory context walk that finds a standin file, and the time of use when we try to remove it because the corresponding largefile doesn't exist. But better safe than sorry: replace the plain unlink with unlinkpath with ignoremissing=True. That will also remove remaining empty directories, which arguably is more correct.

<?xml version="1.0" encoding="utf-8"?>
<Wix xmlns="http://schemas.microsoft.com/wix/2006/wi">

  <?include guids.wxi ?>
  <?include defines.wxi ?>

  <Fragment>
    <ComponentGroup Id='helpFolder'>
      <ComponentRef Id='help.root' />
      <ComponentRef Id='help.internals' />
    </ComponentGroup>
  </Fragment>

  <Fragment>
    <DirectoryRef Id="INSTALLDIR">
      <Directory Id="helpdir" Name="help" FileSource="$(var.SourceDir)">
        <Component Id="help.root" Guid="$(var.help.root.guid)" Win64='$(var.IsX64)'>
          <File Name="config.txt" KeyPath="yes" />
          <File Name="dates.txt" />
          <File Name="diffs.txt" />
          <File Name="environment.txt" />
          <File Name="extensions.txt" />
          <File Name="filesets.txt" />
          <File Name="glossary.txt" />
          <File Name="hgignore.txt" />
          <File Name="hgweb.txt" />
          <File Name="merge-tools.txt" />
          <File Name="multirevs.txt" />
          <File Name="patterns.txt" />
          <File Name="phases.txt" />
          <File Name="revisions.txt" />
          <File Name="revsets.txt" />
          <File Name="scripting.txt" />
          <File Name="subrepos.txt" />
          <File Name="templates.txt" />
          <File Name="urls.txt" />
        </Component>

        <Directory Id="help.internaldir" Name="internals">
          <Component Id="help.internals" Guid="$(var.help.internals.guid)" Win64='$(var.IsX64)'>
            <File Id="internals.bundles.txt"      Name="bundles.txt" KeyPath="yes" />
            <File Id="internals.changegroups.txt" Name="changegroups.txt" />
            <File Id="internals.requirements.txt" Name="requirements.txt" />
            <File Id="internals.revlogs.txt"      Name="revlogs.txt" />
            <File Id="internals.wireprotocol.txt" Name="wireprotocol.txt" />
          </Component>
        </Directory>

      </Directory>
    </DirectoryRef>
  </Fragment>

</Wix>