diff --git a/src/builtin_functions.c b/src/builtin_functions.c index 9b63265beb0958c5e3d750a8241a513c6627cf4b..44e5ca7a0650ff709767226924ca89a97387a7de 100644 --- a/src/builtin_functions.c +++ b/src/builtin_functions.c @@ -5,7 +5,7 @@ \*/ /**/ #include "global.h" -RCSID("$Id: builtin_functions.c,v 1.269 2000/04/30 11:05:08 grubba Exp $"); +RCSID("$Id: builtin_functions.c,v 1.270 2000/05/04 03:17:52 hubbe Exp $"); #include "interpret.h" #include "svalue.h" #include "pike_macros.h" @@ -2722,7 +2722,7 @@ void f_column(INT32 args) get_all_args("column", args, "%a%*", &tmp, &val); /* Optimization */ - if(tmp->refs == 1) + if(tmp->refs == 1 || ~(tmp->type_field & BIT_COMPLEX)) { /* An array with one ref cannot possibly be cyclic */ struct svalue sval;