201039 default PDK_4.0.a
authorhgs
Wed, 06 Oct 2010 14:52:34 +0300
changeset 42 605672cc2a86
parent 39 e80a5e3e883f
201039
camcordermmfplugin/Build/bld.inf
camcordermmfplugin/controller/Group/CamCController.mmp
camcordermmfplugin/controller/Src/CamCController.cpp
camcordermmfplugin/filecomposer/Group/camc3GPDataSink.mmp
camcordermmfplugin/mediarecorder/Group/mediarecorder.mmp
camcordermmfplugin/mediarecorder/Inc/CCMRVideoRecorder.h
camcordermmfplugin/mediarecorder/Src/CCMRAacCodecData.cpp
camcordermmfplugin/mediarecorder/Src/CCMRAudioCodecs.cpp
camcordermmfplugin/mediarecorder/Src/CCMRAudioInput.cpp
camcordermmfplugin/mediarecorder/Src/CCMRMDFVideoRecorder.cpp
camcordermmfplugin/mediarecorder/Src/CCMRMediaRecorderImp.cpp
camcordermmfplugin/rom/CamcorderMMFPlugin.iby
camcordermmfplugin/rom/CamcorderMMFPluginStub.SIS
camcordermmfplugin/rom/CamcorderMMFPluginStub.pkg
camcordermmfplugin/tsrc/public/basic/Group/StifCamcTest.mmp
camcordermmfplugin/tsrc/public/basic/src/camcTestClient_5.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTestClient_9.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTestClient_visualcheckdsp.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTestTop.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_1.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_2.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_3.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_4.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_5.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_6.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_7.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_8.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_9.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_visualcheck.cpp
camcordermmfplugin/tsrc/public/basic/src/camcTest_visualcheckdsp.cpp
camerasrv_plat/imaging_configuration_manager_api/tsrc/inc/ICMSTIF.h
camerasrv_plat/imaging_configuration_manager_api/tsrc/src/ICMSTIF.cpp
camerasrv_plat/media_recorder_api/tsrc/group/StifCamcTest.mmp
camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_5.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_9.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_visualcheckdsp.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTestTop.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_1.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_2.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_3.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_4.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_5.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_6.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_7.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_8.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_9.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_visualcheck.cpp
camerasrv_plat/media_recorder_api/tsrc/src/camcTest_visualcheckdsp.cpp
camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/camcorder_mmf_plugin_custom_commands_api.metaxml
camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/group/bld.inf
camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/inc/CamCControllerCustomCommands.h
camerasrv_pub/group/bld.inf
configmanagers/imagingconfigmanager/conf/imagingconfigmanager.confml
configmanagers/imagingconfigmanager/group/bld.inf
configmanagers/imagingconfigmanager/group/imagingconfigmanager.mmp
configmanagers/imagingconfigmanager/rom/imagingconfigmanager.iby
configmanagers/imagingconfigmanager/rom/imagingconfigmanagerstub.SIS
configmanagers/imagingconfigmanager/rom/imagingconfigmanagerstub.pkg
configmanagers/imagingconfigmanager/tsrc/public/basic/src/ICMSTIF.cpp
group/bld.inf
inc/CamCControllerCustomCommands.h
package_definition.xml
rom/camerasrv.iby
sis/bld.inf
sis/camerasrv.pkg
sis/camerasrv_stub.pkg
sis/camerasrv_stub.sis
sis/camerasrv_udeb.pkg
sis/depends.xml
--- a/camcordermmfplugin/Build/bld.inf	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/Build/bld.inf	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2004-2006 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -24,7 +24,6 @@
 // Exported headers
 
 PRJ_EXPORTS
-../rom/CamcorderMMFPluginStub.SIS /epoc32/data/z/system/install/CamcorderMMFPluginStub.sis
 ../rom/CamcorderMMFPlugin.iby CORE_MW_LAYER_IBY_EXPORT_PATH(CamcorderMMFPlugin.iby)
 
 PRJ_MMPFILES
--- a/camcordermmfplugin/controller/Group/CamCController.mmp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/controller/Group/CamCController.mmp	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -22,22 +22,22 @@
 TARGETTYPE      PLUGIN
 UID             0x10009D8D 0x101F8502
 
-CAPABILITY 	    CAP_ECOM_PLUGIN
+CAPABILITY      CAP_ECOM_PLUGIN
 VENDORID        VID_DEFAULT
+VERSION         10.1
 
 SOURCEPATH      ../Src
 SOURCE          CamCController.cpp
 SOURCE          CamCControllerFactory.cpp
 
 START RESOURCE 101F8502.rss
-TARGET 		    CAMCCONTROLLER.rsc
+TARGET 	        CAMCCONTROLLER.rsc
 END
 
 // Default system include paths for application layer modules.
 MW_LAYER_SYSTEMINCLUDE
 
 USERINCLUDE     ../Inc
-USERINCLUDE	    ../../../inc   // ADo level inc dir
 USERINCLUDE     ../../mediarecorder/Inc
 USERINCLUDE     ../traces
 
--- a/camcordermmfplugin/controller/Src/CamCController.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/controller/Src/CamCController.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -23,13 +23,13 @@
 #include <mmf/server/mmffile.h>
 #include <badesca.h>    // CDesC8ArrayFlat
 #include <AudioPreference.h>                // For MMF audio preference definitions.
+#include <CamCControllerCustomCommands.h>
 #include "CamC3GPDataSink.h"
 #include "CCMRMediaRecorder.h"
 #include "CamC3GPDataSinkObserver.h"
 #include "CamCController.h"
 #include "CCMRSupportedCodecs.h"
 #include "CamCImplementationUIDs.hrh"
-#include "CamCControllerCustomCommands.h"
 
 // LOCAL CONSTANTS AND MACROS
 // Debug print macro
--- a/camcordermmfplugin/filecomposer/Group/camc3GPDataSink.mmp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/filecomposer/Group/camc3GPDataSink.mmp	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -25,15 +25,15 @@
 UID             0x1000008d 0x101F8505	//KSharedLibraryUid
 
 VENDORID        VID_DEFAULT
-CAPABILITY 		CAP_GENERAL_DLL
+CAPABILITY      CAP_GENERAL_DLL
+VERSION         10.1
 
 SOURCEPATH      ../Src
 SOURCE          CamC3GPDataSinkImp.cpp
 
 USERINCLUDE     ../Inc
 USERINCLUDE     ../../mediarecorder/Inc
-USERINCLUDE	../../../inc   // ADo level inc dir
-USERINCLUDE	../traces
+USERINCLUDE     ../traces
 
 // Default system include paths for application layer modules.
 MW_LAYER_SYSTEMINCLUDE
--- a/camcordermmfplugin/mediarecorder/Group/mediarecorder.mmp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/mediarecorder/Group/mediarecorder.mmp	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2008 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -26,11 +26,11 @@
 
 UID             0x1000008d 0x101F8507   //KSharedLibraryUid
 VENDORID        VID_DEFAULT
-CAPABILITY 		CAP_GENERAL_DLL
+CAPABILITY      CAP_GENERAL_DLL
+VERSION         10.1
 
 SOURCEPATH      ../Src
 USERINCLUDE     ../Inc
-USERINCLUDE	    ../../../inc   // ADo level inc dir
 USERINCLUDE     ../traces      // OST traces
 
 // Default system include paths for application layer modules.
@@ -68,12 +68,12 @@
 LIBRARY     bafl.lib
 LIBRARY     devvideo.lib
 LIBRARY     SpeechEncoderConfig.lib
-LIBRARY		imagingconfigmanager.lib
-LIBRARY		AudioInputRouting.lib
+LIBRARY     imagingconfigmanager.lib
+LIBRARY     AudioInputRouting.lib
 
 
 #if defined VIDEO_FILE_INPUT || defined VIDEO_FILE_OUTPUT || defined VIDEO_BS_FILE_OUTPUT || defined AUDIO_FILE_OUTPUT
-LIBRARY         efsrv.lib 
+LIBRARY     efsrv.lib 
 #endif
 
 // The media recorder components
--- a/camcordermmfplugin/mediarecorder/Inc/CCMRVideoRecorder.h	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/mediarecorder/Inc/CCMRVideoRecorder.h	Wed Oct 06 14:52:34 2010 +0300
@@ -522,7 +522,7 @@
         * from encoder to avoid situation where its both in .mp4 file metadata and in bitstream of video track.
         * @return number of bytes removed
         */
