aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.WindowsInstaller/Decompile
diff options
context:
space:
mode:
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller/Decompile')
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs21
1 files changed, 12 insertions, 9 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs b/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
index 2288cedf..29e15c91 100644
--- a/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Decompile/Decompiler.cs
@@ -248,19 +248,20 @@ namespace WixToolset.Core.WindowsInstaller
248 private XElement GetIndexedElement(string table, params string[] primaryKey) => this.IndexedElements[String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey))]; 248 private XElement GetIndexedElement(string table, params string[] primaryKey) => this.IndexedElements[String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey))];
249 249
250 /// <summary> 250 /// <summary>
251 /// Gets the element corresponding to the primary key of the given table. 251 /// Tries to get the element corresponding to the primary key of the given table.
252 /// </summary> 252 /// </summary>
253 /// <param name="table">The table corresponding to the element.</param> 253 /// <param name="row">The table corresponding to the element.</param>
254 /// <param name="primaryKey">The primary key corresponding to the element.</param> 254 /// <param name="xElement">The indexed element.</param>
255 /// <returns>The indexed element.</returns> 255 /// <returns>Whether the element was found.</returns>
256 private bool TryGetIndexedElement(WixToolset.Data.WindowsInstaller.Row row, out XElement xElement) => this.TryGetIndexedElement(row.TableDefinition.Name, out xElement, row.GetPrimaryKey(DecompilerConstants.PrimaryKeyDelimiter)); 256 private bool TryGetIndexedElement(WixToolset.Data.WindowsInstaller.Row row, out XElement xElement) => this.TryGetIndexedElement(row.TableDefinition.Name, out xElement, row.GetPrimaryKey(DecompilerConstants.PrimaryKeyDelimiter));
257 257
258 /// <summary> 258 /// <summary>
259 /// Gets the element corresponding to the primary key of the given table. 259 /// Tries to get the element corresponding to the primary key of the given table.
260 /// </summary> 260 /// </summary>
261 /// <param name="table">The table corresponding to the element.</param> 261 /// <param name="table">The table corresponding to the element.</param>
262 /// <param name="xElement">The indexed element.</param>
262 /// <param name="primaryKey">The primary key corresponding to the element.</param> 263 /// <param name="primaryKey">The primary key corresponding to the element.</param>
263 /// <returns>The indexed element.</returns> 264 /// <returns>Whether the element was found.</returns>
264 private bool TryGetIndexedElement(string table, out XElement xElement, params string[] primaryKey) => this.IndexedElements.TryGetValue(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), out xElement); 265 private bool TryGetIndexedElement(string table, out XElement xElement, params string[] primaryKey) => this.IndexedElements.TryGetValue(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), out xElement);
265 266
266 /// <summary> 267 /// <summary>
@@ -276,8 +277,9 @@ namespace WixToolset.Core.WindowsInstaller
276 /// <summary> 277 /// <summary>
277 /// Index an element by its corresponding row. 278 /// Index an element by its corresponding row.
278 /// </summary> 279 /// </summary>
279 /// <param name="row">The row corresponding to the element.</param>
280 /// <param name="element">The element to index.</param> 280 /// <param name="element">The element to index.</param>
281 /// <param name="table"></param>
282 /// <param name="primaryKey"></param>
281 private void IndexElement(XElement element, string table, params string[] primaryKey) 283 private void IndexElement(XElement element, string table, params string[] primaryKey)
282 { 284 {
283 this.IndexedElements.Add(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), element); 285 this.IndexedElements.Add(String.Concat(table, ':', String.Join(DecompilerConstants.PrimaryKeyDelimiterString, primaryKey)), element);
@@ -342,7 +344,7 @@ namespace WixToolset.Core.WindowsInstaller
342 /// Set the common control attributes in a control element. 344 /// Set the common control attributes in a control element.
343 /// </summary> 345 /// </summary>
344 /// <param name="attributes">The control attributes.</param> 346 /// <param name="attributes">The control attributes.</param>
345 /// <param name="control">The control element.</param> 347 /// <param name="xControl">The control element.</param>
346 private static void SetControlAttributes(int attributes, XElement xControl) 348 private static void SetControlAttributes(int attributes, XElement xControl)
347 { 349 {
348 if (0 == (attributes & WindowsInstallerConstants.MsidbControlAttributesEnabled)) 350 if (0 == (attributes & WindowsInstallerConstants.MsidbControlAttributesEnabled))
@@ -2424,6 +2426,7 @@ namespace WixToolset.Core.WindowsInstaller
2424 /// Initialize decompilation. 2426 /// Initialize decompilation.
2425 /// </summary> 2427 /// </summary>
2426 /// <param name="tables">The collection of all tables.</param> 2428 /// <param name="tables">The collection of all tables.</param>
2429 /// <param name="codepage"></param>
2427 private void InitializeDecompile(TableIndexedCollection tables, int codepage) 2430 private void InitializeDecompile(TableIndexedCollection tables, int codepage)
2428 { 2431 {
2429 // reset all the state information 2432 // reset all the state information
@@ -2983,7 +2986,7 @@ namespace WixToolset.Core.WindowsInstaller
2983 /// <summary> 2986 /// <summary>
2984 /// Decompile the _SummaryInformation table. 2987 /// Decompile the _SummaryInformation table.
2985 /// </summary> 2988 /// </summary>
2986 /// <param name="table">The table to decompile.</param> 2989 /// <param name="tables">The tables to decompile.</param>
2987 private void FinalizeSummaryInformationStream(TableIndexedCollection tables) 2990 private void FinalizeSummaryInformationStream(TableIndexedCollection tables)
2988 { 2991 {
2989 var table = tables["_SummaryInformation"]; 2992 var table = tables["_SummaryInformation"];