diff -r c9c2ad51f972 -r ef893827b4d1 vpnengine/ikev2lib/src/ipsecproposal.cpp --- a/vpnengine/ikev2lib/src/ipsecproposal.cpp Thu Jan 07 13:26:15 2010 +0200 +++ b/vpnengine/ikev2lib/src/ipsecproposal.cpp Mon Jan 18 21:14:04 2010 +0200 @@ -128,9 +128,14 @@ if ( IntegAlg ) { TransCnt ++; - if ( Transform ) - Transform = (TTransformIkev2*)TPayloadIkev2::Cast(Transform)->Next(); - else Proposal->TransformPl(); + if ( Transform ) + { + Transform = (TTransformIkev2*)TPayloadIkev2::Cast(Transform)->Next(); + } + else + { + Transform = Proposal->TransformPl(); + } TPayloadIkev2::Cast(Transform)->Init(); // Initialize Payload general header TPayloadIkev2::Cast(Transform)->SetNextPayload(IKEV2_PAYLOAD_TRANS); Transform->SetType(IKEV2_INTEG); // Integrity Algorithm transform @@ -257,6 +262,7 @@ break; default: + User::Leave(KErrNotSupported); break; }