-        TInt RemoveNalDecSpecInfoHeader( TDesC8* aVideoBuffer );
+        TInt RemoveNalDecSpecInfoHeaderL( TDesC8* aVideoBuffer );
         
         /**
         * Removes decoder configuration info (SPS & PPS) from first bytestream encapsulated H.264/AVC video buffer
--- a/camcordermmfplugin/mediarecorder/Src/CCMRAacCodecData.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/mediarecorder/Src/CCMRAacCodecData.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -157,12 +157,12 @@
 
     // AAC codec interprets the input as array of TInts, not as a class
     iAACConfigData.Reset();
-	iAACConfigData.Append (iBitRate);	//iBitRate
-	iAACConfigData.Append (iSampleRate);	//iSamplingRate
-	iAACConfigData.Append (0);	//iToolFlags
-	iAACConfigData.Append (iChannels);	//iNumChan
-	iAACConfigData.Append (0);	//iuseFormat 0=RAW; 1=ADTS; 2=ADIF
-	iAACConfigData.Append (0);	// 0 = 1 Frame only; 1 = Full Buffer
+	iAACConfigData.AppendL (iBitRate);	//iBitRate
+	iAACConfigData.AppendL (iSampleRate);	//iSamplingRate
+	iAACConfigData.AppendL (0);	//iToolFlags
+	iAACConfigData.AppendL (iChannels);	//iNumChan
+	iAACConfigData.AppendL (0);	//iuseFormat 0=RAW; 1=ADTS; 2=ADIF
+	iAACConfigData.AppendL (0);	// 0 = 1 Frame only; 1 = Full Buffer
 
     PRINT((_L("CCMRAACCodecData::GetCodecConfigParamL() out")));
     return reinterpret_cast<TDes8*>(&iAACConfigData);
--- a/camcordermmfplugin/mediarecorder/Src/CCMRAudioCodecs.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/mediarecorder/Src/CCMRAudioCodecs.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -92,13 +92,13 @@
         if ( CheckIfInstalledL(TFourCC(KCMRFourCCIdAMRNB), KMmfUidPluginInterfaceHwDevice, KNullUid) )
             {
             PRINT((_L("CCMRAudioCodecs::GetSupportedAudioCodecsL() AMR HW codec found")));
-            iAudioTypesHW.Append( TFourCC(KCMRFourCCIdAMRNB) );
+            iAudioTypesHW.AppendL( TFourCC(KCMRFourCCIdAMRNB) );
             }
         else if ( CheckIfInstalledL(TFourCC(KCMRFourCCIdAMRNB), KMmfUidPluginInterfaceCodec, amr.SWCodecUid() ) )
         // then check for SW codecs
             {
             PRINT((_L("CCMRAudioCodecs::GetSupportedAudioCodecsL() AMR SW codec found")));
-            iAudioTypesSW.Append( TFourCC(KCMRFourCCIdAMRNB) );
+            iAudioTypesSW.AppendL( TFourCC(KCMRFourCCIdAMRNB) );
             }
         // else no AMR codecs => nothing to add to the list
         }
@@ -112,13 +112,13 @@
         if ( CheckIfInstalledL(TFourCC(KCMRFourCCIdMPEG4AAC), KMmfUidPluginInterfaceHwDevice, KNullUid ) )
             {
             PRINT((_L("CCMRAudioCodecs::GetSupportedAudioCodecsL() AAC HW codec found")));
-            iAudioTypesHW.Append( TFourCC(KCMRFourCCIdMPEG4AAC) );
+            iAudioTypesHW.AppendL( TFourCC(KCMRFourCCIdMPEG4AAC) );
             }
         else if ( CheckIfInstalledL(TFourCC(KCMRFourCCIdMPEG4AAC), KMmfUidPluginInterfaceCodec, aac.SWCodecUid() ) )
         // then check for SW codecs
             {
             PRINT((_L("CCMRAudioCodecs::GetSupportedAudioCodecsL() AAC SW codec found")));
-            iAudioTypesSW.Append( TFourCC(KCMRFourCCIdMPEG4AAC) );
+            iAudioTypesSW.AppendL( TFourCC(KCMRFourCCIdMPEG4AAC) );
             }
         // else no AAC codecs => nothing to add to the list
         }
@@ -256,12 +256,12 @@
     for( i = 0; i < iAudioTypesHW.Count(); i++ )
         {
         PRINT((_L("CCMRAudioCodecs::GetSupportedAudioCodecsL() HW codec found, FourCC %d"), iAudioTypesHW[i].FourCC() ));
-        aAudioTypes.Append( iAudioTypesHW[i] );
+        aAudioTypes.AppendL( iAudioTypesHW[i] );
         }
     for( i = 0; i < iAudioTypesSW.Count(); i++ )
         {
         PRINT((_L("CCMRAudioCodecs::GetSupportedAudioCodecsL() SW codec found, FourCC %d"), iAudioTypesSW[i].FourCC() ));
-        aAudioTypes.Append( iAudioTypesSW[i] );
+        aAudioTypes.AppendL( iAudioTypesSW[i] );
         }
     }
 
--- a/camcordermmfplugin/mediarecorder/Src/CCMRAudioInput.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/mediarecorder/Src/CCMRAudioInput.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2004 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2004-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -202,7 +202,7 @@
 //
 void CCMRAudioInput::SourcePauseL()
     {
-    PRINT((_L("CCMRAudioInput::SourcePauseL(), calling iDataSource->SourceStopL")));
+    PRINT((_L("CCMRAudioInput::SourcePauseL(), in")));
     iState = EStateStopping;
 
     // store the latest timestamp - must do it already here, since sending event may reset it and we should not touch it after reset
@@ -276,9 +276,12 @@
 			iTimeStampWhenPaused = iTimeStampWhenPaused.Int64() + (initialDelay*1000);
 			}
 	    }
-
+		
+	// Ensure that after resume, if LatestTimeStampL() is called before UpdateTimeL() has been called it will
+	// return a sensible value.
+	iLatestTimeStamp = iTimeStampWhenPaused.Int64();
     // Stop audio.
-    PRINT((_L("CCMRAudioInput::SourceStopL() DevSound SourceStopL()")));
+    PRINT((_L("CCMRAudioInput::SourcePauseL() DevSound SourceStopL()")));
     devSound->Stop();
 
     if ( iOutputFilled->IsEmpty() )
@@ -883,7 +886,7 @@
     if ( sampleRate )
         {
         TInt64 samples = devSound->SamplesRecorded();
-        PRINT((_L("CCMRAudioInput::UpdateTimeL() samples recorded %d"),I64INT(samples)));
+        PRINT((_L("CCMRAudioInput::UpdateTimeL() samples recorded %Ld"), samples));
 
         samples = samples * 1000000;
         samples = samples / sampleRate;
--- a/camcordermmfplugin/mediarecorder/Src/CCMRMDFVideoRecorder.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/mediarecorder/Src/CCMRMDFVideoRecorder.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -3172,12 +3172,14 @@
         {
         // pictures are returned in different order than they were sent
 		RPointerArray<MFrameBuffer> buffers;
-        buffers.Append(buffer);
-
+        TInt bufError = buffers.Append(buffer);
+        VRASSERT( bufError == KErrNone );
+        
         TUint i;
         for ( i = 1; i < iNumCameraBuffers; i++ )
             {
-            buffers.Append(reinterpret_cast<MFrameBuffer*>(iSourceFifo->Get()));
+            bufError = buffers.Append(reinterpret_cast<MFrameBuffer*>(iSourceFifo->Get()));
+            VRASSERT( bufError == KErrNone );
 
             TRAP(error, (tmp = static_cast<TPtr8*>(buffers[i]->DataL(0))));
             if ( tmp == aPicture->iData.iRawData )
@@ -3207,7 +3209,6 @@
 
     iEncoderInputQueueLength--;
 
-
     // save the picture holder to fifo
     TRAPD( err, iCodingFifo->PutL( reinterpret_cast<TAny*>(aPicture) ));
     if ( err != KErrNone )
@@ -3526,7 +3527,13 @@
                 // Removes SPS & PPS from first frame from encoder to avoid situation where its both in
                 // .mp4 file metadata and in bitstream of video track.
                 // Make sure buffer contains only one frame and rewrite encapsulation to make sure its ok.
-                RemoveNalDecSpecInfoHeader( reinterpret_cast<TDesC8*>(&iOutputVideoBuffer->iData) );
+                TRAPD( error, RemoveNalDecSpecInfoHeaderL( reinterpret_cast<TDesC8*>(&iOutputVideoBuffer->iData) ) );
+                if ( error != KErrNone )
+                    {
+                    PRINT((_L("CCMRVideoRecorder::GetNextBuffer() RemoveNalDecSpecInfoHeaderL error %d"), error ));
+                    DoSendEventToClient( KCMRRunTimeError, error );
+                    return NULL;
+                    }
                 outputMediaBufferSet = ETrue;
                 }
             else if ( iVideoBufferType == CCMRMediaBuffer::EVideoH264Bytestream )
@@ -3876,13 +3883,13 @@
     }
 
 // -----------------------------------------------------------------------------
-// CCMRVideoRecorder::RemoveNalDecSpecInfoHeader( TDesC8* aVideoBuffer )
+// CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL( TDesC8* aVideoBuffer )
 // Removes decoder configuration info (SPS & PPS) from first NAL encapsulated H.264/AVC video buffer
 // from encoder to avoid situation where its both in .mp4 file metadata and in bitstream of video track.
 // Makes sure buffer contains only one frame and rewrite encapsulation to make sure its ok.
 // -----------------------------------------------------------------------------
 //
-TInt CCMRVideoRecorder::RemoveNalDecSpecInfoHeader( TDesC8* aVideoBuffer )
+TInt CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL( TDesC8* aVideoBuffer )
 	{
 	// H.264 AVC NAL /  EDuGenericPayload / NAL encapsulation
 
@@ -3901,7 +3908,7 @@
     RArray<TInt> nalSizes;
     RArray<TInt> nalStarts;
 
-    PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() in, length: %d "), buffer.Length() ));
+    PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() in, length: %d "), buffer.Length() ));
 
 	// There should be enough data for the NAL header + frame
     if ( buffer.Length() > 12 )
@@ -3925,7 +3932,7 @@
                         (TInt(buffer[offset + 2]) << 16) +
                         (TInt(buffer[offset + 3]) << 24);
 
-            PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() NAL unit %d frame start: %d "), i, frameStart ));
+            PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() NAL unit %d frame start: %d "), i, frameStart ));
 
             // Get frame size
             offset += 4;
@@ -3934,21 +3941,21 @@
                        (TInt(buffer[offset + 2]) << 16) +
                        (TInt(buffer[offset + 3]) << 24);
 
-           PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() NAL unit %d frame size: %d "), i, frameSize ));
+           PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() NAL unit %d frame size: %d "), i, frameSize ));
            bufType = buffer[frameStart] & 0x1F;
-           PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() NAL unit %d type: %d "), i, bufType ));
+           PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() NAL unit %d type: %d "), i, bufType ));
            if ( bufType != 7 && //SPS
                 bufType != 8 )//PPS
                {
                // we found first NAL unit that isn't SPS or PPS
-               nalSizes.Append(frameSize);
+               nalSizes.AppendL(frameSize);
                if (firstCopiedNAL==0)
                    {
                    firstCopiedNAL = frameStart;
                    }
-               nalStarts.Append(frameStart-firstCopiedNAL);               
+               nalStarts.AppendL(frameStart-firstCopiedNAL);               
                totalNALLength = frameStart+frameSize-firstCopiedNAL;
-               PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() new total length: %d, padding: %d "), totalNALLength, totalNALLength%4 ));
+               PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() new total length: %d, padding: %d "), totalNALLength, totalNALLength%4 ));
                totalNALLength += totalNALLength%4;
                }
            }
@@ -3956,18 +3963,18 @@
         // The buffer should have enough space for the new NAL header
 
         // We need to write a new NAL header just after the frame end
-        PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() writing new header.")));
+        PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() writing new header.")));
         offset = firstCopiedNAL + totalNALLength;
         
         if ( (offset + nalSizes.Count()*8 + 4) > buffer.Length() ) 
             {
-            PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() Fatal error, cannot create header, non-align 32bit encoder output buffer.")));
+            PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() Fatal error, cannot create header, non-align 32bit encoder output buffer.")));
             VRASSERT(0);            
             }
 
         for (TInt j=0; j<nalSizes.Count(); j++)
             {
-            PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeader() new header, unit: %d, start: %d, size: %d."), j, nalStarts[j], nalSizes[j] ));            
+            PRINT((_L("CCMRVideoRecorder::RemoveNalDecSpecInfoHeaderL() new header, unit: %d, start: %d, size: %d."), j, nalStarts[j], nalSizes[j] ));            
             // Write NAL unit start position
             buffer[offset + 0] = TUint8(nalStarts[j] & 0xff);
             buffer[offset + 1] = TUint8((nalStarts[j] >> 8) & 0xff);
--- a/camcordermmfplugin/mediarecorder/Src/CCMRMediaRecorderImp.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/mediarecorder/Src/CCMRMediaRecorderImp.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -1550,10 +1550,14 @@
 		TRequestStatus *tmp=(&iStatus);
 		User::RequestComplete(tmp,0);
         }
-    iErrors.Append( TCMRError(aError, EErrorFatal) );
+    TInt error = iErrors.Append( TCMRError(aError, EErrorFatal) );
+    if ( error != KErrNone )
+        {
+        PRINT((_L("CCMRMediaRecorderImp::CCMRErrorReporter::FatalError() OOM error in storing error code.")));
+        MRASSERT( 0 );        
+        }    
     }
 
-
 // -----------------------------------------------------------------------------
 // CCMRMediaRecorderImp::CCMRErrorReporter::TemporaryError
 // Report temporary error
@@ -1569,7 +1573,12 @@
 		TRequestStatus *tmp=(&iStatus);
 		User::RequestComplete(tmp,0);
         }
-    iErrors.Append( TCMRError(aError, EErrorTemp) );
+    TInt error = iErrors.Append( TCMRError(aError, EErrorTemp) );
+    if ( error != KErrNone )
+        {
+        PRINT((_L("CCMRMediaRecorderImp::CCMRErrorReporter::TemporaryError() OOM error in storing error code.")));
+        MRASSERT( 0 );        
+        }
     }
 
 // -----------------------------------------------------------------------------
--- a/camcordermmfplugin/rom/CamcorderMMFPlugin.iby	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/rom/CamcorderMMFPlugin.iby	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2002-2006 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -26,6 +26,4 @@
 file=ABI_DIR\BUILD_DIR\CAMC3GPSINK.DLL			SHARED_LIB_DIR\CAMC3GPSINK.DLL
 file=ABI_DIR\BUILD_DIR\CAMCMEDIARECORDER.DLL 		SHARED_LIB_DIR\CAMCMEDIARECORDER.DLL
 
-//data=ZSYSTEM\install\CamcorderMMFPluginStub.sis       system\install\CamcorderMMFPluginStub.sis
-
 #endif	//__CAMCORDERMMFPLUGIN_IBY__
Binary file camcordermmfplugin/rom/CamcorderMMFPluginStub.SIS has changed
--- a/camcordermmfplugin/rom/CamcorderMMFPluginStub.pkg	Fri Sep 24 10:34:11 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,33 +0,0 @@
-;
-; Copyright (c) 2009 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description:CamcorderMMFPluginStub.pkg
-;
-; Languages
-&EN
-
-; Header
-#{"CamcorderMMFPlugin"}, (0x101F8502), 1, 0, 0
-
-; Localised Vendor name
-%{"Nokia"}
-
-; Unique Vendor name
-:"Nokia"
-
-;Files
-""-"z:\sys\bin\CAMCCONTROLLER.DLL"
-""-"z:\sys\bin\CamcMediaRecorder.dll"
-""-"z:\sys\bin\camc3gpsink.dll"
-
-
--- a/camcordermmfplugin/tsrc/public/basic/Group/StifCamcTest.mmp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/Group/StifCamcTest.mmp	Wed Oct 06 14:52:34 2010 +0300
@@ -63,7 +63,6 @@
 USERINCLUDE   ../inc
 USERINCLUDE   ../inc/TestFrameWork
 USERINCLUDE   ../../../../Controller/inc
-USERINCLUDE   ../../../../../inc
 
 MW_LAYER_SYSTEMINCLUDE
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTestClient_5.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTestClient_5.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -19,9 +19,9 @@
 
 // INCLUDE FILES
 
-#include "CamcTestClient_5.h"
+#include "camctestclient_5.h"
 #include "badesca.h"
-#include "camctest.h"
+#include "camcTest.h"
 #include <AudioPreference.h>
 
 // EXTERNAL DATA STRUCTURES
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTestClient_9.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTestClient_9.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -19,12 +19,12 @@
 
 // INCLUDE FILES
 
-#include "CamcTestClient_9.h"
-#include "CamCControllerCustomCommands.h"
+#include "camctestclient_9.h"
+#include <CamCControllerCustomCommands.h>
 #include <mmf/common/mmfstandardcustomcommands.h>
 #include <mmf/server/mmffile.h>
 #include <AudioPreference.h>
-#include "camctest.h"
+#include "camcTest.h"
 
 
 // EXTERNAL DATA STRUCTURES
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTestClient_visualcheckdsp.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTestClient_visualcheckdsp.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -19,7 +19,7 @@
 
 // INCLUDE FILES
 
-#include "CamcTestClient_visualcheckdsp.h"
+#include "camctestclient_visualcheckdsp.h"
 #include <AudioPreference.h>
 
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTestTop.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTestTop.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -90,6 +90,7 @@
 MTest* CCamcTestTop::suiteL ()
     {
     CTestSuite *suite = CTestSuite::NewL(_L8("Test Suite Container"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CCamcTest_1::suiteL());
     suite->addTestL(CCamcTest_2::suiteL());
@@ -108,6 +109,7 @@
     // suite->addTestL(CCamcTest_visualcheckdsp::suiteL()); 
     // suite->addTestL(CCamcTest_visualcheck::suiteL()); 
 
+    CleanupStack::Pop( suite );
     return suite;
     
     }
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_1.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_1.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,7 +18,7 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_1.h"
+#include "camcTest_1.h"
 #include <bldvariant.hrh>
 
 
@@ -845,6 +845,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_1"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_001"), &OpenFileL_001_L));
     suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_002"), &OpenFileL_002_L));
@@ -875,7 +876,7 @@
     suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENDESCL_001"), &OpenDesL_001_L));
     suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENURLL_001"), &OpenUrlL_001_L));
     
-    
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_2.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_2.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,8 +18,8 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_2.h"
-#include "CamcTest.h"
+#include "camcTest_2.h"
+#include "camcTest.h"
 
 
 // EXTERNAL DATA STRUCTURES
@@ -178,16 +178,28 @@
     TFileName fileName;
 
     AddDriveLetterToPath(_L("recordQCIF.3gp"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
-    assertTIntsEqualL( KErrNone, err );
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        file.Close();
+        fsSession.Close();
+        assertTIntsEqualL( KErrNone, err );
+        }
     
     AddDriveLetterToPath(_L("CamcorderTmpDir"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
-    assertTIntsEqualL( KErrNotFound, err );
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        file.Close();
+        fsSession.Close();
+        assertTIntsEqualL( KErrNotFound, err );
+        }
 
     AddDriveLetterToPath(_L("CamcorderTMP"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
-    assertTIntsEqualL( KErrNotFound, err );
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        file.Close();
+        fsSession.Close();
+        assertTIntsEqualL( KErrNotFound, err );
+        }
 
     file.Close();
     fsSession.Close();
@@ -1130,7 +1142,8 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("State Transition tests (CamcTest2)"));
-
+    CleanupStack::PushL( suite );
+        
     suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_001"), &Close_001_L));
     suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_002"), &Close_002_L));
     suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_003"), &Close_003_L)); 
@@ -1211,6 +1224,7 @@
     suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_003"), &SetAudioTypeL_003_L));
     suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_004"), &SetAudioTypeL_004_L));
     
+    CleanupStack::Pop( suite );
     return suite;
     }
     
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_3.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_3.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,7 +18,7 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_3.h"
+#include "camcTest_3.h"
 
 // EXTERNAL DATA STRUCTURES
 
@@ -246,8 +246,10 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_3"));
+    CleanupStack::PushL( suite );
     
     suite->addTestL(CTestCaller<CCamcTest_3>::NewL(_L8("CAMC_API.NEWL_001"), &NewL_001_L));
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_4.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_4.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,8 +18,8 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_4.h"
-#include "CamcTest.h"
+#include "camcTest_4.h"
+#include "camcTest.h"
 
 // EXTERNAL DATA STRUCTURES
 
@@ -126,7 +126,11 @@
     fsSession.Connect();
     TFileName fileName;
     AddDriveLetterToPath(_L("recordQCIF.3gp"),fileName);
-    TInt err = file.Open(fsSession,fileName,EFileShareAny);
+    TInt err;
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        fsSession.Close();
+        }
     assertTIntsEqualL( KErrNone, err );
 
     err = file.Size(filesize);
@@ -341,6 +345,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_4"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_001"), &RecordTimeAvailableL_001_L));
 #if ! (defined (__WINS__) || defined (__WINSCW__) )
@@ -355,6 +360,7 @@
 //    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_006"), &RecordTimeAvailableL_006_L));
 #endif
   
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_5.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_5.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,8 +18,8 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_5.h"
-#include "CamcTest.h"
+#include "camcTest_5.h"
+#include "camcTest.h"
 #include <bldvariant.hrh>
 
 
@@ -921,6 +921,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_5"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.NUMBEROFMETADATAENTRIESL_001"), &NumberOfMetaDataEntriesL_001_L));
     suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.NUMBEROFMETADATAENTRIESL_002"), &NumberOfMetaDataEntriesL_002_L));
@@ -991,6 +992,7 @@
     // AMR-only
     suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDAUDIOTYPESL_001"), &GetSupportedAudioTypes_001_L));
 
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_6.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_6.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,8 +18,8 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_6.h"
-#include "CamcTest.h"
+#include "camcTest_6.h"
+#include "camcTest.h"
 #include <bldvariant.hrh>
 
 
@@ -186,7 +186,11 @@
     fsSession.Connect();
     TFileName fileName;
     AddDriveLetterToPath(_L("recordQCIF.3gp"),fileName);
-    TInt err = file.Open(fsSession,fileName,EFileShareAny);
+    TInt err;
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        fsSession.Close();
+        }
     assertTIntsEqualL( KErrNone, err );
 
     err = file.Size(filesize);
@@ -910,6 +914,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_6")); 
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.PAUSEL_003"), &PauseL_003_L));
 
@@ -984,6 +989,7 @@
     suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_002"), &DurationL_002_L));   
     suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_003"), &DurationL_003_L));   
 
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_7.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_7.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,7 +18,7 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_7.h"
+#include "camcTest_7.h"
 
 // EXTERNAL DATA STRUCTURES
 
@@ -171,6 +171,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_7"));   
+    CleanupStack::PushL( suite );
     
     suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_007"), &OpenFileL_007_L));
     suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_013"), &OpenFileL_013_L));
@@ -178,6 +179,8 @@
     suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_015"), &OpenFileL_015_L));
 // Removed from MuDo tests
 //    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.CLOSE_006"), &Close_006_L));
+
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_8.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_8.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,8 +18,8 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_8.h"
-#include "CamcTest.h"
+#include "camcTest_8.h"
+#include "camcTest.h"
 
 // EXTERNAL DATA STRUCTURES
 
@@ -457,6 +457,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_8"));   
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_001"), &MultipleInstance_001_L));
     
@@ -466,6 +467,7 @@
     suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_005"), &MultipleInstance_005_L));
     suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_006"), &MultipleInstance_006_L));
     
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_9.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_9.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,8 +18,8 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_9.h"
-#include "CamcTest.h"
+#include "camcTest_9.h"
+#include "camcTest.h"
 #include <bldvariant.hrh>
 
 
@@ -546,7 +546,10 @@
     TInt err;
     TFileName fileName;
     AddDriveLetterToPath(_L("non-existent-folder\\recordQCIF.3gp"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        fsSession.Close();
+        }
     assertTIntsEqualL( KErrNone, err );
 
     file.Close();
@@ -681,6 +684,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_9"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_007"), &Prepare_007_L));
     suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_008"), &Prepare_008_L));
@@ -710,7 +714,8 @@
 #endif
 
     suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.OPENFILEL_016"), &OpenFileL_016_L));
-   
+
+    CleanupStack::Pop( suite );   
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_visualcheck.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_visualcheck.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,7 +18,7 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_visualcheck.h"
+#include "camcTest_visualcheck.h"
 #include <bldvariant.hrh>
 
 
@@ -650,6 +650,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_visualcheck"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_101"), &VisualCheck_101_L));
     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_102"), &VisualCheck_102_L));
@@ -675,7 +676,8 @@
      
      suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_116"), &VisualCheck_116_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_117"), &VisualCheck_117_L));
+     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_117"), &VisualCheck_117_L));
+     
 #ifdef __MPEG4_VIDEO_ENCODING
     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_118"), &VisualCheck_118_L));
 #endif
@@ -692,6 +694,7 @@
     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_121"), &VisualCheck_121_L));
 #endif
 
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camcordermmfplugin/tsrc/public/basic/src/camcTest_visualcheckdsp.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camcordermmfplugin/tsrc/public/basic/src/camcTest_visualcheckdsp.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -18,7 +18,7 @@
 
 
 // INCLUDE FILES
-#include "CamcTest_visualcheckdsp.h"
+#include "camcTest_visualcheckdsp.h"
 
 
 // EXTERNAL DATA STRUCTURES
@@ -767,6 +767,7 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_visualcheckdsp"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_001"), &VisualCheck_001_L));
     suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_002"), &VisualCheck_002_L));
@@ -795,12 +796,11 @@
 //    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_017"), &VisualCheck_017_L));
     suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_017_A"), &VisualCheck_017_A_L));
 #endif
-
 #ifdef MP4_FILE_FORMAT_SUPPORTED
     suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_021"), &VisualCheck_021_L));
 #endif
 
-    
+    CleanupStack::Pop( suite );    
     return suite;
     }
 
--- a/camerasrv_plat/imaging_configuration_manager_api/tsrc/inc/ICMSTIF.h	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/imaging_configuration_manager_api/tsrc/inc/ICMSTIF.h	Wed Oct 06 14:52:34 2010 +0300
@@ -32,7 +32,7 @@
 // Function pointer related internal definitions
 // Hack around known GCC bug.
 #ifndef __GCC32__
-#define GETPTR
+#define GETPTR &
 #else
 #define GETPTR &
 #endif  
--- a/camerasrv_plat/imaging_configuration_manager_api/tsrc/src/ICMSTIF.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/imaging_configuration_manager_api/tsrc/src/ICMSTIF.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -180,17 +180,17 @@
     static TCaseInfoInternal const KCases[] =
         {
         // To add new test cases, add new items to this array
-		ENTRY( "TestCase001", TestCase_001L ),
-		ENTRY( "TestCase002", TestCase_002L ),
-        ENTRY( "TestCase003", TestCase_003L ),
-        ENTRY( "TestCase004", TestCase_004L ),
-        ENTRY( "TestCase005", TestCase_005L ),
-        ENTRY( "TestCase006", TestCase_006L ),
-        ENTRY( "TestCase007", TestCase_007L ),
-        ENTRY( "TestCase008", TestCase_008L ),
-        ENTRY( "TestCase009", TestCase_009L ),
-        ENTRY( "TestCase010", TestCase_010L ),
-        ENTRY( "TestOOM", TestCase_OOML )
+		ENTRY( "TestCase001", CICMSTIF::TestCase_001L ),
+		ENTRY( "TestCase002", CICMSTIF::TestCase_002L ),
+        ENTRY( "TestCase003", CICMSTIF::TestCase_003L ),
+        ENTRY( "TestCase004", CICMSTIF::TestCase_004L ),
+        ENTRY( "TestCase005", CICMSTIF::TestCase_005L ),
+        ENTRY( "TestCase006", CICMSTIF::TestCase_006L ),
+        ENTRY( "TestCase007", CICMSTIF::TestCase_007L ),
+        ENTRY( "TestCase008", CICMSTIF::TestCase_008L ),
+        ENTRY( "TestCase009", CICMSTIF::TestCase_009L ),
+        ENTRY( "TestCase010", CICMSTIF::TestCase_010L ),
+        ENTRY( "TestOOM",     CICMSTIF::TestCase_OOML )
         };
 
     // Verify that case number is valid
@@ -271,6 +271,7 @@
 	_LIT8(KPreferredSupplier, "Nokia");
 	const TUint32 KAudioFourCCType = 0x524D4120;
 	CImagingConfigManager* icm = CImagingConfigManager::NewL();
+	CleanupStack::PushL( icm );
     CArrayFixFlat<TUint>* levels = new( ELeave ) CArrayFixFlat< TUint >( 1 );
     TVideoQualitySet videoset;
     icm->GetVideoQualityLevelsL(*levels);
@@ -345,6 +346,7 @@
     		aResult.iResultDes = _L("GetVideoQualitySetL() OK.");
             }
         }
+    CleanupStack::Pop( icm );
     delete levels;
 	delete icm;
     return KErrNone;
@@ -517,6 +519,7 @@
 	_LIT8(KImageFileMimeType, "image/jpeg");
 	_LIT8(KImageFileExtension, ".jpg");
 	CImagingConfigManager* icm = CImagingConfigManager::NewL();
+	CleanupStack::PushL( icm );
     CArrayFixFlat<TUint>* levels = new( ELeave ) CArrayFixFlat< TUint >( 1 );
     TImageQualitySet imageset;
     icm->GetImageQualityLevelsL(*levels, 2);
@@ -576,6 +579,7 @@
     		aResult.iResultDes = _L("GetImageQualityLevelsL() OK.");
             }
         }
+    CleanupStack::Pop( icm );
     delete levels;
 	delete icm;
     return KErrNone;
--- a/camerasrv_plat/media_recorder_api/tsrc/group/StifCamcTest.mmp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/group/StifCamcTest.mmp	Wed Oct 06 14:52:34 2010 +0300
@@ -63,7 +63,6 @@
 USERINCLUDE   ../inc
 USERINCLUDE   ../inc/TestFrameWork
 USERINCLUDE   ../../../../camcordermmfplugin/controller/Inc
-USERINCLUDE   ../../../../inc
 
 MW_LAYER_SYSTEMINCLUDE
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_5.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_5.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -763,7 +763,7 @@
                         iUiLevelCameraHandle, 
                         controllerUid,
                         formatUid ));
-
+                    err++;
                     CTimer::After(2 * TInt32 ( 1E6 ) ); // Wait 2 seconds
                     iPrepare2ndTime = ETrue;
                     break;
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_9.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_9.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -20,7 +20,7 @@
 // INCLUDE FILES
 
 #include "camctestclient_9.h"
-#include "CamCControllerCustomCommands.h"
+#include <CamCControllerCustomCommands.h>
 #include <mmf/common/mmfstandardcustomcommands.h>
 #include <mmf/server/mmffile.h>
 #include <AudioPreference.h>
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_visualcheckdsp.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTestClient_visualcheckdsp.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -837,7 +837,7 @@
     }
 
 
-_LIT(KMyPanicDescriptor, "Callback error");
+//_LIT(KMyPanicDescriptor, "Callback error");
 void CCamcTestClient_visualcheckdsp::MvruoOpenComplete( TInt aError )
     {
     if (aError)
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTestTop.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTestTop.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -90,6 +90,7 @@
 MTest* CCamcTestTop::suiteL ()
     {
     CTestSuite *suite = CTestSuite::NewL(_L8("Test Suite Container"));
+    CleanupStack::PushL( suite );
 
     suite->addTestL(CCamcTest_1::suiteL());
     suite->addTestL(CCamcTest_2::suiteL());
@@ -108,6 +109,7 @@
     // suite->addTestL(CCamcTest_visualcheckdsp::suiteL()); 
     // suite->addTestL(CCamcTest_visualcheck::suiteL()); 
 
+    CleanupStack::Pop( suite );
     return suite;
     
     }
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_1.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_1.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -793,35 +793,36 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_1"));
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_001"), &OpenFileL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_002"), &OpenFileL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_001"), &CCamcTest_1::OpenFileL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_002"), &CCamcTest_1::OpenFileL_002_L));
     // OPENFILEL_003 is not a valid test case.
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_004"), &OpenFileL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_004"), &CCamcTest_1::OpenFileL_004_L));
     // OPENFILEL_005 is not relevent in current configuration.
       
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_005"), &OpenFileL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_005"), &CCamcTest_1::OpenFileL_005_L));
 #endif
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_006"), &OpenFileL_006_L));
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_008"), &OpenFileL_008_L));
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_009"), &OpenFileL_009_L));
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_010"), &OpenFileL_010_L));
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_011"), &OpenFileL_011_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_006"), &CCamcTest_1::OpenFileL_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_008"), &CCamcTest_1::OpenFileL_008_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_009"), &CCamcTest_1::OpenFileL_009_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_010"), &CCamcTest_1::OpenFileL_010_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_011"), &CCamcTest_1::OpenFileL_011_L));
   
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_017"), &OpenFileL_017_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_017"), &CCamcTest_1::OpenFileL_017_L));
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_018"), &OpenFileL_018_L));   
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_018"), &CCamcTest_1::OpenFileL_018_L));   
 #endif
 #ifdef MP4_FILE_FORMAT_SUPPORTED
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_020"), &OpenFileL_020_L));   
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_021"), &OpenFileL_021_L));   
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_020"), &CCamcTest_1::OpenFileL_020_L));   
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENFILEL_021"), &CCamcTest_1::OpenFileL_021_L));   
 #endif
     
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENDESCL_001"), &OpenDesL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENURLL_001"), &OpenUrlL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENDESCL_001"), &CCamcTest_1::OpenDesL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_1>::NewL(_L8("CAMC_API.OPENURLL_001"), &CCamcTest_1::OpenUrlL_001_L));
     
-    
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_2.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_2.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -178,16 +178,28 @@
     TFileName fileName;
 
     AddDriveLetterToPath(_L("recordQCIF.3gp"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
-    assertTIntsEqualL( KErrNone, err );
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        file.Close();
+        fsSession.Close();
+        assertTIntsEqualL( KErrNone, err );
+        }
     
     AddDriveLetterToPath(_L("CamcorderTmpDir"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
-    assertTIntsEqualL( KErrNotFound, err );
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        file.Close();
+        fsSession.Close();
+        assertTIntsEqualL( KErrNotFound, err );
+        }
 
     AddDriveLetterToPath(_L("CamcorderTMP"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
-    assertTIntsEqualL( KErrNotFound, err );
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        file.Close();
+        fsSession.Close();
+        assertTIntsEqualL( KErrNotFound, err );
+        }
 
     file.Close();
     fsSession.Close();
@@ -1130,87 +1142,89 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("State Transition tests (CamcTest2)"));
-
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_001"), &Close_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_002"), &Close_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_003"), &Close_003_L)); 
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_004"), &Close_004_L)); 
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_005"), &Close_005_L));
+    CleanupStack::PushL( suite );
+        
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_001"), &CCamcTest_2::Close_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_002"), &CCamcTest_2::Close_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_003"), &CCamcTest_2::Close_003_L)); 
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_004"), &CCamcTest_2::Close_004_L)); 
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_005"), &CCamcTest_2::Close_005_L));
 #ifdef MP4_FILE_FORMAT_SUPPORTED
 #if ((!defined __WINS__) || (!defined __WINSCW__)) // AAC supported only in HW
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_007"), &Close_007_L)); 
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.CLOSE_007"), &CCamcTest_2::Close_007_L)); 
 #endif
 #endif
     
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_001"), &Prepare_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_002"), &Prepare_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_003"), &Prepare_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_004"), &Prepare_004_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_005"), &Prepare_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_006"), &Prepare_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_001"), &CCamcTest_2::Prepare_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_002"), &CCamcTest_2::Prepare_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_003"), &CCamcTest_2::Prepare_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_004"), &CCamcTest_2::Prepare_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_005"), &CCamcTest_2::Prepare_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.PREPARE_006"), &CCamcTest_2::Prepare_006_L));
    
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_001"), &Record_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_002"), &Record_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_003"), &Record_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_001"), &CCamcTest_2::Record_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_002"), &CCamcTest_2::Record_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_003"), &CCamcTest_2::Record_003_L));
     
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_004"), &Record_004_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_005"), &Record_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_001"), &SetPriorityL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_002"), &SetPriorityL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_003"), &SetPriorityL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_004"), &SetPriorityL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_004"), &CCamcTest_2::Record_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.RECORD_005"), &CCamcTest_2::Record_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_001"), &CCamcTest_2::SetPriorityL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_002"), &CCamcTest_2::SetPriorityL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_003"), &CCamcTest_2::SetPriorityL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETPRIORITYL_004"), &CCamcTest_2::SetPriorityL_004_L));
     
   
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_001"), &SetVideoFrameRateL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_002"), &SetVideoFrameRateL_002_L));     
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_003"), &SetVideoFrameRateL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_004"), &SetVideoFrameRateL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_001"), &CCamcTest_2::SetVideoFrameRateL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_002"), &CCamcTest_2::SetVideoFrameRateL_002_L));     
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_003"), &CCamcTest_2::SetVideoFrameRateL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_004"), &CCamcTest_2::SetVideoFrameRateL_004_L));
     
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_001"), &SetVideoFrameSizeL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_002"), &SetVideoFrameSizeL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_003"), &SetVideoFrameSizeL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_004"), &SetVideoFrameSizeL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_001"), &CCamcTest_2::SetVideoFrameSizeL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_002"), &CCamcTest_2::SetVideoFrameSizeL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_003"), &CCamcTest_2::SetVideoFrameSizeL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_004"), &CCamcTest_2::SetVideoFrameSizeL_004_L));
 
 #ifdef MP4_FILE_FORMAT_SUPPORTED
 #if ((!defined __WINS__) || (!defined __WINSCW__)) // AAC supported only in HW
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_007"), &SetVideoFrameSizeL_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_007"), &CCamcTest_2::SetVideoFrameSizeL_007_L));
 #endif
 #endif
    
     
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_001"), &SetVideoBitRateL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_002"), &SetVideoBitRateL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_003"), &SetVideoBitRateL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_004"), &SetVideoBitRateL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_001"), &CCamcTest_2::SetVideoBitRateL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_002"), &CCamcTest_2::SetVideoBitRateL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_003"), &CCamcTest_2::SetVideoBitRateL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_004"), &CCamcTest_2::SetVideoBitRateL_004_L));
 
     
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_001"), &SetAudioBitRateL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_002"), &SetAudioBitRateL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_003"), &SetAudioBitRateL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_004"), &SetAudioBitRateL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_001"), &CCamcTest_2::SetAudioBitRateL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_002"), &CCamcTest_2::SetAudioBitRateL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_003"), &CCamcTest_2::SetAudioBitRateL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_004"), &CCamcTest_2::SetAudioBitRateL_004_L));
     
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_001"), &SetAudioEnabledL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_002"), &SetAudioEnabledL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_003"), &SetAudioEnabledL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_004"), &SetAudioEnabledL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_001"), &CCamcTest_2::SetAudioEnabledL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_002"), &CCamcTest_2::SetAudioEnabledL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_003"), &CCamcTest_2::SetAudioEnabledL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_004"), &CCamcTest_2::SetAudioEnabledL_004_L));
     
 
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_001"), &SetMaxClipSizeL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_002"), &SetMaxClipSizeL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_003"), &SetMaxClipSizeL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_004"), &SetMaxClipSizeL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_001"), &CCamcTest_2::SetMaxClipSizeL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_002"), &CCamcTest_2::SetMaxClipSizeL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_003"), &CCamcTest_2::SetMaxClipSizeL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_004"), &CCamcTest_2::SetMaxClipSizeL_004_L));
     
 
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_001"), &SetVideoTypeL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_002"), &SetVideoTypeL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_003"), &SetVideoTypeL_003_L));  
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_004"), &SetVideoTypeL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_001"), &CCamcTest_2::SetVideoTypeL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_002"), &CCamcTest_2::SetVideoTypeL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_003"), &CCamcTest_2::SetVideoTypeL_003_L));  
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_004"), &CCamcTest_2::SetVideoTypeL_004_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_001"), &SetAudioTypeL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_002"), &SetAudioTypeL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_003"), &SetAudioTypeL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_004"), &SetAudioTypeL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_001"), &CCamcTest_2::SetAudioTypeL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_002"), &CCamcTest_2::SetAudioTypeL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_003"), &CCamcTest_2::SetAudioTypeL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_2>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_004"), &CCamcTest_2::SetAudioTypeL_004_L));
     
+    CleanupStack::Pop( suite );
     return suite;
     }
     
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_3.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_3.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -246,8 +246,10 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_3"));
+    CleanupStack::PushL( suite );
     
-    suite->addTestL(CTestCaller<CCamcTest_3>::NewL(_L8("CAMC_API.NEWL_001"), &NewL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_3>::NewL(_L8("CAMC_API.NEWL_001"), &CCamcTest_3::NewL_001_L));
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_4.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_4.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -126,7 +126,11 @@
     fsSession.Connect();
     TFileName fileName;
     AddDriveLetterToPath(_L("recordQCIF.3gp"),fileName);
-    TInt err = file.Open(fsSession,fileName,EFileShareAny);
+    TInt err;
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        fsSession.Close();
+        }
     assertTIntsEqualL( KErrNone, err );
 
     err = file.Size(filesize);
@@ -341,20 +345,22 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_4"));
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_001"), &RecordTimeAvailableL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_001"), &CCamcTest_4::RecordTimeAvailableL_001_L));
 #if ! (defined (__WINS__) || defined (__WINSCW__) )
-    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_002"), &RecordTimeAvailableL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_002"), &CCamcTest_4::RecordTimeAvailableL_002_L));
 #endif
-    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_003"), &RecordTimeAvailableL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_004"), &RecordTimeAvailableL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_003"), &CCamcTest_4::RecordTimeAvailableL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_004"), &CCamcTest_4::RecordTimeAvailableL_004_L));
 
     // RecordTimeAvailableL_006, only to be tested on HW
     // Removed from MuDo tests
 #if ! (defined (__WINS__) || defined (__WINSCW__) )
-//    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_006"), &RecordTimeAvailableL_006_L));
+//    suite->addTestL(CTestCaller<CCamcTest_4>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLE_006"), &CCamcTest_4::RecordTimeAvailableL_006_L));
 #endif
   
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_5.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_5.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -921,75 +921,77 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_5"));
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.NUMBEROFMETADATAENTRIESL_001"), &NumberOfMetaDataEntriesL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.NUMBEROFMETADATAENTRIESL_002"), &NumberOfMetaDataEntriesL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.NUMBEROFMETADATAENTRIESL_001"), &CCamcTest_5::NumberOfMetaDataEntriesL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.NUMBEROFMETADATAENTRIESL_002"), &CCamcTest_5::NumberOfMetaDataEntriesL_002_L));
  
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.METADATAENTRYL_001"), &MetaDataEntryL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.METADATAENTRYL_002"), &MetaDataEntryL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.METADATAENTRYL_001"), &CCamcTest_5::MetaDataEntryL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.METADATAENTRYL_002"), &CCamcTest_5::MetaDataEntryL_002_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.ADDMETADATAENTRYL_001"), &AddMetaDataEntryL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.ADDMETADATAENTRYL_002"), &AddMetaDataEntryL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.ADDMETADATAENTRYL_001"), &CCamcTest_5::AddMetaDataEntryL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.ADDMETADATAENTRYL_002"), &CCamcTest_5::AddMetaDataEntryL_002_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REMOVEMETADATAENTRYL_001"), &RemoveMetaDataEntryL_001_L));   
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REMOVEMETADATAENTRYL_002"), &RemoveMetaDataEntryL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REMOVEMETADATAENTRYL_001"), &CCamcTest_5::RemoveMetaDataEntryL_001_L));   
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REMOVEMETADATAENTRYL_002"), &CCamcTest_5::RemoveMetaDataEntryL_002_L));
     
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REPLACEMETADATAENTRYL_001"), &ReplaceMetaDataEntryL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REPLACEMETADATAENTRYL_002"), &ReplaceMetaDataEntryL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REPLACEMETADATAENTRYL_001"), &CCamcTest_5::ReplaceMetaDataEntryL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.REPLACEMETADATAENTRYL_002"), &CCamcTest_5::ReplaceMetaDataEntryL_002_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETPRIORITYL_005"), &SetPriorityL_005_L));     
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETPRIORITYL_001"), &GetPriorityL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETPRIORITYL_005"), &CCamcTest_5::SetPriorityL_005_L));     
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETPRIORITYL_001"), &CCamcTest_5::GetPriorityL_001_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_005"), &SetVideoFrameRateL_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.VIDEOFRAMERATEL_001"), &VideoFrameRateL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETVIDEOFRAMERATEL_005"), &CCamcTest_5::SetVideoFrameRateL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.VIDEOFRAMERATEL_001"), &CCamcTest_5::VideoFrameRateL_001_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_005"), &SetVideoBitRateL_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.VIDEOBITRATEL_001"), &VideoBitRateL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETVIDEOBITRATEL_005"), &CCamcTest_5::SetVideoBitRateL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.VIDEOBITRATEL_001"), &CCamcTest_5::VideoBitRateL_001_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_005"), &SetAudioBitRateL_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.AUDIOBITRATEL_001"), &AudioBitRateL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETAUDIOBITRATEL_005"), &CCamcTest_5::SetAudioBitRateL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.AUDIOBITRATEL_001"), &CCamcTest_5::AudioBitRateL_001_L));
  
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_005"), &SetAudioEnabledL_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.AUDIOENABLEDL_001"), &AudioEnabledL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_005"), &CCamcTest_5::SetAudioEnabledL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.AUDIOENABLEDL_001"), &CCamcTest_5::AudioEnabledL_001_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_006"), &SetVideoFrameSizeL_006_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETVIDEOFRAMESIZEL_001"), &GetVideoFrameSizeL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_006"), &CCamcTest_5::SetVideoFrameSizeL_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETVIDEOFRAMESIZEL_001"), &CCamcTest_5::GetVideoFrameSizeL_001_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.PAUSEL_001"), &PauseL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.PAUSEL_002"), &PauseL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.PAUSEL_001"), &CCamcTest_5::PauseL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.PAUSEL_002"), &CCamcTest_5::PauseL_002_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_005"), &SetMaxClipSizeL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_005"), &CCamcTest_5::SetMaxClipSizeL_005_L));
      
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETGAINL_001"), &SetGainL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETGAINL_002"), &SetGainL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETGAINL_003"), &SetGainL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETGAINL_001"), &CCamcTest_5::SetGainL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETGAINL_002"), &CCamcTest_5::SetGainL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.SETGAINL_003"), &CCamcTest_5::SetGainL_003_L));
     
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GAINL_001"), &GainL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GAINL_001"), &CCamcTest_5::GainL_001_L));
    
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.MAXGAINL_001"), &MaxGainL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.MAXGAINL_002"), &MaxGainL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.MAXGAINL_001"), &CCamcTest_5::MaxGainL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.MAXGAINL_002"), &CCamcTest_5::MaxGainL_002_L));
  
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_001"), &Stop_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_002"), &Stop_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_003"), &Stop_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_004"), &Stop_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_001"), &CCamcTest_5::Stop_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_002"), &CCamcTest_5::Stop_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_003"), &CCamcTest_5::Stop_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_004"), &CCamcTest_5::Stop_004_L));
     
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_005"), &Stop_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_005"), &CCamcTest_5::Stop_005_L));
 #endif
 #ifndef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDVIDEOTYPESL_001"), &GetSupportedVideoTypes_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDVIDEOTYPESL_001"), &CCamcTest_5::GetSupportedVideoTypes_001_L));
 #else
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDVIDEOTYPESL_002"), &GetSupportedVideoTypes_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDVIDEOTYPESL_002"), &CCamcTest_5::GetSupportedVideoTypes_002_L));
 #endif
 
 #if ((!defined __WINS__) || (!defined __WINSCW__)) // AAC supported only in HW
     // MP4 AAC + AMR
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDAUDIOTYPESL_003"), &GetSupportedAudioTypes_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_007"), &Stop_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDAUDIOTYPESL_003"), &CCamcTest_5::GetSupportedAudioTypes_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.STOP_007"), &CCamcTest_5::Stop_007_L));
 #endif
     // AMR-only
-    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDAUDIOTYPESL_001"), &GetSupportedAudioTypes_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_5>::NewL(_L8("CAMC_API.GETSUPPORTEDAUDIOTYPESL_001"), &CCamcTest_5::GetSupportedAudioTypes_001_L));
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_6.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_6.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -186,7 +186,11 @@
     fsSession.Connect();
     TFileName fileName;
     AddDriveLetterToPath(_L("recordQCIF.3gp"),fileName);
-    TInt err = file.Open(fsSession,fileName,EFileShareAny);
+    TInt err;
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        fsSession.Close();
+        }
     assertTIntsEqualL( KErrNone, err );
 
     err = file.Size(filesize);
@@ -910,80 +914,82 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_6")); 
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.PAUSEL_003"), &PauseL_003_L));
-
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_005"), &SetVideoFrameSizeL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.PAUSEL_003"), &CCamcTest_6::PauseL_003_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_005"), &SetAudioEnabledL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOFRAMESIZEL_005"), &CCamcTest_6::SetVideoFrameSizeL_005_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_006"), &SetMaxClipSizeL_006_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_007"), &SetMaxClipSizeL_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOENABLEDL_005"), &CCamcTest_6::SetAudioEnabledL_005_L));
+
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_006"), &CCamcTest_6::SetMaxClipSizeL_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_007"), &CCamcTest_6::SetMaxClipSizeL_007_L));
 
     // Record_006, only to be tested on HW
     // Removed from MuDo tests
 #if !( defined (__WINS__) || defined (__WINSCW__) )
-//    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.RECORD_006"), &Record_006_L));
+//    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.RECORD_006"), &CCamcTest_6::Record_006_L));
 #endif
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.RECORD_007"), &Record_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.RECORD_007"), &CCamcTest_6::Record_007_L));
 
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_001"), &VideoTypeL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_002"), &VideoTypeL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_003"), &VideoTypeL_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_004"), &VideoTypeL_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_001"), &CCamcTest_6::VideoTypeL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_002"), &CCamcTest_6::VideoTypeL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_003"), &CCamcTest_6::VideoTypeL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_004"), &CCamcTest_6::VideoTypeL_004_L));
    
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_005"), &VideoTypeL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.VIDEOTYPEL_005"), &CCamcTest_6::VideoTypeL_005_L));
 #endif
 
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.AUDIOTYPEL_001"), &AudioTypeL_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.AUDIOTYPEL_002"), &AudioTypeL_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.AUDIOTYPEL_003"), &AudioTypeL_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.AUDIOTYPEL_001"), &CCamcTest_6::AudioTypeL_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.AUDIOTYPEL_002"), &CCamcTest_6::AudioTypeL_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.AUDIOTYPEL_003"), &CCamcTest_6::AudioTypeL_003_L));
  
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_005"), &SetVideoTypeL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_005"), &CCamcTest_6::SetVideoTypeL_005_L));
    
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_006"), &SetVideoTypeL_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_006"), &CCamcTest_6::SetVideoTypeL_006_L));
 #endif
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_007"), &SetVideoTypeL_007_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_008"), &SetVideoTypeL_008_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_007"), &CCamcTest_6::SetVideoTypeL_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_008"), &CCamcTest_6::SetVideoTypeL_008_L));
 
 #ifdef MP4_FILE_FORMAT_SUPPORTED
 #if ((!defined __WINS__) || (!defined __WINSCW__)) // AAC supported only in HW
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_009"), &SetVideoTypeL_009_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETVIDEOTYPEL_009"), &CCamcTest_6::SetVideoTypeL_009_L));
 #endif
 #endif
     
     
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_005"), &SetAudioTypeL_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_007"), &SetAudioTypeL_007_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_005"), &CCamcTest_6::SetAudioTypeL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_007"), &CCamcTest_6::SetAudioTypeL_007_L));   
 
 #ifdef MP4_FILE_FORMAT_SUPPORTED
 #if ((!defined __WINS__) || (!defined __WINSCW__)) // AAC supported only in HW
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_008"), &SetAudioTypeL_008_L));
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.SETAUDIOTYPEL_008"), &CCamcTest_6::SetAudioTypeL_008_L));
 #endif
 #endif
 
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.CONTROLLERIMPLEMENTATIONINFORMATIONL_001"), &ControllerImplementationInformationL_001_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.CONTROLLERIMPLEMENTATIONINFORMATIONL_001"), &CCamcTest_6::ControllerImplementationInformationL_001_L));   
 #ifndef MP4_FILE_FORMAT_SUPPORTED
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.CONTROLLERIMPLEMENTATIONINFORMATIONL_003"), &ControllerImplementationInformationL_003_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.CONTROLLERIMPLEMENTATIONINFORMATIONL_003"), &CCamcTest_6::ControllerImplementationInformationL_003_L));   
 #else
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.CONTROLLERIMPLEMENTATIONINFORMATIONL_004"), &ControllerImplementationInformationL_004_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.CONTROLLERIMPLEMENTATIONINFORMATIONL_004"), &CCamcTest_6::ControllerImplementationInformationL_004_L));   
 #endif
 
 #ifndef MP4_FILE_FORMAT_SUPPORTED
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_002"), &MMFRegistration_002_L));   
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_003"), &MMFRegistration_003_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_002"), &CCamcTest_6::MMFRegistration_002_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_003"), &CCamcTest_6::MMFRegistration_003_L));   
 #else
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_004"), &MMFRegistration_004_L));   
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_005"), &MMFRegistration_005_L));   
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_006"), &MMFRegistration_006_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_004"), &CCamcTest_6::MMFRegistration_004_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_005"), &CCamcTest_6::MMFRegistration_005_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.MMFREGISTRATION_006"), &CCamcTest_6::MMFRegistration_006_L));   
 #endif
 
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_001"), &DurationL_001_L));   
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_002"), &DurationL_002_L));   
-    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_003"), &DurationL_003_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_001"), &CCamcTest_6::DurationL_001_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_002"), &CCamcTest_6::DurationL_002_L));   
+    suite->addTestL(CTestCaller<CCamcTest_6>::NewL(_L8("CAMC_API.DURATIONL_003"), &CCamcTest_6::DurationL_003_L));   
 
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_7.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_7.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -171,13 +171,16 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_7"));   
+    CleanupStack::PushL( suite );
     
-    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_007"), &OpenFileL_007_L));
-    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_013"), &OpenFileL_013_L));
-    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_014"), &OpenFileL_014_L));
-    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_015"), &OpenFileL_015_L));
+    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_007"), &CCamcTest_7::OpenFileL_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_013"), &CCamcTest_7::OpenFileL_013_L));
+    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_014"), &CCamcTest_7::OpenFileL_014_L));
+    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.OPENFILEL_015"), &CCamcTest_7::OpenFileL_015_L));
 // Removed from MuDo tests
-//    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.CLOSE_006"), &Close_006_L));
+//    suite->addTestL(CTestCaller<CCamcTest_7>::NewL(_L8("CAMC_API.CLOSE_006"), &CCamcTest_7::Close_006_L));
+
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_8.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_8.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -457,15 +457,17 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_8"));   
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_001"), &MultipleInstance_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_001"), &CCamcTest_8::MultipleInstance_001_L));
     
-    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_002"), &MultipleInstance_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_003"), &MultipleInstance_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_004"), &MultipleInstance_004_L));
-    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_005"), &MultipleInstance_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_006"), &MultipleInstance_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_002"), &CCamcTest_8::MultipleInstance_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_003"), &CCamcTest_8::MultipleInstance_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_004"), &CCamcTest_8::MultipleInstance_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_005"), &CCamcTest_8::MultipleInstance_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_8>::NewL(_L8("CAMC_API.MULTIPLEINSTANCE_006"), &CCamcTest_8::MultipleInstance_006_L));
     
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_9.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_9.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -461,7 +461,10 @@
     TInt err;
     TFileName fileName;
     AddDriveLetterToPath(_L("non-existent-folder\\recordQCIF.3gp"), fileName);
-    err = file.Open(fsSession,fileName,EFileShareAny);
+    if ( err = file.Open(fsSession,fileName,EFileShareAny) )
+        {
+        fsSession.Close();
+        }
     assertTIntsEqualL( KErrNone, err );
 
     file.Close();
@@ -596,34 +599,36 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_9"));
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_007"), &Prepare_007_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_008"), &Prepare_008_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_009"), &Prepare_009_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_007"), &CCamcTest_9::Prepare_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_008"), &CCamcTest_9::Prepare_008_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.PREPARE_009"), &CCamcTest_9::Prepare_009_L));
     
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLEL_005"), &RecordTimeAvailableL_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.RECORDTIMEAVAILABLEL_005"), &CCamcTest_9::RecordTimeAvailableL_005_L));
     
     // SetMaxClipSizeL_008 and SetMaxClipSizeL_009, only to be tested on HW
 #if !( defined (__WINS__) || defined (__WINSCW__) )
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_008"), &SetMaxClipSizeL_008_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_009"), &SetMaxClipSizeL_009_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_008"), &CCamcTest_9::SetMaxClipSizeL_008_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.SETMAXCLIPSIZEL_009"), &CCamcTest_9::SetMaxClipSizeL_009_L));
 #endif
     
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_001"), &NewFileName_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_002"), &NewFileName_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_003"), &NewFileName_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_004"), &NewFileName_004_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_005"), &NewFileName_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_006"), &NewFileName_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_001"), &CCamcTest_9::NewFileName_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_002"), &CCamcTest_9::NewFileName_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_003"), &CCamcTest_9::NewFileName_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_004"), &CCamcTest_9::NewFileName_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_005"), &CCamcTest_9::NewFileName_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_006"), &CCamcTest_9::NewFileName_006_L));
     
 #ifdef MP4_FILE_FORMAT_SUPPORTED
 #if ((!defined __WINS__) || (!defined __WINSCW__)) // AAC supported only in HW
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_007"), &NewFileName_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.NEWFILENAME_007"), &CCamcTest_9::NewFileName_007_L));
 #endif
 #endif
 
-    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.OPENFILEL_016"), &OpenFileL_016_L));
+    suite->addTestL(CTestCaller<CCamcTest_9>::NewL(_L8("CAMC_API.OPENFILEL_016"), &CCamcTest_9::OpenFileL_016_L));
    
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_visualcheck.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_visualcheck.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -650,49 +650,51 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_visualcheck"));
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_101"), &VisualCheck_101_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_102"), &VisualCheck_102_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_103"), &VisualCheck_103_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_104"), &VisualCheck_104_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_105"), &VisualCheck_105_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_106"), &VisualCheck_106_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_107"), &VisualCheck_107_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_108_A"), &VisualCheck_108_A_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_101"), &CCamcTest_visualcheck::VisualCheck_101_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_102"), &CCamcTest_visualcheck::VisualCheck_102_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_103"), &CCamcTest_visualcheck::VisualCheck_103_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_104"), &CCamcTest_visualcheck::VisualCheck_104_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_105"), &CCamcTest_visualcheck::VisualCheck_105_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_106"), &CCamcTest_visualcheck::VisualCheck_106_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_107"), &CCamcTest_visualcheck::VisualCheck_107_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_108_A"), &CCamcTest_visualcheck::VisualCheck_108_A_L));
     //Old Test VisualCheck_108
-    //suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_108_B"), &VisualCheck_108_B_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_109"), &VisualCheck_109_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_110"), &VisualCheck_110_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_111"), &VisualCheck_111_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_112"), &VisualCheck_112_L));
+    //suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_108_B"), &CCamcTest_visualcheck::VisualCheck_108_B_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_109"), &CCamcTest_visualcheck::VisualCheck_109_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_110"), &CCamcTest_visualcheck::VisualCheck_110_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_111"), &CCamcTest_visualcheck::VisualCheck_111_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_112"), &CCamcTest_visualcheck::VisualCheck_112_L));
     // Test 113 considered as obsolete.
-    //  suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_113"), &VisualCheck_113_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_114"), &VisualCheck_114_L));
+    //  suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_113"), &CCamcTest_visualcheck::VisualCheck_113_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_114"), &CCamcTest_visualcheck::VisualCheck_114_L));
   
 #if !( defined (__WINS__) || defined (__WINSCW__) )
-     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_115"), &VisualCheck_115_L));
+     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_115"), &CCamcTest_visualcheck::VisualCheck_115_L));
 #endif   
      
-     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_116"), &VisualCheck_116_L));
+     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_116"), &CCamcTest_visualcheck::VisualCheck_116_L));
 
-     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_117"), &VisualCheck_117_L));
+     suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_117"), &CCamcTest_visualcheck::VisualCheck_117_L));
      
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_118"), &VisualCheck_118_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_118"), &CCamcTest_visualcheck::VisualCheck_118_L));
 #endif
 
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_119"), &VisualCheck_119_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_119"), &CCamcTest_visualcheck::VisualCheck_119_L));
 #endif
 
 #ifdef __MPEG4_VIDEO_ENCODING
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_120"), &VisualCheck_120_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_120"), &CCamcTest_visualcheck::VisualCheck_120_L));
 #endif  
     
 #ifdef MP4_FILE_FORMAT_SUPPORTED
-    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_121"), &VisualCheck_121_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheck>::NewL(_L8("CAMC_API.VISUALCHECK_121"), &CCamcTest_visualcheck::VisualCheck_121_L));
 #endif
 
+    CleanupStack::Pop( suite );
     return suite;
     }
 
--- a/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_visualcheckdsp.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/camerasrv_plat/media_recorder_api/tsrc/src/camcTest_visualcheckdsp.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -767,39 +767,40 @@
     {
     // Always use NewL (Do not use NewLC) !!!
     CTestSuite *suite = CTestSuite::NewL(_L8("CCamcTest_visualcheckdsp"));
+    CleanupStack::PushL( suite );
 
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_001"), &VisualCheck_001_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_002"), &VisualCheck_002_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_003"), &VisualCheck_003_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_004"), &VisualCheck_004_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_005"), &VisualCheck_005_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_006"), &VisualCheck_006_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_007"), &VisualCheck_007_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_008"), &VisualCheck_008_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_009_A"), &VisualCheck_009_A_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_001"), &CCamcTest_visualcheckdsp::VisualCheck_001_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_002"), &CCamcTest_visualcheckdsp::VisualCheck_002_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_003"), &CCamcTest_visualcheckdsp::VisualCheck_003_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_004"), &CCamcTest_visualcheckdsp::VisualCheck_004_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_005"), &CCamcTest_visualcheckdsp::VisualCheck_005_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_006"), &CCamcTest_visualcheckdsp::VisualCheck_006_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_007"), &CCamcTest_visualcheckdsp::VisualCheck_007_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_008"), &CCamcTest_visualcheckdsp::VisualCheck_008_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_009_A"), &CCamcTest_visualcheckdsp::VisualCheck_009_A_L));
     //Old Test VisualCheck_009
-    //suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_009_B"), &VisualCheck_009_B_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_010"), &VisualCheck_010_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_011"), &VisualCheck_011_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_012"), &VisualCheck_012_L));
+    //suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_009_B"), &CCamcTest_visualcheckdsp::VisualCheck_009_B_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_010"), &CCamcTest_visualcheckdsp::VisualCheck_010_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_011"), &CCamcTest_visualcheckdsp::VisualCheck_011_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_012"), &CCamcTest_visualcheckdsp::VisualCheck_012_L));
     // Test 113 considered as obsolete.
-    //suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_013"), &VisualCheck_013_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_014"), &VisualCheck_014_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_016"), &VisualCheck_016_L));
+    //suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_013"), &CCamcTest_visualcheckdsp::VisualCheck_013_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_014"), &CCamcTest_visualcheckdsp::VisualCheck_014_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_016"), &CCamcTest_visualcheckdsp::VisualCheck_016_L));
 
 #if !( defined (__WINS__) || defined (__WINSCW__) )
- //   suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_015"), &VisualCheck_015_L));
+ //   suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_015"), &CCamcTest_visualcheckdsp::VisualCheck_015_L));
 #endif   
 
 #ifdef __MPEG4_VIDEO_ENCODING
-//    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_017"), &VisualCheck_017_L));
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_017_A"), &VisualCheck_017_A_L));
+//    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_017"), &CCamcTest_visualcheckdsp::VisualCheck_017_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_017_A"), &CCamcTest_visualcheckdsp::VisualCheck_017_A_L));
 #endif
 #ifdef MP4_FILE_FORMAT_SUPPORTED
-    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_021"), &VisualCheck_021_L));
+    suite->addTestL(CTestCaller<CCamcTest_visualcheckdsp>::NewL(_L8("CAMC_API.VISUALCHECK_021"), &CCamcTest_visualcheckdsp::VisualCheck_021_L));
 #endif
 
-    
+    CleanupStack::Pop( suite );    
     return suite;
     }
 
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/camcorder_mmf_plugin_custom_commands_api.metaxml	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,13 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<api id="1e3bc3f3ac7d0be920052af8a7e42113" dataversion="2.0">
+  <name>Camcorder MMF Plug-in Custom Commands API</name>
+  <description>Custom commands to optimize video recording use cases when using Camcorder MMF Plug-in</description>
+  <type>c++</type>
+  <collection>camcordermmfplugin</collection>
+  <libs/>
+  <release category="public" sinceversion="5.2"/>
+  <attributes>
+    <htmldocprovided>no</htmldocprovided>
+    <adaptation>no</adaptation>
+  </attributes>
+</api>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/group/bld.inf	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,26 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Export Camcorder MMF Plug-in Custom Commands API headers
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+PRJ_PLATFORMS
+DEFAULT
+
+PRJ_EXPORTS
+
+../inc/CamCControllerCustomCommands.h     MW_LAYER_PUBLIC_EXPORT_PATH(CamCControllerCustomCommands.h)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/inc/CamCControllerCustomCommands.h	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,73 @@
+/*
+* Copyright (c) 2002-2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Camcorder controller plug-in custom commands
+*
+*/
+
+
+
+#ifndef CAMCCONTROLLERCUSTOMCOMMANDS_H
+#define CAMCCONTROLLERCUSTOMCOMMANDS_H
+
+/**
+* CamcorderMMFPlugin controller UID which can be used by the client to identify the
+* controller. The client can proceed to use the custom commands defined in
+* TCamCControllerCustomCommands if the UID matches to what is returned by
+* CMMFControllerImplementationInformation::Uid() method.
+*/ 
+const TUid KCamCControllerImplementationUid = {0x101F8503};
+
+/**
+* TMMFEvent UID used for asynchronous stopping of video recording. This event
+* indicates that no new video frames are captured and that audio recording
+* has stopped.
+*/
+const TUid KCamCControllerCCVideoRecordStopped = {0x2000E546};
+
+/**
+* TMMFEvent UID used for asynchronous stopping of video recording. This event
+* indicates that the video container files has been fully composed.
+*/
+const TUid KCamCControllerCCVideoFileComposed = {0x2000E547};
+
+
+/**
+* Custom command IDs specific to CamcorderMMFPlugin controller
+*/
+enum TCamCControllerCustomCommands
+    {
+    /**
+    * Custom command for setting a new filename without closing and reopening
+    * the controller. Expects the first parameter to be a TMMFFileConfig object
+    * with the iPath member set to the new target file name. This custom command
+    * should be used synchronously via
+    * CVideoRecorderUtility::CustomCommandSync(). Prepare() should be called
+    * after issuing the ECamCControllerCCNewFilename command.
+    */
+    ECamCControllerCCNewFilename = 0,
+
+    /**
+    * Custom command for initiating asynchronous stopping of video recording.
+    * No parameters. This custom command should be used synchronously via
+    * CVideoRecorderUtility::CustomCommandSync(). The command should only be
+    * used then paused or recording and it triggers the
+    * KCamCControllerCCVideoRecordStopped and KCamCControllerCCVideoFileComposed
+    * events.
+    */
+    ECamCControllerCCVideoStopAsync
+    };
+
+#endif      // CAMCCONTROLLERCUSTOMCOMMANDS_H
+
+// End of File
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/camerasrv_pub/group/bld.inf	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,21 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  Includes all the public API specific bld.inf files, which 
+*                export files.
+*
+*/
+
+
+
+#include "../camcorder_mmf_plugin_custom_commands_api/group/bld.inf"
Binary file configmanagers/imagingconfigmanager/conf/imagingconfigmanager.confml has changed
--- a/configmanagers/imagingconfigmanager/group/bld.inf	Fri Sep 24 10:34:11 2010 +0300
+++ b/configmanagers/imagingconfigmanager/group/bld.inf	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -25,9 +25,6 @@
 PRJ_EXPORTS
 ../conf/imagingconfigmanager.confml        MW_LAYER_CONFML(imagingconfigmanager.confml)
 ../conf/imagingconfigmanager_10282EDC.crml MW_LAYER_CRML(imagingconfigmanager_10282EDC.crml)
