summaryrefslogtreecommitdiff
path: root/codegen/valagobjectmodule.vala
diff options
context:
space:
mode:
Diffstat (limited to 'codegen/valagobjectmodule.vala')
-rw-r--r--codegen/valagobjectmodule.vala16
1 files changed, 9 insertions, 7 deletions
diff --git a/codegen/valagobjectmodule.vala b/codegen/valagobjectmodule.vala
index 2eadee533..2159941b9 100644
--- a/codegen/valagobjectmodule.vala
+++ b/codegen/valagobjectmodule.vala
@@ -1,6 +1,6 @@
/* valagobjectmodule.vala
*
- * Copyright (C) 2006-2010 Jürg Billeter
+ * Copyright (C) 2006-2011 Jürg Billeter
* Copyright (C) 2006-2008 Raffaele Sandrini
*
* This library is free software; you can redistribute it and/or
@@ -720,12 +720,9 @@ public class Vala.GObjectModule : GTypeModule {
return false;
}
- if (prop.base_interface_property != null) {
- var iface = (Interface) prop.base_interface_property.parent_symbol;
- if (!iface.is_subtype_of (gobject_type)) {
- // implementing non-GObject property
- return false;
- }
+ if (type_sym is Class && prop.base_interface_property != null &&
+ !is_gobject_property (prop.base_interface_property)) {
+ return false;
}
if (!prop.name[0].isalpha ()) {
@@ -733,6 +730,11 @@ public class Vala.GObjectModule : GTypeModule {
return false;
}
+ if (type_sym is Interface && type_sym.get_attribute ("DBus") != null) {
+ // GObject properties not currently supported in D-Bus interfaces
+ return false;
+ }
+
return true;
}