kerneltest/e32test/mmu/d_shbuf.cpp
changeset 10 36bfc973b146
parent 9 96e5fb8b040d
--- a/kerneltest/e32test/mmu/d_shbuf.cpp	Thu Dec 17 09:24:54 2009 +0200
+++ b/kerneltest/e32test/mmu/d_shbuf.cpp	Thu Jan 07 13:38:45 2010 +0200
@@ -339,12 +339,15 @@
 		// Descriptor writes
 		case RShBufTestChannel::EFromTPtr8ProcessAndReturn:
 			{
-			TUint size = ((const TDes8*)a1)->Size();
+			TPtr8 tempPtr(0, 0, 0);
+			kumemget(&tempPtr, a1, sizeof(tempPtr));
+
+			TUint size = tempPtr.Size();
 			
 			if(size <= sizeof(iDriverRxBuffer))
 				{
 				NKern::ThreadEnterCS();
-				r = Kern::CreateAndPinVirtualMemory(iPin, (TLinAddr)((const TDes8*)a1)->Ptr(), size);
+				r = Kern::CreateAndPinVirtualMemory(iPin, (TLinAddr)tempPtr.Ptr(), size);
 				NKern::ThreadLeaveCS();
 				}
 			else