-
-../rom/imagingconfigmanagerstub.SIS /epoc32/data/z/system/install/imagingconfigmanagerstub.sis
-
 ../rom/imagingconfigmanager.iby CORE_MW_LAYER_IBY_EXPORT_PATH(imagingconfigmanager.iby)
 
 PRJ_MMPFILES
--- a/configmanagers/imagingconfigmanager/group/imagingconfigmanager.mmp	Fri Sep 24 10:34:11 2010 +0300
+++ b/configmanagers/imagingconfigmanager/group/imagingconfigmanager.mmp	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006-2007 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -26,6 +26,7 @@
 
 UID             0x1000008d 0x10282EDB   //KSharedLibraryUid
 VENDORID        VID_DEFAULT
+VERSION         10.1
 
 CAPABILITY CAP_GENERAL_DLL
 
--- a/configmanagers/imagingconfigmanager/rom/imagingconfigmanager.iby	Fri Sep 24 10:34:11 2010 +0300
+++ b/configmanagers/imagingconfigmanager/rom/imagingconfigmanager.iby	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -11,7 +11,7 @@
 *
 * Contributors:
 *
-* Description:  Iby file for Imaging Congifuration Manager
+* Description:  Iby file for Imaging Configuration Manager
 *
 */
 
@@ -22,6 +22,4 @@
 // Imaging Configuration Manager
 file=ABI_DIR\BUILD_DIR\IMAGINGCONFIGMANAGER.DLL		SHARED_LIB_DIR\IMAGINGCONFIGMANAGER.DLL
 
