From: Rico Tzschichholz Date: Sun, 28 Jan 2018 22:00:03 +0000 (+0100) Subject: girparser: Ignore conflicting closure/destroy indexes X-Git-Tag: 0.38.6~4 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=c07b24626b19d0545adbd559f3cf3e0480317647;p=thirdparty%2Fvala.git girparser: Ignore conflicting closure/destroy indexes Reverse references from closure/destroy parameters back to the callback break our later logic, so skip this additional information. --- diff --git a/vala/valagirparser.vala b/vala/valagirparser.vala index bade241f2..387db6027 100644 --- a/vala/valagirparser.vala +++ b/vala/valagirparser.vala @@ -3251,13 +3251,17 @@ public class Vala.GirParser : CodeVisitor { if (instance_idx > -2 && instance_idx < closure_idx) { closure_idx--; } - current.closure_parameters.add (closure_idx); + if (current.closure_parameters.index_of (current_parameter_idx) < 0) { + current.closure_parameters.add (closure_idx); + } } if (destroy_idx != -1) { if (instance_idx > -2 && instance_idx < destroy_idx) { destroy_idx--; } - current.destroy_parameters.add (destroy_idx); + if (current.destroy_parameters.index_of (current_parameter_idx) < 0) { + current.destroy_parameters.add (destroy_idx); + } } if (param_comment != null) { if (comment == null) {