--- a/javaextensions/bluetooth/bluetoothcommons/src.s60/servicerecord.cpp Fri Oct 15 12:29:39 2010 +0300
+++ b/javaextensions/bluetooth/bluetoothcommons/src.s60/servicerecord.cpp Fri Oct 29 11:49:32 2010 +0300
@@ -219,12 +219,16 @@
if (persistentRecFd < 0)
return errno;
+
// Reading and restoring the DeviceServiceClasses bits
int devServClass = 0;
ret = read(persistentRecFd, &devServClass, sizeof(devServClass));
if (ret <= 0)
+ {
+ close(persistentRecFd);
return errno;
+ }
if (devServClass != 0)
{
@@ -429,7 +433,7 @@
// Indicates a successful retrieval
// of the service record from the persistent file
mRestoredFromPersistentFile = true;
-
+ close(persistentRecFd);
return ret;
}
@@ -1312,6 +1316,7 @@
if (ret <= 0)
{
delete srvRecPopulator;
+ close(persistentRecFd);
return;
}
@@ -1525,7 +1530,7 @@
}
delete srvRecPopulator;
-
+ close(persistentRecFd);
return;
}