-//data=ZSYSTEM\install\imagingconfigmanagerstub.sis   system\install\imagingconfigmanagerstub.sis
-
 #endif
Binary file configmanagers/imagingconfigmanager/rom/imagingconfigmanagerstub.SIS has changed
--- a/configmanagers/imagingconfigmanager/rom/imagingconfigmanagerstub.pkg	Fri Sep 24 10:34:11 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,35 +0,0 @@
-;
-; Copyright (c) 2007 Nokia Corporation and/or its subsidiary(-ies).
-; All rights reserved.
-; This component and the accompanying materials are made available
-; under the terms of "Eclipse Public License v1.0"
-; which accompanies this distribution, and is available
-; at the URL "http://www.eclipse.org/legal/epl-v10.html".
-;
-; Initial Contributors:
-; Nokia Corporation - initial contribution.
-;
-; Contributors:
-;
-; Description:  Package file for project imagingconfigmanager
-;
-
-; Languages
-&EN
-
-; Header
-#{"imagingconfigmanager"}, (0x10282EDB), 1, 0, 0
-
-;Supports Series 60 v 3.0
-;[0x101F7961], 0, 0, 0, {"Series60ProductID"}
-
-; Localised Vendor name
-%{"Nokia"}
-
-; Unique Vendor name
-:"Nokia"
-
-;Files
-""-"z:\sys\bin\imagingconfigmanager.dll"
-
-
--- a/configmanagers/imagingconfigmanager/tsrc/public/basic/src/ICMSTIF.cpp	Fri Sep 24 10:34:11 2010 +0300
+++ b/configmanagers/imagingconfigmanager/tsrc/public/basic/src/ICMSTIF.cpp	Wed Oct 06 14:52:34 2010 +0300
@@ -271,6 +271,7 @@
 	_LIT8(KPreferredSupplier, "Nokia");
 	const TUint32 KAudioFourCCType = 0x524D4120;
 	CImagingConfigManager* icm = CImagingConfigManager::NewL();
