> Scope is supposed to hold "variables" (strings) and "arrays of
> variables" and provide capability to try and fetch these from parent
> scopes if the variable is not defined in the current scope. It doesn't
> even have to do that in the error case below.
> Dumping "result" before return is reached yields corrupted strings.
>
> public class Scope: Object {
>
> protected weak Scope parent;
> protected Variable local;
> (...)
> public string?[]? get_array(string uri) {
>
> string?[]? result = this.local.get_array(uri);
>
> if (result == null && this.parent != null) { //! result != null here
>
> result = this.parent.get_array(uri);
> }
>
> //! at this point result values appear to be invalid
>
> return result;
> }
> (...)
> }
Perhaps "parent", being weak, is no longer referring
to a valid object. Remove "weak" and see.
Nice day
Nor Jaidi Tuah
PRIVILEGED/CONFIDENTIAL information may be contained in this message. If you
are neither the addressee (intended recipient) nor an authorised recipient of
the addressee, and have received this message in error, please destroy this
message (including attachments) and notify the sender immediately. STRICT
PROHIBITION: This message, whether in part or in whole, should not be reviewed,
retained, copied, reused, disclosed, distributed or used for any purpose
whatsoever. Such unauthorised use may be unlawful and may contain material
protected by the Official Secrets Act (Cap 153) of the Laws of Brunei
Darussalam. DISCLAIMER: We/This Department/The Government of Brunei Darussalam,
accept[s] no responsibility for loss or damage arising from the use of this
message in any manner whatsoever. Our messages are checked for viruses but we
do not accept liability for any viruses which may be transmitted in or with
this message.
_______________________________________________
vala-list mailing list
[email protected]
https://mail.gnome.org/mailman/listinfo/vala-list