[vala] codegen: Fix determining the default cheaders of symbols



commit 091fae4e20802d66726c61d6410b1645832d7670
Author: Luca Bruno <lucabru src gnome org>
Date:   Tue Sep 6 11:58:11 2011 +0200

    codegen: Fix determining the default cheaders of symbols
    
    Fixes a regression introduced by the attributes refactoring.
    The refactoring missed a check on the cheaders of the parent symbol.
    
    Fixes bug 658338.

 codegen/valaccodeattribute.vala |   11 ++++++++---
 1 files changed, 8 insertions(+), 3 deletions(-)
---
diff --git a/codegen/valaccodeattribute.vala b/codegen/valaccodeattribute.vala
index 48277d9..cf7ce89 100644
--- a/codegen/valaccodeattribute.vala
+++ b/codegen/valaccodeattribute.vala
@@ -668,9 +668,14 @@ public class Vala.CCodeAttribute : AttributeCache {
 	private string get_default_header_filenames () {
 		if (sym is DynamicProperty || sym is DynamicMethod) {
 			return "";
-		} else if (sym.parent_symbol != null) {
-			return CCodeBaseModule.get_ccode_header_filenames (sym.parent_symbol);
-		} else if (sym.source_reference != null && !sym.external_package) {
+		}
+		if (sym.parent_symbol != null) {
+			var parent_headers = CCodeBaseModule.get_ccode_header_filenames (sym.parent_symbol);
+			if (parent_headers.length > 0) {
+				return parent_headers;
+			}
+		}
+		if (sym.source_reference != null && !sym.external_package) {
 			// don't add default include directives for VAPI files
 			return sym.source_reference.file.get_cinclude_filename ();
 		}



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]