parent
f6a91c9bb2
commit
f9604cdcc6
@ -0,0 +1,131 @@
|
||||
From 6b20c5072944fc5408196b401fb5ab462600eecd Mon Sep 17 00:00:00 2001
|
||||
From: Stephan Bergmann <sbergman@redhat.com>
|
||||
Date: Tue, 1 Oct 2013 14:33:56 +0200
|
||||
Subject: [PATCH] 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)
|
||||
---
|
||||
codemaker/source/cppumaker/cpputype.cxx | 37 +++++++++++++++++++++++----------
|
||||
1 file changed, 26 insertions(+), 11 deletions(-)
|
||||
|
||||
diff --git a/codemaker/source/cppumaker/cpputype.cxx b/codemaker/source/cppumaker/cpputype.cxx
|
||||
index 9848f57..a1e17d6 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)
|
||||
{
|
||||
--
|
||||
1.8.3.1
|
||||
|
Loading…
Reference in new issue