persistentstorage/dbms/ustor/US_TABLE.CPP
changeset 35 0d6db0a14001
parent 0 08ec8eefde2f
--- a/persistentstorage/dbms/ustor/US_TABLE.CPP	Fri Jun 11 15:29:22 2010 +0300
+++ b/persistentstorage/dbms/ustor/US_TABLE.CPP	Tue Jul 06 16:18:30 2010 +0300
@@ -611,7 +611,9 @@
 	TInt size;
 	rec=ReadCardinality(rec,size);
 	size<<=2;
-	if(size < 0)
+	
+	//If such huge allocation is requested(KMaxTInt/2), it is highly likely the file is corrupt
+	if((size < 0) || (size >= KMaxTInt/2))
 		{
 		aRow.SetSize(0);
 		__LEAVE(KErrCorrupt);