diff -r 14e240312f6f -r 786b94c6f0a4 bluetooth/btsdp/server/epocsvr.cpp --- a/bluetooth/btsdp/server/epocsvr.cpp Thu Jul 15 19:55:36 2010 +0300 +++ b/bluetooth/btsdp/server/epocsvr.cpp Thu Aug 19 11:01:00 2010 +0300 @@ -967,7 +967,12 @@ // we wouldn't want to remove the record if an error did occur, // which is very unlikely as typically only 1 or 2 records are // added per session. - iSessionRecords.Append(newRecord); + err = iSessionRecords.Append(newRecord); + if(err != KErrNone) + { + //if append fails delete the service record created above and return the error code + Server().DeleteServiceRecord(newRecord); + } } aMessage.Complete(err); }