summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorVladimir Glazounov <vg@openoffice.org>2003-03-20 11:30:57 +0000
committerVladimir Glazounov <vg@openoffice.org>2003-03-20 11:30:57 +0000
commit94e90626a652e8db798bdf52beb28cebbea285d3 (patch)
tree55342fd5e9d45eb8471a3f934b7bd47aa64de168
parent3b96418478302c640ba71d187d74d713ab97a31d (diff)
INTEGRATION: CWS uno1 (1.15.2.17.2.1.4); FILE MERGED
2003/03/03 10:46:53 ab 1.15.2.17.2.1.4.1: #107604# Error message in Dbg_SupportedInterfaces output if XIdlClass is not available
-rw-r--r--basic/source/classes/sbunoobj.cxx22
1 files changed, 19 insertions, 3 deletions
diff --git a/basic/source/classes/sbunoobj.cxx b/basic/source/classes/sbunoobj.cxx
index bbac088fed66..c7e58c868639 100644
--- a/basic/source/classes/sbunoobj.cxx
+++ b/basic/source/classes/sbunoobj.cxx
@@ -2,9 +2,9 @@
*
* $RCSfile: sbunoobj.cxx,v $
*
- * $Revision: 1.23 $
+ * $Revision: 1.24 $
*
- * last change: $Author: hr $ $Date: 2003-03-18 16:28:31 $
+ * last change: $Author: vg $ $Date: 2003-03-20 12:30:57 $
*
* The Contents of this file are made available subject to the terms of
* either of the following licenses
@@ -306,6 +306,7 @@ Reference<XIdlClass> TypeToIdlClass( const Type& rType )
Reference<XIdlClass> xRetClass;
typelib_TypeDescription * pTD = 0;
rType.getDescription( &pTD );
+
if( pTD )
{
OUString sOWName( pTD->pTypeName );
@@ -1082,7 +1083,22 @@ String Impl_GetSupportedInterfaces( const String& rClassName, SbUnoObject* pUnoO
for( UINT32 j = 0 ; j < nIfaceCount ; j++ )
{
const Type& rType = pTypeArray[j];
- aRet += Impl_GetInterfaceInfo( x, TypeToIdlClass( rType ), 1 );
+
+ Reference<XIdlClass> xClass = TypeToIdlClass( rType );
+ if( xClass.is() )
+ {
+ aRet += Impl_GetInterfaceInfo( x, xClass, 1 );
+ }
+ else
+ {
+ typelib_TypeDescription * pTD = 0;
+ rType.getDescription( &pTD );
+ String TypeName( OUString( pTD->pTypeName ) );
+
+ aRet.AppendAscii( "*** ERROR: No IdlClass for type \"" );
+ aRet += TypeName;
+ aRet.AppendAscii( "\"\n*** Please check type library\n" );
+ }
}
}
else if( xClassProvider.is() )