aboutsummaryrefslogtreecommitdiff
path: root/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2020-01-13 09:10:13 -0800
committerRob Mensching <rob@firegiant.com>2020-01-13 14:19:45 -0800
commit94b941ee95a294228516097c269e27dfa41593ab (patch)
tree208cb36a5a6a3e17f5d458cfaa679d6ca1a76e15 /src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
parenta2b1235d9c0dfba48b1badac428d89d1137da698 (diff)
downloadwix-94b941ee95a294228516097c269e27dfa41593ab.tar.gz
wix-94b941ee95a294228516097c269e27dfa41593ab.tar.bz2
wix-94b941ee95a294228516097c269e27dfa41593ab.zip
Provide Record enumerator on View that disposes fetched Records
Diffstat (limited to 'src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs')
-rw-r--r--src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs22
1 files changed, 6 insertions, 16 deletions
diff --git a/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs b/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
index 7ee33997..8c11555e 100644
--- a/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
+++ b/src/WixToolset.Core.WindowsInstaller/Bind/MergeModulesCommand.cs
@@ -220,14 +220,12 @@ namespace WixToolset.Core.WindowsInstaller.Bind
220 string query = String.Format(CultureInfo.InvariantCulture, "SELECT * FROM {0} WHERE `Action` = '{1}'", row[0].ToString(), (string)row[1]); 220 string query = String.Format(CultureInfo.InvariantCulture, "SELECT * FROM {0} WHERE `Action` = '{1}'", row[0].ToString(), (string)row[1]);
221 221
222 using (View view = db.OpenExecuteView(query)) 222 using (View view = db.OpenExecuteView(query))
223 using (Record record = view.Fetch())
223 { 224 {
224 using (Record record = view.Fetch()) 225 if (null != record)
225 { 226 {
226 if (null != record) 227 this.Messaging.Write(WarningMessages.SuppressMergedAction((string)row[1], row[0].ToString()));
227 { 228 view.Modify(ModifyView.Delete, record);
228 this.Messaging.Write(WarningMessages.SuppressMergedAction((string)row[1], row[0].ToString()));
229 view.Modify(ModifyView.Delete, record);
230 }
231 } 229 }
232 } 230 }
233 } 231 }
@@ -244,17 +242,9 @@ namespace WixToolset.Core.WindowsInstaller.Bind
244 242
245 using (View view = db.OpenExecuteView(String.Concat("SELECT `Action` FROM ", tableName))) 243 using (View view = db.OpenExecuteView(String.Concat("SELECT `Action` FROM ", tableName)))
246 { 244 {
247 while (true) 245 foreach (Record resultRecord in view.Records)
248 { 246 {
249 using (Record resultRecord = view.Fetch()) 247 this.Messaging.Write(WarningMessages.SuppressMergedAction(resultRecord.GetString(1), tableName));
250 {
251 if (null == resultRecord)
252 {
253 break;
254 }
255
256 this.Messaging.Write(WarningMessages.SuppressMergedAction(resultRecord.GetString(1), tableName));
257 }
258 } 248 }
259 } 249 }
260 250