From bbbf7cf839473c2c52e1279c89b11c1d617a4481 Mon Sep 17 00:00:00 2001 From: Mathias Simmack Date: Sat, 17 Jun 2006 07:59:25 +0000 Subject: [PATCH] catched an exception with invalid pointers (http://community.sharpdevelop.net/forums/thread/8728.aspx) git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/branches/2.0@1492 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61 --- .../Project/src/BaseControls/IndexPad.cs | 23 ++++++++++---- .../Project/src/BaseControls/TocPad.cs | 18 ++++++++--- .../Project/src/Service/HtmlHelp2Service.cs | 30 ++++--------------- 3 files changed, 37 insertions(+), 34 deletions(-) diff --git a/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/IndexPad.cs b/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/IndexPad.cs index 3ccbb84693..08685e8d81 100644 --- a/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/IndexPad.cs +++ b/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/IndexPad.cs @@ -169,12 +169,23 @@ namespace HtmlHelp2 { if (!this.controlIsEnabled) return; - searchTerm.Text = ""; - searchTerm.Items.Clear(); - indexControl.IndexData = HtmlHelp2Environment.GetIndex(HtmlHelp2Environment.CurrentFilterQuery); - filterCombobox.SelectedIndexChanged -= new EventHandler(FilterChanged); - HtmlHelp2Environment.BuildFilterList(filterCombobox); - filterCombobox.SelectedIndexChanged += new EventHandler(FilterChanged); + try + { + searchTerm.Text = ""; + searchTerm.Items.Clear(); + indexControl.IndexData = HtmlHelp2Environment.GetIndex(HtmlHelp2Environment.CurrentFilterQuery); + filterCombobox.SelectedIndexChanged -= new EventHandler(FilterChanged); + HtmlHelp2Environment.BuildFilterList(filterCombobox); + filterCombobox.SelectedIndexChanged += new EventHandler(FilterChanged); + } + catch + { + LoggingService.Error("Help 2.0: cannot connect to IHxIndex interface (Index)"); + indexControl.Enabled = false; + indexControl.BackColor = SystemColors.ButtonFace; + filterCombobox.Enabled = false; + searchTerm.Enabled = false; + } } private void FilterChanged(object sender, EventArgs e) diff --git a/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/TocPad.cs b/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/TocPad.cs index 5b62782cc9..7f76dbd272 100644 --- a/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/TocPad.cs +++ b/src/AddIns/Misc/HtmlHelp2/Project/src/BaseControls/TocPad.cs @@ -205,10 +205,20 @@ namespace HtmlHelp2 { if (!this.controlIsEnabled) return; - tocControl.Hierarchy = HtmlHelp2Environment.GetTocHierarchy(HtmlHelp2Environment.CurrentFilterQuery); - filterCombobox.SelectedIndexChanged -= new EventHandler(this.FilterChanged); - HtmlHelp2Environment.BuildFilterList(filterCombobox); - filterCombobox.SelectedIndexChanged += new EventHandler(this.FilterChanged); + try + { + tocControl.Hierarchy = HtmlHelp2Environment.GetTocHierarchy(HtmlHelp2Environment.CurrentFilterQuery); + filterCombobox.SelectedIndexChanged -= new EventHandler(this.FilterChanged); + HtmlHelp2Environment.BuildFilterList(filterCombobox); + filterCombobox.SelectedIndexChanged += new EventHandler(this.FilterChanged); + } + catch + { + LoggingService.Error("Help 2.0: cannot connect to IHxHierarchy interface (Contents)"); + tocControl.Enabled = false; + tocControl.BackColor = SystemColors.ButtonFace; + filterCombobox.Enabled = false; + } } private void FilterChanged(object sender, EventArgs e) diff --git a/src/AddIns/Misc/HtmlHelp2/Project/src/Service/HtmlHelp2Service.cs b/src/AddIns/Misc/HtmlHelp2/Project/src/Service/HtmlHelp2Service.cs index 4b7253176d..ee56490dcc 100644 --- a/src/AddIns/Misc/HtmlHelp2/Project/src/Service/HtmlHelp2Service.cs +++ b/src/AddIns/Misc/HtmlHelp2/Project/src/Service/HtmlHelp2Service.cs @@ -202,34 +202,16 @@ namespace HtmlHelp2.Environment public static IHxHierarchy GetTocHierarchy(string filterQuery) { - try - { - IHxHierarchy defaultToc = - (IHxHierarchy)session.GetNavigationInterface("!DefaultTOC", filterQuery, ref TocGuid); - return defaultToc; - } - catch - { - LoggingService.Error("Help 2.0: cannot connect to IHxHierarchy interface (Contents)"); - return null; - } + IHxHierarchy defaultToc = + (IHxHierarchy)session.GetNavigationInterface("!DefaultTOC", filterQuery, ref TocGuid); + return defaultToc; } public static IHxIndex GetIndex(string filterQuery) { - try - { - IHxIndex defaultIndex = - (IHxIndex)session.GetNavigationInterface("!DefaultKeywordIndex", - filterQuery, - ref IndexGuid); - return defaultIndex; - } - catch - { - LoggingService.Error("Help 2.0: cannot connect to IHxIndex interface (Index)"); - return null; - } + IHxIndex defaultIndex = + (IHxIndex)session.GetNavigationInterface("!DefaultKeywordIndex", filterQuery, ref IndexGuid); + return defaultIndex; } public static void BuildFilterList(ComboBox filterCombobox)