omadrm/drmengine/dm/src/DRMMessageParser.cpp
branchRCL_3
changeset 71 1221b68b8a5f
parent 32 457cd4423b8c
child 72 1481bf457703
equal deleted inserted replaced
67:50c53e893c3f 71:1221b68b8a5f
    22 #include <s32file.h>
    22 #include <s32file.h>
    23 #include <s32mem.h>
    23 #include <s32mem.h>
    24 #include <caf/caftypes.h>
    24 #include <caf/caftypes.h>
    25 #include <wspdecoder.h>
    25 #include <wspdecoder.h>
    26 #include <wspencoder.h>
    26 #include <wspencoder.h>
    27 #include <featmgr.h>
       
    28 
    27 
    29 #ifdef RD_MULTIPLE_DRIVE
    28 #ifdef RD_MULTIPLE_DRIVE
    30 #include <driveinfo.h>
    29 #include <driveinfo.h>
    31 #endif
    30 #endif
    32 
    31 
   222     TRAP( error, FinalizeMessageParserL() );
   221     TRAP( error, FinalizeMessageParserL() );
   223 
   222 
   224     Reset();
   223     Reset();
   225 
   224 
   226     User::Free( const_cast< TUint8* >( iInputBuffer.Ptr() ) );
   225     User::Free( const_cast< TUint8* >( iInputBuffer.Ptr() ) );
   227     
       
   228     FeatureManager::UnInitializeLib();
       
   229     
       
   230     }
   226     }
   231 
   227 
   232 // -----------------------------------------------------------------------------
   228 // -----------------------------------------------------------------------------
   233 // CDRMMessageParser::
   229 // CDRMMessageParser::
   234 //
   230 //
   333 // Symbian 2nd phase constructor can leave.
   329 // Symbian 2nd phase constructor can leave.
   334 // -----------------------------------------------------------------------------
   330 // -----------------------------------------------------------------------------
   335 //
   331 //
   336 void CDRMMessageParser::ConstructL()
   332 void CDRMMessageParser::ConstructL()
   337     {
   333     {
   338     
       
   339     FeatureManager::InitializeLibL();
       
   340     
       
   341     // Make some extra room for crazy b64decode().
   334     // Make some extra room for crazy b64decode().
   342     iInputBuffer.Set( reinterpret_cast< TUint8* >(
   335     iInputBuffer.Set( reinterpret_cast< TUint8* >(
   343                         User::AllocL( KInputBufferSize + 2 ) ),
   336                         User::AllocL( KInputBufferSize + 2 ) ),
   344                       0,
   337                       0,
   345                       KInputBufferSize );
   338                       KInputBufferSize );
   491 
   484 
   492                 SetBit( EGotRightsPart );
   485                 SetBit( EGotRightsPart );
   493                 SetBit( EReadingHeaderPart );
   486                 SetBit( EReadingHeaderPart );
   494 
   487 
   495                 res.Set( NULL, 0 );
   488                 res.Set( NULL, 0 );
   496                 
   489 #ifndef __DRM_FULL
   497                 if ( !( FeatureManager::FeatureSupported(
   490                 User::Leave(KErrNotSupported);
   498                         KFeatureIdFfOmadrm1FullSupport ) ) )
   491 #endif
   499                     {
       
   500                     User::Leave(KErrNotSupported);
       
   501                     }  
       
   502                 }
   492                 }
   503             else
   493             else
   504                 {
   494                 {
   505                 SetBrokenStateL( KDRMMessageMalformed );
   495                 SetBrokenStateL( KDRMMessageMalformed );
   506                 }
   496                 }