From fd3f41e01856e41bb6e35b139066b2e96d01f7a3 Mon Sep 17 00:00:00 2001 From: Kaz Kylheku Date: Mon, 11 May 2015 07:37:28 -0700 Subject: * lib.c (chr_str_set): Check for literal strings. --- ChangeLog | 4 ++++ lib.c | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/ChangeLog b/ChangeLog index 9bfabebe..c778a0e2 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +2015-05-11 Kaz Kylheku + + * lib.c (chr_str_set): Check for literal strings. + 2015-05-11 Kaz Kylheku Fix argument count checking regression. diff --git a/lib.c b/lib.c index ad83e91a..46e445ca 100644 --- a/lib.c +++ b/lib.c @@ -3463,6 +3463,11 @@ val chr_str_set(val str, val ind, val chr) { cnum index = c_num(ind); + if (is_lit(str)) { + uw_throwf(error_s, lit("chr-str-set: cannot modify literal string ~s"), + str, nao); + } + if (index < 0) { ind = plus(length_str(str), ind); index = c_num(ind); -- cgit v1.2.3