summaryrefslogtreecommitdiffstats
path: root/src/eval.c
diff options
context:
space:
mode:
authorErnie Rael <errael@raelity.com>2023-09-20 20:13:06 +0200
committerChristian Brabandt <cb@256bit.org>2023-09-20 20:13:06 +0200
commit98e68c07ce229148c994a42ead9f010b0d0a1be4 (patch)
treed0b580a561988023809a7b163fbf02055673e119 /src/eval.c
parent03cd697d635f1b0e7ffe21cf8244a8fb755f2ddb (diff)
patch 9.0.1920: Vim9: cannot write public var in nested objectv9.0.1920
Problem: Vim9: cannot write public var in nested object Solution: Write variable in nested read-only object reference. Also test write fails. closes: #13130 closes: #13131 Signed-off-by: Christian Brabandt <cb@256bit.org> Co-authored-by: Ernie Rael <errael@raelity.com>
Diffstat (limited to 'src/eval.c')
-rw-r--r--src/eval.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/eval.c b/src/eval.c
index 931d510451..93b840e61e 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -1564,6 +1564,9 @@ get_lval(
om->ocm_name);
return NULL;
case VIM_ACCESS_READ:
+ // If [idx] or .key following, read only OK.
+ if (*p == '[' || *p == '.')
+ break;
if ((flags & GLV_READ_ONLY) == 0)
{
semsg(_(e_member_is_not_writable_str),