kernel/eka/euser/epoc/win32/uc_epoc.cpp
branchanywhere
changeset 96 428c5911a502
parent 95 f561f9ae805b
child 101 86a1781f0e9b
equal deleted inserted replaced
95:f561f9ae805b 96:428c5911a502
    26 
    26 
    27 //SL: Empty on FCL ?
    27 //SL: Empty on FCL ?
    28 //For now we use this for basic testing on our SYMC implementation
    28 //For now we use this for basic testing on our SYMC implementation
    29 
    29 
    30 
    30 
       
    31 class CBaseTest: public CBase
       
    32 	{
       
    33 
       
    34 	};
       
    35 
       
    36 
    31 GLDEF_C void MainL()
    37 GLDEF_C void MainL()
    32 	{
    38 	{
    33 
    39 	
       
    40 	CBase* other=new(ELeave) CBase();
       
    41 	CleanupStack::PushL(other);
    34 	CBase* base=new(ELeave) CBase();
    42 	CBase* base=new(ELeave) CBase();
    35 	delete base;
    43 	CleanupStack::PushL(base);
       
    44 	CleanupStack::PopAndDestroy(2,other);
       
    45 	//delete base;
    36 	
    46 	
    37 	//Testing cleanup stack
    47 	//Testing cleanup stack
    38 	TRAPD(err,
    48 	TRAPD(err,
    39 	base=new(ELeave) CBase();
    49 	base=new(ELeave) CBase();
    40 	CleanupStack::PushL(base);
    50 	CleanupStack::PushL(base);
    48 	TUint8* test=new(ELeave) TUint8[1024*1024*10];
    58 	TUint8* test=new(ELeave) TUint8[1024*1024*10];
    49 	delete[] test;
    59 	delete[] test;
    50 	);
    60 	);
    51 
    61 
    52 	ASSERT(err==KErrNoMemory);
    62 	ASSERT(err==KErrNoMemory);
    53 
    63 	
       
    64 	//Testing unbalanced cleanup stack
       
    65 	//base=new(ELeave) CBase();
       
    66 	//CleanupStack::PushL(base);
    54 	}
    67 	}
    55 
    68 
    56 
    69 
    57 GLDEF_C TInt E32Main()
    70 GLDEF_C TInt E32Main()
    58 	{
    71 	{
    62 
    75 
    63 	//CBase* base=new(ELeave) CBase();
    76 	//CBase* base=new(ELeave) CBase();
    64 	CBase* base=new CBase();
    77 	CBase* base=new CBase();
    65 	delete base;
    78 	delete base;
    66 
    79 
       
    80 	CBaseTest* baseTest=new CBaseTest();
       
    81 	delete baseTest;
       
    82 
       
    83 	HBufC* buf=HBufC::New(10);
       
    84 	delete buf;
       
    85 
       
    86 	CArrayFix<TInt>* active=new CArrayFixFlat<TInt>(10);
       
    87 	delete active;
       
    88 
    67 	TUint8* test=new TUint8[1024*9];
    89 	TUint8* test=new TUint8[1024*9];
    68 	delete[] test;
    90 	delete[] test;
    69 
    91 
    70 	CTrapCleanup* cleanupStack = CTrapCleanup::New();
    92 	CTrapCleanup* cleanupStack = CTrapCleanup::New();
    71 	if (!cleanupStack)
    93 	if (!cleanupStack)
    72 		{
    94 		{
    73 		return KErrNoMemory;
    95 		return KErrNoMemory;
    74 		}
    96 		}
    75 
    97 
    76 	TRAPD(err,MainL());
    98 	TInt err=KErrNone;
       
    99 	TRAP(err,MainL());
    77 
   100 
    78 	delete cleanupStack;
   101 	delete cleanupStack;
    79 
   102 
    80 	__UHEAP_MARKEND;
   103 	__UHEAP_MARKEND;
    81 
   104