aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs')
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs22
1 files changed, 11 insertions, 11 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
index 624cbb43..f1605eca 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
@@ -304,7 +304,8 @@ namespace WixToolset.Core.WindowsInstaller.Databases
304 throw new InvalidOperationException("Failed to fetch a File row from the database that was merged in from a module."); 304 throw new InvalidOperationException("Failed to fetch a File row from the database that was merged in from a module.");
305 } 305 }
306 306
307 recordUpdate.SetInteger(1, file.File.Sequence); 307 //recordUpdate.SetInteger(1, file.File.Sequence);
308 throw new NotImplementedException();
308 309
309 // update the file attributes to match the compression specified 310 // update the file attributes to match the compression specified
310 // on the Merge element or on the Package element 311 // on the Merge element or on the Package element
@@ -316,26 +317,25 @@ namespace WixToolset.Core.WindowsInstaller.Databases
316 attributes = recordUpdate.GetInteger(2); 317 attributes = recordUpdate.GetInteger(2);
317 } 318 }
318 319
319 if (YesNoType.Yes == file.File.Compressed) 320 // not specified
321 if (!file.File.Compressed.HasValue)
322 {
323 // clear any compression bits
324 attributes &= ~MsiInterop.MsidbFileAttributesCompressed;
325 attributes &= ~MsiInterop.MsidbFileAttributesNoncompressed;
326 }
327 else if (file.File.Compressed.Value)
320 { 328 {
321 // these are mutually exclusive 329 // these are mutually exclusive
322 attributes |= MsiInterop.MsidbFileAttributesCompressed; 330 attributes |= MsiInterop.MsidbFileAttributesCompressed;
323 attributes &= ~MsiInterop.MsidbFileAttributesNoncompressed; 331 attributes &= ~MsiInterop.MsidbFileAttributesNoncompressed;
324 } 332 }
325 else if (YesNoType.No == file.File.Compressed) 333 else if (!file.File.Compressed.Value)
326 { 334 {
327 // these are mutually exclusive 335 // these are mutually exclusive
328 attributes |= MsiInterop.MsidbFileAttributesNoncompressed; 336 attributes |= MsiInterop.MsidbFileAttributesNoncompressed;
329 attributes &= ~MsiInterop.MsidbFileAttributesCompressed; 337 attributes &= ~MsiInterop.MsidbFileAttributesCompressed;
330 } 338 }
331 else // not specified
332 {
333 Debug.Assert(YesNoType.NotSet == file.File.Compressed);
334
335 // clear any compression bits
336 attributes &= ~MsiInterop.MsidbFileAttributesCompressed;
337 attributes &= ~MsiInterop.MsidbFileAttributesNoncompressed;
338 }
339 339
340 recordUpdate.SetInteger(2, attributes); 340 recordUpdate.SetInteger(2, attributes);
341 341