--- a/kernel/eka/drivers/locmedia/locmedia.cpp Mon Oct 04 12:15:59 2010 +0100
+++ b/kernel/eka/drivers/locmedia/locmedia.cpp Wed Oct 06 17:13:14 2010 +0100
@@ -5445,6 +5445,8 @@
if (aPrimaryMedia->iBody->iMediaExtension)
pagingDevice->iType|= DPagingDevice::EMediaExtension;
+ pagingDevice->iFlags = flags;
+
pagingDevice->iReadUnitShift = aReadShift;
pagingDevice->iFirstLocalDriveNumber = firstLocalDriveNumber;
--- a/kernel/eka/include/d32otgdi_errors.h Mon Oct 04 12:15:59 2010 +0100
+++ b/kernel/eka/include/d32otgdi_errors.h Wed Oct 06 17:13:14 2010 +0100
@@ -43,6 +43,10 @@
const TInt KErrUsbOtgInOPTTestingMode = -6676;
+const TInt KErrUsbOtgThermalNormal = -6677;
+const TInt KErrUsbOtgThermalWarning = -6678;
+const TInt KErrUsbOtgThermalFatal = -6679;
+
const TInt KErrUsbOtgStackNotStarted = -6680;
const TInt KErrUsbOtgVbusAlreadyRaised = -6681;
const TInt KErrUsbOtgSrpForbidden = -6682;
--- a/kernel/eka/include/e32ver.h Mon Oct 04 12:15:59 2010 +0100
+++ b/kernel/eka/include/e32ver.h Wed Oct 06 17:13:14 2010 +0100
@@ -28,7 +28,7 @@
const TInt KE32MajorVersionNumber=2;
const TInt KE32MinorVersionNumber=0;
-const TInt KE32BuildVersionNumber=4006;
+const TInt KE32BuildVersionNumber=4007;
const TInt KMachineConfigurationMajorVersionNumber=1;
const TInt KMachineConfigurationMinorVersionNumber=0;
--- a/kernel/eka/release.txt Mon Oct 04 12:15:59 2010 +0100
+++ b/kernel/eka/release.txt Wed Oct 06 17:13:14 2010 +0100
@@ -1,3 +1,18 @@
+Version 2.00.4007
+=================
+(Made by fadhliM 30/09/2010)
+
+1. lanerobe
+ 1. ou1cimx1#573530 Use new(nothrow) to avoid vector new not checking for NULL return
+ 2. ou1cimx1#583517 DEV: T_LDRTST fails if SD card is missing
+
+2. haifeyan
+ 1. ou1cimx1#591262 Boosted otg - add error message ID(MCL)
+
+3. migubarr
+ 1. ou1cimx1#587076 Paging subsystem isn't enabled to use physical address only media access
+
+
Version 2.00.4006
=================
(Made by vfebvre 27/09/2010)
--- a/kerneltest/e32test/device/t_newldd.cpp Mon Oct 04 12:15:59 2010 +0100
+++ b/kerneltest/e32test/device/t_newldd.cpp Wed Oct 06 17:13:14 2010 +0100
@@ -161,12 +161,21 @@
RDebug::Printf("User-Side:vector operator new");
RDebug::Printf("OOM tests");
+#if defined(__ARMCC__) && __ARMCC_VERSION >= 400000 // Work-around a problem where compsupp doesn't overload the rvct 4.0 runtime
+ #define TEST_VEC_NEW_OOM(CLASS) \
+ RDebug::Printf("new " #CLASS "[%d]", KOOMArraySize );\
+ {\
+ CLASS* p##CLASS = new(std::nothrow) CLASS[KOOMArraySize];\
+ test_Equal(NULL, p##CLASS);\
+ }
+#else
#define TEST_VEC_NEW_OOM(CLASS) \
RDebug::Printf("new " #CLASS "[%d]", KOOMArraySize );\
{\
CLASS* p##CLASS = new CLASS[KOOMArraySize];\
test_Equal(NULL, p##CLASS);\
}
+#endif
TEST_VEC_NEW_OOM(XCtorAndDtor);
TEST_VEC_NEW_OOM(XCtorOnly);
--- a/kerneltest/f32test/loader/t_ldrtst.cpp Mon Oct 04 12:15:59 2010 +0100
+++ b/kerneltest/f32test/loader/t_ldrtst.cpp Wed Oct 06 17:13:14 2010 +0100
@@ -1158,12 +1158,17 @@
TInt r = Fs.MkDirAll(hashDir);
test_Value(r, r == KErrNone || r == KErrAlreadyExists);
+ TBool removableDrivePresent = EFalse;
+
for (TInt d = 0; d <= (TInt)sizeof(SpecialDriveList); ++d)
{
TInt dr = SpecialDriveList[d];
TDriveInfo di;
test.Printf(_L("Drive %d\n"), dr);
test(Fs.Drive(di, dr) == KErrNone);
+
+ if (di.iDriveAtt & KDriveAttRemovable)
+ removableDrivePresent = ETrue;
if (di.iType == EMediaNotPresent)
continue;
@@ -1195,6 +1200,23 @@
test.Printf(_L("MkDirAll %S returns %d\n"), &fn, r);
test_Value(r, r == KErrNone || r == KErrAlreadyExists);
}
+
+ if (removableDrivePresent)
+ {
+ if (!NoRemovable && SpecialDrives[1] == '!')
+ {
+ test.Printf(_L("Removable drive present but empty - please insert a card...\n"));
+ test(0);
+ }
+ }
+ else
+ {
+ if (!NoRemovable)
+ {
+ NoRemovable = ETrue;
+ test.Printf(_L("Updated NoRemovable=1 due to having no removable drives\n"));
+ }
+ }
}
void GetNonZFileName(const TDesC& aOrigName, TDes& aNonZName)