cvsuser 04/05/09 00:56:40
Modified: src list.c
Log:
bail out for non-plain scalars
Revision Changes Path
1.49 +8 -1 parrot/src/list.c
Index: list.c
===================================================================
RCS file: /cvs/public/parrot/src/list.c,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -w -r1.48 -r1.49
--- list.c 8 May 2004 16:27:52 -0000 1.48
+++ list.c 9 May 2004 07:56:39 -0000 1.49
@@ -1,7 +1,7 @@
/*
Copyright: (c) 2002 Leopold Toetsch <[EMAIL PROTECTED]>
License: Artistic/GPL, see README and LICENSES for details
-$Id: list.c,v 1.48 2004/05/08 16:27:52 leo Exp $
+$Id: list.c,v 1.49 2004/05/09 07:56:39 leo Exp $
=head1 NAME
@@ -1401,6 +1401,10 @@
goto slow;
if (! (n & ARENA_FLAG_MASK)) {
++dod_flags;
+ if ((*dod_flags & 0x44444444) == 0x44444444) {
+ /* found a bunch of special_PMCs */
+ goto slow;
+ }
nm = 0;
}
else
@@ -1412,6 +1416,9 @@
goto slow;
if (! (n & ARENA_FLAG_MASK)) {
--dod_flags;
+ if ((*dod_flags & 0x44444444) == 0x44444444) {
+ goto slow;
+ }
nm = ((n-1) & ARENA_FLAG_MASK) << 2;
}
else {