mdfdevvideoextensions/nga_mdf_postprocessor/src/NGAPostProcHwDevice.cpp
changeset 56 b6488ac24ddc
parent 41 f7bf1ed8db72
--- a/mdfdevvideoextensions/nga_mdf_postprocessor/src/NGAPostProcHwDevice.cpp	Mon Aug 23 21:48:44 2010 +0100
+++ b/mdfdevvideoextensions/nga_mdf_postprocessor/src/NGAPostProcHwDevice.cpp	Wed Sep 08 17:15:23 2010 +0100
@@ -2332,7 +2332,6 @@
    err = iSurfaceHandler->AddSurfaceHint(iSurfaceId,iHint);
    if(err == KErrAlreadyExists)
    {
-		err = KErrNone;
 		err = iSurfaceHandler->SetSurfaceHint(iSurfaceId,iHint);
    }
    PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:AddHints. err = %d --"), this,err);
@@ -2342,10 +2341,21 @@
    err = iSurfaceHandler->AddSurfaceHint(iSurfaceId,iHint);
    if(err == KErrAlreadyExists)
    {
-		err = KErrNone;
 		err = iSurfaceHandler->SetSurfaceHint(iSurfaceId,iHint);
    }
    PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:AddHints. err = %d --"), this,err);
+   if(iUsingExternalSurface)
+   {
+   		iHint.iKey.iUid = surfaceHints::KSurfaceCharacteristics;
+   		iHint.iValue = surfaceHints::ENotPersistable;
+   		iHint.iMutable = ETrue;
+	    err = iSurfaceHandler->AddSurfaceHint(iSurfaceId,iHint);
+	    if(err == KErrAlreadyExists)
+	    {
+			err = iSurfaceHandler->SetSurfaceHint(iSurfaceId,iHint);
+	    }
+	    PP_DEBUG(_L("CNGAPostProcHwDevice[%x]:AddHints. err = %d --"), this,err);
+	}
    return err;
 }