From 944575769f9dc93073f1504ce7b93408aefa43c2 Mon Sep 17 00:00:00 2001 From: stefan <stefan@5a81b35b-ba03-0410-adc8-b2c5c5119f08> Date: Thu, 1 Jul 2010 06:39:16 +0000 Subject: [PATCH] Fix for FileLoader, catch exception when passed FileHandler throws exception git-svn-id: https://dng.biozentrum.unibas.ch/svn/openstructure/trunk@2488 5a81b35b-ba03-0410-adc8-b2c5c5119f08 --- modules/gui/src/file_loader.cc | 33 +++++++++++++++++++-------------- 1 file changed, 19 insertions(+), 14 deletions(-) diff --git a/modules/gui/src/file_loader.cc b/modules/gui/src/file_loader.cc index 31636340e..f8e611f9f 100644 --- a/modules/gui/src/file_loader.cc +++ b/modules/gui/src/file_loader.cc @@ -135,21 +135,26 @@ void FileLoader::AddToScene(const QString& filename, gfx::GfxObjP obj) gfx::GfxObjP FileLoader::NoHandlerFound(const QString& filename) { FileTypeDialog dialog(filename); - if(dialog.exec()){ - if(dialog.GetEntityHandler()){ - return TryLoadEntity(filename, dialog.GetEntityHandler()); - } - if(dialog.GetSequenceHandler()){ - return TryLoadAlignment(filename, dialog.GetSequenceHandler()); - } - if(dialog.GetSurfaceHandler()){ - return TryLoadSurface(filename,dialog.GetSurfaceHandler()); - } -#if OST_IMG_ENABLED - if(dialog.GetMapHandler()){ - return TryLoadMap(filename,dialog.GetMapHandler()); + try{ + if(dialog.exec()){ + if(dialog.GetEntityHandler()){ + return TryLoadEntity(filename, dialog.GetEntityHandler()); + } + if(dialog.GetSequenceHandler()){ + return TryLoadAlignment(filename, dialog.GetSequenceHandler()); + } + if(dialog.GetSurfaceHandler()){ + return TryLoadSurface(filename,dialog.GetSurfaceHandler()); + } + #if OST_IMG_ENABLED + if(dialog.GetMapHandler()){ + return TryLoadMap(filename,dialog.GetMapHandler()); + } + #endif } -#endif + } + catch (io::IOException& e) { + FileLoader::HandleError(e,IO_LOADING,filename); } return gfx::GfxObjP(); } -- GitLab