kernel/eka/memmodel/epoc/flexible/mprocess.cpp
changeset 4 56f325a607ea
parent 0 a41df078684a
child 8 538db54a451d
equal deleted inserted replaced
2:4122176ea935 4:56f325a607ea
   939 
   939 
   940 		CHECK_PAGING_SAFE;
   940 		CHECK_PAGING_SAFE;
   941 
   941 
   942 		if(aFlags&KCheckLocalAddress)
   942 		if(aFlags&KCheckLocalAddress)
   943 			MM::ValidateLocalIpcAddress(dest,alias_size,ETrue);
   943 			MM::ValidateLocalIpcAddress(dest,alias_size,ETrue);
       
   944 		UNLOCK_USER_MEMORY();
   944 		memcpy( (TAny*)dest, (const TAny*)alias_src, alias_size);
   945 		memcpy( (TAny*)dest, (const TAny*)alias_src, alias_size);
       
   946 		LOCK_USER_MEMORY();
   945 
   947 
   946 		src+=alias_size;
   948 		src+=alias_size;
   947 		dest+=alias_size;
   949 		dest+=alias_size;
   948 		aLength-=alias_size;
   950 		aLength-=alias_size;
   949 
   951 
  1016 		CHECK_PAGING_SAFE_RANGE(src, aLength);
  1018 		CHECK_PAGING_SAFE_RANGE(src, aLength);
  1017 		CHECK_DATA_PAGING_SAFE_RANGE(dest, aLength);
  1019 		CHECK_DATA_PAGING_SAFE_RANGE(dest, aLength);
  1018 
  1020 
  1019 		if(aFlags&KCheckLocalAddress)
  1021 		if(aFlags&KCheckLocalAddress)
  1020 			MM::ValidateLocalIpcAddress(src,alias_size,EFalse);
  1022 			MM::ValidateLocalIpcAddress(src,alias_size,EFalse);
       
  1023 		UNLOCK_USER_MEMORY();
  1021 		memcpy( (TAny*)alias_dest, (const TAny*)src, alias_size);
  1024 		memcpy( (TAny*)alias_dest, (const TAny*)src, alias_size);
       
  1025 		LOCK_USER_MEMORY();
  1022 
  1026 
  1023 		src+=alias_size;
  1027 		src+=alias_size;
  1024 		dest+=alias_size;
  1028 		dest+=alias_size;
  1025 		aLength-=alias_size;
  1029 		aLength-=alias_size;
  1026 
  1030