+	CleanupStack::PushL( icm );
     CArrayFixFlat<TUint>* levels = new( ELeave ) CArrayFixFlat< TUint >( 1 );
     TVideoQualitySet videoset;
     icm->GetVideoQualityLevelsL(*levels);
@@ -344,6 +345,7 @@
     		aResult.iResultDes = _L("GetVideoQualitySetL() OK.");
             }
         }
+    CleanupStack::Pop( icm );
     delete levels;
 	delete icm;
     return KErrNone;
@@ -516,6 +518,7 @@
 	_LIT8(KImageFileMimeType, "image/jpeg");
 	_LIT8(KImageFileExtension, ".jpg");
 	CImagingConfigManager* icm = CImagingConfigManager::NewL();
+	CleanupStack::PushL( icm );
     CArrayFixFlat<TUint>* levels = new( ELeave ) CArrayFixFlat< TUint >( 1 );
     TImageQualitySet imageset;
     icm->GetImageQualityLevelsL(*levels, 2);
@@ -572,6 +575,7 @@
     		aResult.iResultDes = _L("GetImageQualityLevelsL() OK.");
             }
         }
+    CleanupStack::Pop( icm );
     delete levels;
 	delete icm;
     return KErrNone;
--- a/group/bld.inf	Fri Sep 24 10:34:11 2010 +0300
+++ b/group/bld.inf	Wed Oct 06 14:52:34 2010 +0300
@@ -1,5 +1,5 @@
 /*
-* Copyright (c) 2006 Nokia Corporation and/or its subsidiary(-ies).
+* Copyright (c) 2006-2010 Nokia Corporation and/or its subsidiary(-ies).
 * All rights reserved.
 * This component and the accompanying materials are made available
 * under the terms of "Eclipse Public License v1.0"
@@ -19,8 +19,10 @@
 #include <platform_paths.hrh>
 
 #include "../camerasrv_plat/group/bld.inf"
+#include "../camerasrv_pub/group/bld.inf"
 
 #include "../configmanagers/group/bld.inf"
 #include "../camcordermmfplugin/Build/bld.inf"
 
-PRJ_EXPORTS
+#include "../sis/bld.inf"
+
--- a/inc/CamCControllerCustomCommands.h	Fri Sep 24 10:34:11 2010 +0300
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,39 +0,0 @@
-/*
-* Copyright (c) 2002 Nokia Corporation and/or its subsidiary(-ies).
-* All rights reserved.
-* This component and the accompanying materials are made available
-* under the terms of "Eclipse Public License v1.0"
-* which accompanies this distribution, and is available
-* at the URL "http://www.eclipse.org/legal/epl-v10.html".
-*
-* Initial Contributors:
-* Nokia Corporation - initial contribution.
-*
-* Contributors:
-*
-* Description:  Camcorder controller plugin custom commands
-*
-*/
-
-
-
-#ifndef CAMCCONTROLLERCUSTOMCOMMANDS_H
-#define CAMCCONTROLLERCUSTOMCOMMANDS_H
-
-// Controller UId, can be used by the client to identify the controller, e.g. if the custom command can be used
-const TUid KCamCControllerImplementationUid = {0x101F8503};
-
-// TMMFEvent UIDs for Async stop
-const TUid KCamCControllerCCVideoRecordStopped = {0x2000E546};
-const TUid KCamCControllerCCVideoFileComposed = {0x2000E547};
-
-
-// Custom command for setting a new filename without closing & reopening the controller
-enum TCamCControllerCustomCommands
-    {   
-    ECamCControllerCCNewFilename = 0,
-    ECamCControllerCCVideoStopAsync
-    };
-
-#endif      // CAMCCONTROLLERCUSTOMCOMMANDS_H  
-// End of File
--- a/package_definition.xml	Fri Sep 24 10:34:11 2010 +0300
+++ b/package_definition.xml	Wed Oct 06 14:52:34 2010 +0300
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <SystemDefinition schema="3.0.0">
- <package id="camerasrv" name="Camera Services" levels="plugin fw api">
+ <package id="camerasrv" name="Camera Services" levels="plugin fw api" version="1.0.0">
   <collection id="camerasrv_plat" name="Camera Services Platform Interfaces" level="api">
    <component id="media_recorder_sink_api" name="Media Recorder Sink API" class="api" filter="s60">
     <meta rel="Api" href="camerasrv_plat/media_recorder_sink_api/media_recorder_sink_api.metaxml"/>
