codemaker/source/cppumaker/cpputype.cxx |   37 ++++++++++++++++++++++----------
 1 file changed, 26 insertions(+), 11 deletions(-)

New commits:
commit 254f59f623f58c320175a06a2c93bcee7868b623
Author: Stephan Bergmann <sberg...@redhat.com>
Date:   Tue Oct 1 14:33:56 2013 +0200

    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

diff --git a/codemaker/source/cppumaker/cpputype.cxx 
b/codemaker/source/cppumaker/cpputype.cxx
index 8f8cdf3..7f073e4 100644
--- 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" };
@@ -1521,17 +1547,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)
         {
_______________________________________________
Libreoffice-commits mailing list
libreoffice-comm...@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/libreoffice-commits

Reply via email to