diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2015-07-22 07:14:07 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2015-07-22 07:14:07 -0700 |
commit | 9d2a3e3ba7e75d200ee1d9ece7c2accd7451a960 (patch) | |
tree | 75e2a8316f32ca87cc16f7bea194e015e7dd931c | |
parent | 954fc9f3e77125d3978dc41a48aae94e9a4d9eef (diff) | |
download | txr-9d2a3e3ba7e75d200ee1d9ece7c2accd7451a960.tar.gz txr-9d2a3e3ba7e75d200ee1d9ece7c2accd7451a960.tar.bz2 txr-9d2a3e3ba7e75d200ee1d9ece7c2accd7451a960.zip |
* lib.c (obj_print, obj_pprint): Bugfix: incorrect
value returned when printing dwim forms, due to
mutating the obj variable.
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | lib.c | 6 |
2 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,9 @@ +2015-07-22 Kaz Kylheku <kaz@kylheku.com> + + * lib.c (obj_print, obj_pprint): Bugfix: incorrect + value returned when printing dwim forms, due to + mutating the obj variable. + 2015-07-21 Kaz Kylheku <kaz@kylheku.com> Implementing caar, cadr, cdar and friends. @@ -6883,6 +6883,7 @@ val obj_print(val obj, val out) case CONS: case LCONS: { + val obj_in = obj; val sym = car(obj); if (sym == quote_s && consp(cdr(obj)) && !(cdr(cdr(obj)))) { @@ -6949,8 +6950,8 @@ finish: } } } + return obj_in; } - return obj; case LIT: case STR: { @@ -7077,6 +7078,7 @@ val obj_pprint(val obj, val out) case CONS: case LCONS: { + val obj_in = obj; val sym = car(obj); if (sym == quote_s && consp(cdr(obj)) && !(cdr(cdr(obj)))) { @@ -7143,8 +7145,8 @@ finish: } } } + return obj_in; } - return obj; case LIT: case STR: put_string(obj, out); |