@@ -25,6 +25,12 @@
     <unit bldFile="camerasrv_plat/3gp_file_composer_api/group"/>
    </component>
   </collection>
+  <collection id="camerasrv_pub" name="Camera Services Public Interfaces" level="api">
+   <component id="camcorder_mmf_plugin_custom_commands_api" name="Camcorder MMF Plug-in Custom Commands API" class="api" filter="s60">
+    <meta rel="Api" href="camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/camcorder_mmf_plugin_custom_commands_api.metaxml"/>
+    <unit bldFile="camerasrv_pub/camcorder_mmf_plugin_custom_commands_api/group"/>
+   </component>
+  </collection>
   <collection id="camcordermmfplugin" name="Camcorder MMF Plugin" level="plugin">
    <!-- collection is really a component. Should move down a directory -->
    <component id="camcordermmfplugin_build" filter="s60" name="Camcorder MMF Plugin Build" class="plugin">
@@ -36,5 +42,11 @@
     <unit bldFile="configmanagers/imagingconfigmanager/group"/>
    </component>
   </collection>
+  <collection id="camerasrv_info" name="Camera Services Info" level="int">
+   <component id="camerasrv_sis" filter="s60" name="Camera Services SIS installation files" class="config">
+    <!-- consider moving these exports into the other collections -->
+    <unit bldFile="sis"/>
+   </component>
+  </collection>
  </package>
 </SystemDefinition>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/rom/camerasrv.iby	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,24 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  camerasrv rom definition file.
