reszip/src/rescomp.cpp
branchRCL_3
changeset 18 44d14dfed84d
parent 9 7c80ebddf816
child 19 01fc9b7302d1
equal deleted inserted replaced
17:046e2c4dbfd0 18:44d14dfed84d
   424 	}
   424 	}
   425 
   425 
   426 
   426 
   427 	// Optimize Dictionary
   427 	// Optimize Dictionary
   428 
   428 
   429 	OptimizeDictL();
   429 	OptimizeDict();
   430 
   430 
   431 	// Compress using optimized dictionary
   431 	// Compress using optimized dictionary
   432 
   432 
   433 	dCount = iDict->Count();
   433 	dCount = iDict->Count();
   434 	for (TInt x=0; x<dCount; x++)
   434 	for (TInt x=0; x<dCount; x++)
   525 	CleanupStack::PopAndDestroy(2);	// bStream, buffer
   525 	CleanupStack::PopAndDestroy(2);	// bStream, buffer
   526 	}
   526 	}
   527 
   527 
   528 
   528 
   529 
   529 
   530 void CResComp::OptimizeDictL()
   530 void CResComp::OptimizeDict()
   531 	{
   531 	{
   532 	// Find referenced dicts
   532 	// Find referenced dicts
   533 	TInt entries = iDict->Count();
   533 	TInt entries = iDict->Count();
   534 
   534 
   535 	for (TInt ii=0; ii<entries-1; ii++)
   535 	for (TInt ii=0; ii<entries-1; ii++)
   563 
   563 
   564 	CleanupStack::PopAndDestroy();	// newDict
   564 	CleanupStack::PopAndDestroy();	// newDict
   565 
   565 
   566 	for (TInt zz=0; zz<newDictEntries; zz++)
   566 	for (TInt zz=0; zz<newDictEntries; zz++)
   567 		{
   567 		{
   568 		iDict->At(zz).CreateEmbeddedDictL(zz, iDict);
   568 		iDict->At(zz).CreateEmbeddedDict(zz, iDict);
   569 		}
   569 		}
   570 	}
   570 	}
   571 
   571 
   572 
   572 
   573 void CResComp::FindEmbeddedDict(TDesC8& aMatch, TInt aStart)
   573 void CResComp::FindEmbeddedDict(TDesC8& aMatch, TInt aStart)