diff -r dee5afe5301f -r 3f74d0d4af4c src/corelib/tools/qvarlengtharray.h --- a/src/corelib/tools/qvarlengtharray.h Mon Mar 15 12:43:09 2010 +0200 +++ b/src/corelib/tools/qvarlengtharray.h Thu Apr 08 14:19:33 2010 +0300 @@ -222,7 +222,6 @@ } } else { qMemCopy(ptr, oldPtr, qMin(asize, osize) * sizeof(T)); - s = asize; } } else { ptr = oldPtr; @@ -233,7 +232,7 @@ if (QTypeInfo::isComplex) { while (osize > asize) (oldPtr+(--osize))->~T(); - if( oldPtr == ptr ) + if (!QTypeInfo::isStatic) s = osize; }