summaryrefslogtreecommitdiff
path: root/codemaker
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2013-10-01 14:33:56 +0200
committerCaolán McNamara <caolanm@redhat.com>2013-10-02 16:22:17 +0000
commita16c5c551f302c628d0118b95db09c4a16a784ce (patch)
tree4fd22ce15999c1b1a3808a7375091620cc7b3cba /codemaker
parent6f089d61c8576f271b2873b532170a6bd627c9e2 (diff)
rhbz#1014010: Missing dependencies in isBootstrapType list
...the list has been fixed now by copying its elements into an ENTRIES file and running "unoidl-write udkapi/ @ENTITIES TEMP && unoidl-read TEMP >/dev/null" and adding any reported unknown entities until it succeeds. However, the updated list lead to deadlock when css.reflection.ParamInfo UnoType resolves css.reflection.XIdlClass UnoType resolves css.reflection.XIdlMethod UnoType resolves css.reflection.ParamInfo UnoType, so broke the circle by no longer resolving the interface methods' return and parameter types in InterfaceType::dumpMethodsCppuDecl (which is why those type infos are only generated on demand anyway; looks like this had been a careless thinko in the generation of comprehensive type info that had remained unnoticed all the time). Change-Id: I50ef2fde16242298e055c6fa5971e70fad1a2b68 (cherry picked from commit 254f59f623f58c320175a06a2c93bcee7868b623) Reviewed-on: https://gerrit.libreoffice.org/6099 Reviewed-by: Caolán McNamara <caolanm@redhat.com> Tested-by: Caolán McNamara <caolanm@redhat.com>
Diffstat (limited to 'codemaker')
-rwxr-xr-xcodemaker/source/cppumaker/cpputype.cxx37
1 files changed, 26 insertions, 11 deletions
diff --git a/codemaker/source/cppumaker/cpputype.cxx b/codemaker/source/cppumaker/cpputype.cxx
index 9848f5790058..a1e17d6777cb 100755
--- a/codemaker/source/cppumaker/cpputype.cxx
+++ b/codemaker/source/cppumaker/cpputype.cxx
@@ -49,18 +49,25 @@ namespace {
bool isBootstrapType(OUString const & name) {
static char const * const names[] = {
+ "com.sun.star.beans.Property",
"com.sun.star.beans.PropertyAttribute",
+ "com.sun.star.beans.PropertyChangeEvent",
"com.sun.star.beans.PropertyState",
"com.sun.star.beans.PropertyValue",
"com.sun.star.beans.XFastPropertySet",
"com.sun.star.beans.XMultiPropertySet",
+ "com.sun.star.beans.XPropertiesChangeListener",
"com.sun.star.beans.XPropertyAccess",
+ "com.sun.star.beans.XPropertyChangeListener",
"com.sun.star.beans.XPropertySet",
+ "com.sun.star.beans.XPropertySetInfo",
"com.sun.star.beans.XPropertySetOption",
+ "com.sun.star.beans.XVetoableChangeListener",
"com.sun.star.bridge.UnoUrlResolver",
"com.sun.star.bridge.XUnoUrlResolver",
"com.sun.star.connection.SocketPermission",
"com.sun.star.container.XElementAccess",
+ "com.sun.star.container.XEnumeration",
"com.sun.star.container.XEnumerationAccess",
"com.sun.star.container.XHierarchicalNameAccess",
"com.sun.star.container.XNameAccess",
@@ -70,6 +77,7 @@ bool isBootstrapType(OUString const & name) {
"com.sun.star.io.FilePermission",
"com.sun.star.io.IOException",
"com.sun.star.lang.DisposedException",
+ "com.sun.star.lang.EventObject",
"com.sun.star.lang.WrappedTargetRuntimeException",
"com.sun.star.lang.XComponent",
"com.sun.star.lang.XEventListener",
@@ -81,11 +89,19 @@ bool isBootstrapType(OUString const & name) {
"com.sun.star.lang.XSingleServiceFactory",
"com.sun.star.lang.XTypeProvider",
"com.sun.star.loader.XImplementationLoader",
+ "com.sun.star.reflection.FieldAccessMode",
+ "com.sun.star.reflection.MethodMode",
+ "com.sun.star.reflection.ParamInfo",
+ "com.sun.star.reflection.ParamMode",
+ "com.sun.star.reflection.TypeDescriptionSearchDepth",
"com.sun.star.reflection.XArrayTypeDescription",
"com.sun.star.reflection.XCompoundTypeDescription",
"com.sun.star.reflection.XEnumTypeDescription",
+ "com.sun.star.reflection.XIdlArray",
"com.sun.star.reflection.XIdlClass",
+ "com.sun.star.reflection.XIdlField",
"com.sun.star.reflection.XIdlField2",
+ "com.sun.star.reflection.XIdlMethod",
"com.sun.star.reflection.XIdlReflection",
"com.sun.star.reflection.XIndirectTypeDescription",
"com.sun.star.reflection.XInterfaceAttributeTypeDescription",
@@ -97,18 +113,28 @@ bool isBootstrapType(OUString const & name) {
"com.sun.star.reflection.XMethodParameter",
"com.sun.star.reflection.XStructTypeDescription",
"com.sun.star.reflection.XTypeDescription",
+ "com.sun.star.reflection.XTypeDescriptionEnumeration",
"com.sun.star.reflection.XTypeDescriptionEnumerationAccess",
"com.sun.star.reflection.XUnionTypeDescription",
+ "com.sun.star.registry.RegistryKeyType",
+ "com.sun.star.registry.RegistryValueType",
"com.sun.star.registry.XImplementationRegistration",
"com.sun.star.registry.XRegistryKey",
"com.sun.star.registry.XSimpleRegistry",
"com.sun.star.security.RuntimePermission",
+ "com.sun.star.security.XAccessControlContext",
"com.sun.star.security.XAccessController",
+ "com.sun.star.security.XAction",
"com.sun.star.uno.DeploymentException",
"com.sun.star.uno.RuntimeException",
+ "com.sun.star.uno.TypeClass",
+ "com.sun.star.uno.Uik",
+ "com.sun.star.uno.XAdapter",
"com.sun.star.uno.XAggregation",
"com.sun.star.uno.XComponentContext",
"com.sun.star.uno.XCurrentContext",
+ "com.sun.star.uno.XInterface",
+ "com.sun.star.uno.XReference",
"com.sun.star.uno.XUnloadingPreference",
"com.sun.star.uno.XWeak",
"com.sun.star.util.XMacroExpander" };
@@ -1519,17 +1545,6 @@ void InterfaceType::dumpMethodsCppuDecl(
entity_->getDirectMethods().begin());
i != entity_->getDirectMethods().end(); ++i)
{
- if (seen->insert(i->returnType).second) {
- dumpCppuGetType(out, i->returnType);
- }
- for (std::vector< unoidl::InterfaceTypeEntity::Method::Parameter >::
- const_iterator j(i->parameters.begin());
- j != i->parameters.end(); ++j)
- {
- if (seen->insert(j->type).second) {
- dumpCppuGetType(out, j->type);
- }
- }
for (std::vector< OUString >::const_iterator j(i->exceptions.begin());
j != i->exceptions.end(); ++j)
{