summaryrefslogtreecommitdiffstatshomepage
path: root/py/objarray.c
diff options
context:
space:
mode:
authorPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-01-28 03:40:48 +0200
committerPaul Sokolovsky <pfalcon@users.sourceforge.net>2014-01-28 03:40:48 +0200
commit1801421f6d204dfae9453187e1f70e261b230a9e (patch)
tree91731a8aa10c9998b99c0f95a249b414f4e5f168 /py/objarray.c
parent0b7e29c025621d940552e66d26b7470f36c579df (diff)
downloadmicropython-1801421f6d204dfae9453187e1f70e261b230a9e.tar.gz
micropython-1801421f6d204dfae9453187e1f70e261b230a9e.zip
bytearray: Print objects properly.
Diffstat (limited to 'py/objarray.c')
-rw-r--r--py/objarray.c19
1 files changed, 10 insertions, 9 deletions
diff --git a/py/objarray.c b/py/objarray.c
index ef5fe8ffef..9911e89df9 100644
--- a/py/objarray.c
+++ b/py/objarray.c
@@ -124,19 +124,20 @@ static void array_set_el(mp_obj_array_t *o, int index, mp_obj_t val_in) {
static void array_print(void (*print)(void *env, const char *fmt, ...), void *env, mp_obj_t o_in, mp_print_kind_t kind) {
mp_obj_array_t *o = o_in;
if (o->typecode == BYTEARRAY_TYPECODE) {
- print(env, "bytearray(", o->typecode);
+ print(env, "bytearray(b", o->typecode);
+ mp_str_print_quoted(print, env, o->items, o->len);
} else {
print(env, "array('%c'", o->typecode);
- }
- if (o->len > 0) {
- print(env, ", [", o->typecode);
- for (int i = 0; i < o->len; i++) {
- if (i > 0) {
- print(env, ", ");
+ if (o->len > 0) {
+ print(env, ", [", o->typecode);
+ for (int i = 0; i < o->len; i++) {
+ if (i > 0) {
+ print(env, ", ");
+ }
+ print(env, "%d", array_get_el(o, i));
}
- print(env, "%d", array_get_el(o, i));
+ print(env, "]");
}
- print(env, "]");
}
print(env, ")");
}