aboutsummaryrefslogtreecommitdiff
path: root/memory.c
diff options
context:
space:
mode:
authorSimon Tatham <anakin@pobox.com>2018-05-14 18:14:12 +0100
committerSimon Tatham <anakin@pobox.com>2018-05-14 18:14:12 +0100
commit1c1c3850e8a54938f41afb5e49a9176b229a3a88 (patch)
tree87afe7756a633bad27bb8ae19fda6704de614c34 /memory.c
parent66f1f5d2bff9900a62db381c8718acb1982f4753 (diff)
downloadwix-on-linux-1c1c3850e8a54938f41afb5e49a9176b229a3a88.tar.gz
wix-on-linux-1c1c3850e8a54938f41afb5e49a9176b229a3a88.tar.bz2
wix-on-linux-1c1c3850e8a54938f41afb5e49a9176b229a3a88.zip
Stop using real pointers as handles in makemsi.c.
Upgrading to Ubuntu 18.04, which seems to have become more prone to allocating process memory above the 4G boundary, has revealed that the client code of the phony msi.dll functions is not in fact prepared to accept arbitrary machine-word sized pointer values. It's expecting 32-bit handles, so we were segfaulting because MsiDatabaseImportW was only being given the bottom 32 bits of the 64-bit pointer that MsiOpenDatabaseW had returned. So now I just keep a trivial registry of small integer handle values and the pointers they map to. I don't even bother to recycle them - the process isn't expected to run for long enough for me to care.
Diffstat (limited to 'memory.c')
0 files changed, 0 insertions, 0 deletions