diff options
-rw-r--r-- | libguile/ChangeLog | 4 | ||||
-rw-r--r-- | libguile/unif.c | 6 |
2 files changed, 8 insertions, 2 deletions
diff --git a/libguile/ChangeLog b/libguile/ChangeLog index 3477aa69e..89e41586b 100644 --- a/libguile/ChangeLog +++ b/libguile/ChangeLog @@ -1,3 +1,7 @@ +2001-01-31 Mikael Djurfeldt <mdj@linnaeus.mit.edu> + + * unif.c (rapr1): Don't apply scm_uniform_vector_length on arrays. + 2001-01-29 Martin Grabmueller <mgrabmue@cs.tu-berlin.de> * struct.c (scm_make_vtable_vtable): Removed unnecessary "" from diff --git a/libguile/unif.c b/libguile/unif.c index 96d1fd472..0eef7cfc4 100644 --- a/libguile/unif.c +++ b/libguile/unif.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1995,1996,1997,1998, 2000 Free Software Foundation, Inc. +/* Copyright (C) 1995,1996,1997,1998, 2000, 2001 Free Software Foundation, Inc. * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by @@ -2225,7 +2225,9 @@ static void rapr1 (SCM ra,scm_sizet j,scm_sizet k,SCM port,scm_print_state *pstate) { long inc = 1; - long n = SCM_INUM (scm_uniform_vector_length (ra)); + long n = (SCM_TYP7 (ra) == scm_tc7_smob + ? 0 + : SCM_INUM (scm_uniform_vector_length (ra))); int enclosed = 0; tail: switch SCM_TYP7 (ra) |