summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIngo Huerner <ingo.huerner@xse.de>2014-11-03 15:37:12 +0100
committerIngo Huerner <ingo.huerner@xse.de>2014-11-03 15:37:12 +0100
commitf60ab501f1cf35e554714f7413e3f7f461f8134c (patch)
tree8a0cbacdc912092b7367e72d2a1d4ee758a8db09
parentb76fd83ca0b8f198924ad58f6f03204e9289c721 (diff)
downloadpersistence-client-library-f60ab501f1cf35e554714f7413e3f7f461f8134c.tar.gz
Fixed bug 292 and bug 294
-rw-r--r--src/persistence_client_library_file.c8
-rw-r--r--src/persistence_client_library_pas_interface.c1
-rw-r--r--test/data/PAS_data.tar.gzbin6467 -> 6918 bytes
3 files changed, 9 insertions, 0 deletions
diff --git a/src/persistence_client_library_file.c b/src/persistence_client_library_file.c
index 8d58fce..ecd6e23 100644
--- a/src/persistence_client_library_file.c
+++ b/src/persistence_client_library_file.c
@@ -318,6 +318,14 @@ int pclFileOpen(unsigned int ldbid, const char* resource_id, unsigned int user_n
handle = EPERS_MAXHANDLE;
}
}
+ else
+ {
+ if(set_file_handle_data(handle, dbContext.configKey.permission, backupPath, csumPath, NULL) == -1)
+ {
+ close(handle);
+ handle = EPERS_MAXHANDLE;
+ }
+ }
}
//
// requested resource is not in the RCT, so create resource as local/cached.
diff --git a/src/persistence_client_library_pas_interface.c b/src/persistence_client_library_pas_interface.c
index 94e3df6..7a85429 100644
--- a/src/persistence_client_library_pas_interface.c
+++ b/src/persistence_client_library_pas_interface.c
@@ -31,6 +31,7 @@ static int gLockAccess = 0;
void pers_lock_access(void)
{
+ gLockAccess = 0;
__sync_fetch_and_add(&gLockAccess,1);
}
diff --git a/test/data/PAS_data.tar.gz b/test/data/PAS_data.tar.gz
index 969f276..18a53a4 100644
--- a/test/data/PAS_data.tar.gz
+++ b/test/data/PAS_data.tar.gz
Binary files differ