diff -r 96e5fb8b040d -r 36bfc973b146 kerneltest/e32test/mmu/d_shbuf.cpp --- 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