From e18a648417c605b5355d4847329747a5ee0372b4 Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Sat, 13 Jan 2007 18:53:38 +0000 Subject: [PATCH] Fixed SD2-1267 - Cannot design a WiX dialog that is not in a project. git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.1@2294 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../WixBinding/Project/Src/WixBinaries.cs | 8 +++++--- .../GetBinaryFileNameFromProjectTestFixture.cs | 13 +++++++++++++ 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/src/AddIns/BackendBindings/WixBinding/Project/Src/WixBinaries.cs b/src/AddIns/BackendBindings/WixBinding/Project/Src/WixBinaries.cs index 709e197270..485d78dbb3 100644 --- a/src/AddIns/BackendBindings/WixBinding/Project/Src/WixBinaries.cs +++ b/src/AddIns/BackendBindings/WixBinding/Project/Src/WixBinaries.cs @@ -82,9 +82,11 @@ namespace ICSharpCode.WixBinding List GetWixFileNamesInProject(WixDocument document) { List fileNames = new List(); - foreach (FileProjectItem fileProjectItem in project.WixFiles) { - if (!FileUtility.IsEqualFileName(fileProjectItem.FileName, document.FileName)) { - fileNames.Add(fileProjectItem.FileName); + if (project != null) { + foreach (FileProjectItem fileProjectItem in project.WixFiles) { + if (!FileUtility.IsEqualFileName(fileProjectItem.FileName, document.FileName)) { + fileNames.Add(fileProjectItem.FileName); + } } } return fileNames; diff --git a/src/AddIns/BackendBindings/WixBinding/Test/Document/GetBinaryFileNameFromProjectTestFixture.cs b/src/AddIns/BackendBindings/WixBinding/Test/Document/GetBinaryFileNameFromProjectTestFixture.cs index 19933b331b..a1f92872b9 100644 --- a/src/AddIns/BackendBindings/WixBinding/Test/Document/GetBinaryFileNameFromProjectTestFixture.cs +++ b/src/AddIns/BackendBindings/WixBinding/Test/Document/GetBinaryFileNameFromProjectTestFixture.cs @@ -71,6 +71,19 @@ namespace WixBinding.Tests.Document Assert.AreEqual(expectedFileName, binaries.GetBinaryFileName("Dialog")); } + /// + /// SD2-1267 - If you open a single WiX file (.wxs) without opening + /// a WiX project you are unable to design its WiX dialog. + /// + [Test] + public void GetBinaryFileNameWhenWixDocNotInProject() + { + WixDocument doc = new WixDocument(); + WixBinaries binaries = new WixBinaries(doc, this); + + Assert.IsNull(binaries.GetBinaryFileName("UnknownId")); + } + public TextReader Create(string fileName) { fileName = Path.GetFileName(fileName);