From: Luca Bruno Date: Thu, 23 Dec 2010 13:31:19 +0000 (+0100) Subject: vapigen: Fix marking gir metadata as source. X-Git-Tag: 0.13.0~289 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=dee597bdf291f61e95d7987da4bf1016d2863c2e;p=thirdparty%2Fvala.git vapigen: Fix marking gir metadata as source. --- diff --git a/vapigen/valavapigen.vala b/vapigen/valavapigen.vala index 573a3a726..3247aa37d 100644 --- a/vapigen/valavapigen.vala +++ b/vapigen/valavapigen.vala @@ -122,7 +122,7 @@ class Vala.VAPIGen : Object { if (context.report.get_errors () > 0) { return quit (); } - + foreach (string source in sources) { if (FileUtils.test (source, FileTest.EXISTS)) { context.add_source_file (new SourceFile (context, SourceFileType.PACKAGE, source)); @@ -169,10 +169,16 @@ class Vala.VAPIGen : Object { } if (file.filename in sources) { file.file_type = SourceFileType.SOURCE; - } else if (file.filename.has_suffix (".metadata")) { - string gir_filename = "%s.gir".printf (file.filename.substring (0, file.filename.length - ".metadata".length)); - if (gir_filename in sources) { - file.file_type = SourceFileType.SOURCE; + if (file.filename.has_suffix (".gir")) { + // mark relative metadata as source + string? metadata_filename = context.get_metadata_path (file.filename); + if (metadata_filename != null) { + foreach (SourceFile metadata_file in context.get_source_files ()) { + if (metadata_file.filename == metadata_filename) { + metadata_file.file_type = SourceFileType.SOURCE; + } + } + } } } }