diff -r 4a8fed1c0ef6 -r 597aaf25e343 kernel/eka/drivers/usbcsc/d_usbcsc.cpp --- a/kernel/eka/drivers/usbcsc/d_usbcsc.cpp Sat Feb 20 00:10:51 2010 +0200 +++ b/kernel/eka/drivers/usbcsc/d_usbcsc.cpp Fri Mar 12 15:50:11 2010 +0200 @@ -3026,7 +3026,13 @@ { dUsbc->ProcessDeviceState(deviceState); // Send Status to EP0 buffer. - dUsbc->iBuffers[dUsbc->iEP0OutBuff].SendEp0StatusPacket(deviceState); + // Before the client calls RDevUsbcScClient::FinalizeInterface(), + // this function might be called. + // So we add a guard for dUsbc->iBuffers + if( dUsbc->iBuffers ) + { + dUsbc->iBuffers[dUsbc->iEP0OutBuff].SendEp0StatusPacket(deviceState); + } } // Only queue if userside is interested