+*
+*/
+
+
+#ifndef __CAMERASRV_IBY__
+#define __CAMERASRV_IBY__
+
+data=ZSYSTEM\install\camerasrv_stub.sis       system\install\camerasrv_stub.sis
+
+#endif	//__CAMERASRV_IBY__
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sis/bld.inf	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,23 @@
+/*
+* Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:  camerasrv sis bld.inf
+*
+*/
+
+
+#include <platform_paths.hrh>
+
+PRJ_EXPORTS
+../rom/camerasrv.iby CORE_MW_LAYER_IBY_EXPORT_PATH(camerasrv.iby)
+../sis/camerasrv_stub.sis /epoc32/data/z/system/install/camerasrv_stub.sis
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sis/camerasrv.pkg	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,34 @@
+;
+; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: camerasrv_stub.pkg
+;
+; Languages
+&EN
+
+; Header
+#{"camerasrv"}, (0x20031EC4), 1, 1, 0, TYPE=SA, RU
+
+; Localised Vendor name
+%{"Nokia"}
+
+; Unique Vendor name
+:"Nokia"
+
+;Files
+"\epoc32\release\armv5\udeb\CAMCCONTROLLER.DLL"-"!:\sys\bin\CAMCCONTROLLER.DLL"
+"\epoc32\data\z\resource\plugins\camccontroller.rsc"-"!:\resource\plugins\camccontroller.rsc"
+"\epoc32\release\armv5\urel\CamcMediaRecorder.dll"-"!:\sys\bin\CamcMediaRecorder.dll"
+"\epoc32\release\armv5\urel\camc3gpsink.dll"-"!:\sys\bin\camc3gpsink.dll"
+
+"\epoc32\release\armv5\urel\imagingconfigmanager.dll"-"!:\sys\bin\imagingconfigmanager.dll"
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sis/camerasrv_stub.pkg	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,26 @@
+;
+; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: camerasrv_stub.pkg
+;
+; Languages
+&EN
+
+; Header
+#{"camerasrv"}, (0x20031EC4), 1, 0, 0, TYPE=SA
+
+; Localised Vendor name
+%{"Nokia"}
+
+; Unique Vendor name
+:"Nokia"
\ No newline at end of file
Binary file sis/camerasrv_stub.sis has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sis/camerasrv_udeb.pkg	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,34 @@
+;
+; Copyright (c) 2010 Nokia Corporation and/or its subsidiary(-ies).
+; All rights reserved.
+; This component and the accompanying materials are made available
+; under the terms of "Eclipse Public License v1.0"
+; which accompanies this distribution, and is available
+; at the URL "http://www.eclipse.org/legal/epl-v10.html".
+;
+; Initial Contributors:
+; Nokia Corporation - initial contribution.
+;
+; Contributors:
+;
+; Description: camerasrv_udeb.pkg
+;
+; Languages
+&EN
+
+; Header
+#{"camerasrv"}, (0x20031EC4), 1, 1, 0, TYPE=SA, RU
+
+; Localised Vendor name
+%{"Nokia"}
+
+; Unique Vendor name
+:"Nokia"
+
+;Files
+"\epoc32\release\armv5\udeb\CAMCCONTROLLER.DLL"-"!:\sys\bin\CAMCCONTROLLER.DLL"
+"\epoc32\data\z\resource\plugins\camccontroller.rsc"-"!:\resource\plugins\camccontroller.rsc"
+"\epoc32\release\armv5\udeb\CamcMediaRecorder.dll"-"!:\sys\bin\CamcMediaRecorder.dll"
+"\epoc32\release\armv5\udeb\camc3gpsink.dll"-"!:\sys\bin\camc3gpsink.dll"
+
+"\epoc32\release\armv5\udeb\imagingconfigmanager.dll"-"!:\sys\bin\imagingconfigmanager.dll"
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/sis/depends.xml	Wed Oct 06 14:52:34 2010 +0300
@@ -0,0 +1,72 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<ad:metadata xmlns="http://nokia.com/arrow/repository/ia_component"
+  xmlns:ad="http://nokia.com/arrow/application_metadata">
+    <iaSearchCriteria>ABC:ABC</iaSearchCriteria>
+    <!--
+    The appResources element contains all the language metadata of one IAC.
+    IAC may have one or more language-specific component names
+    and descriptions inside appResource element.
+
+    Language ID 1 should be always defined as this is the default language
+    in case other languages supported by the client cannot be found.
+    -->
+    <appResources>
+        <appResource>
+            <!-- Language ID -->
+            <language>1</language>
+            <!-- Name in given language -->
+            <iacName>camerasrv</iacName>
+            <!-- Description in given language -->
+            <iacDescription>Update package for Camerasrv</iacDescription>
+        </appResource>
+    </appResources>
+    <!-- Specifies for what versions of what platform this component is for. -->
+    <swPlatformDep>
+    <!-- platform code -->
+        <platform>S60</platform>
+        <versionFrom>
+            <!--
+            platform version number separated in major and minor number (i.e.
+            3.0 has 3 as major and 0 as minor)
+            -->
+            <major>5</major>
+            <minor>2</minor>
+            <!--
+            date-element can be used to pinpoint platform version number to even
+            more specific one. It is not currently used in the system.
+            -->
+            <date>
+                <year>2010</year>
+                <week>32</week>
+            </date>
+        </versionFrom>
+        <!-- the latest platform version this component is for -->
+        <!--versionTo>
+            <major>2</major>
+            <minor>0</minor>
+            <date>
+                <year>2008</year>
+                <week>1</week>
+            </date>
+        </versionTo-->
+    </swPlatformDep>
+    <!-- specifies dependencies to other IACs -->
+    <interDeps>
+        <!--interDep>
+        <sisxUid>0x1230</sisxUid>
+            <versionFrom>
+                <major>1</major>
+                <minor>1</minor>
+                <build>1</build>
+            </versionFrom>
+            <versionTo>
+                <major>1</major>
+                <minor>1</minor>
+                <build>1</build>
+            </versionTo>
+        </interDep-->
+    </interDeps>
+    <firmwareDependencies>
+    </firmwareDependencies>
+    <rebootAfterInstall>true</rebootAfterInstall>
+</ad:metadata>
\ No newline at end of file