diff options
Diffstat (limited to 'idl/source/prj/command.cxx')
-rw-r--r-- | idl/source/prj/command.cxx | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/idl/source/prj/command.cxx b/idl/source/prj/command.cxx index 4ad62f971d3f..2095ad267c3b 100644 --- a/idl/source/prj/command.cxx +++ b/idl/source/prj/command.cxx @@ -124,9 +124,15 @@ bool ReadIdl( SvIdlWorkingBase * pDataBase, const SvCommand & rCommand ) OUString aFileName ( rCommand.aInFileList[ n ] ); pDataBase->AddDepFile(aFileName); SvTokenStream aTokStm( aFileName ); - SvIdlParser aParser(*pDataBase, aTokStm); - if( !aParser.ReadSvIdl( false, rCommand.aPath ) ) - return false; + try { + SvIdlParser aParser(*pDataBase, aTokStm); + if( !aParser.ReadSvIdl( false, rCommand.aPath ) ) + return false; + } catch (const SvParseException& ex) { + pDataBase->SetError(ex.aError); + pDataBase->WriteError(aTokStm); + return false; + } } return true; } |