diff -r 388a17646e40 -r 11d83199e2d9 localconnectivityservice/obexreceiveservices/opp/src/oppcontroller.cpp --- a/localconnectivityservice/obexreceiveservices/opp/src/oppcontroller.cpp Tue Feb 02 00:45:58 2010 +0200 +++ b/localconnectivityservice/obexreceiveservices/opp/src/oppcontroller.cpp Fri Feb 19 23:43:38 2010 +0200 @@ -22,7 +22,7 @@ #include "btengdevman.h" #include #include "debug.h" -#include +#include #include #include #include @@ -221,6 +221,17 @@ TRACE_FUNC iLengthHeaderReceived = EFalse; // New put request so clear header based state iObexTransferState = ETransferPut; + + // Checking if backup is running now - if backup process is active, then we + // need to cancel transfer - otherwise phone will freeze during receiving + // data + if ( TObexUtilsUiLayer::IsBackupRunning() ) + { + TRACE_INFO ( _L ("Backup in progress! Canceling incoming transfer.")); + iObexTransferState = ETransferPutInitError; + return NULL; + } + TRAPD(err, HandlePutRequestL()); if(err == KErrNone) {