]> git.ipfire.org Git - thirdparty/vala.git/commitdiff
vala: Break reference chain between DataType and Symbol if possible 12a560a22cbda229f490787b9a5d17aaff0bca82
authorDavid Hewitt <davidmhewitt@gmail.com>
Mon, 25 Jun 2018 23:50:33 +0000 (23:50 +0000)
committerRico Tzschichholz <ricotz@ubuntu.com>
Wed, 4 Jul 2018 14:37:13 +0000 (16:37 +0200)
See https://gitlab.gnome.org/GNOME/vala/issues/635

vala/valadelegatetype.vala
vala/valafieldprototype.vala
vala/valagenerictype.vala
vala/valamethodtype.vala
vala/valasignaltype.vala

index 8e62d750bad266887440989c13a433d0c7815a6b..0f4edfdb3e231df1032f23b8641a204d90a1a420 100644 (file)
@@ -26,7 +26,7 @@ using GLib;
  * The type of an instance of a delegate.
  */
 public class Vala.DelegateType : CallableType {
-       public Delegate delegate_symbol { get; set; }
+       public weak Delegate delegate_symbol { get; set; }
 
        public bool is_called_once { get; set; }
 
index cb0dc9aeb3c48b579cb19cde5c3b67bbdc19b423..4fc394fcae4e8e47c741ec6250a4f05f4ffe1081 100644 (file)
@@ -26,7 +26,7 @@ using GLib;
  * A reference to an instance field without a specific instance.
  */
 public class Vala.FieldPrototype : DataType {
-       public Field field_symbol { get; set; }
+       public weak Field field_symbol { get; set; }
 
        public FieldPrototype (Field field_symbol) {
                this.field_symbol = field_symbol;
index ca8aa657ecc0653601b8cfe8f2cb5fe4648504e9..d964ab63ace9bd6b6e53801e2566c8de6601c8fa 100644 (file)
@@ -29,7 +29,7 @@ public class Vala.GenericType : DataType {
        /**
         * The referred generic type parameter.
         */
-       public TypeParameter type_parameter { get; set; }
+       public weak TypeParameter type_parameter { get; set; }
 
        public GenericType (TypeParameter type_parameter) {
                this.type_parameter = type_parameter;
index 063189f6e9a334629a1ec8056bc6b10c0d7670cd..a2effdec643fd0508af2bd6bf23d9ae5df9cf9b0 100644 (file)
@@ -26,7 +26,7 @@ using GLib;
  * The type of a method referencea.
  */
 public class Vala.MethodType : CallableType {
-       public Method method_symbol { get; set; }
+       public weak Method method_symbol { get; set; }
 
        public MethodType (Method method_symbol) {
                this.method_symbol = method_symbol;
index dbfd0435a15319e55f56117561dd565d313840af..4a36816f0896748c8ae8b098df9ce770a5bf366d 100644 (file)
@@ -26,7 +26,7 @@ using GLib;
  * The type of a signal referencea.
  */
 public class Vala.SignalType : CallableType {
-       public Signal signal_symbol { get; set; }
+       public weak Signal signal_symbol { get; set; }
 
        Method? connect_method;
        Method? connect_after_method;