diff options
author | Ingo Huerner <ingo.huerner@xse.de> | 2015-02-23 22:20:56 +0100 |
---|---|---|
committer | Ingo Huerner <ingo.huerner@xse.de> | 2015-02-23 22:20:56 +0100 |
commit | 8adc99a9dedd74b6209bfa785545c68ddbfc7732 (patch) | |
tree | f09258b7a4ac42c959ad5c1846f7f78dd681e8b8 | |
parent | 84f52fadc2153ef8ab5d3c41547e11005ca0213e (diff) | |
download | persistence-client-library-8adc99a9dedd74b6209bfa785545c68ddbfc7732.tar.gz |
Now open RCT database in read-only mode
-rw-r--r-- | src/persistence_client_library_db_access.c | 6 | ||||
-rw-r--r-- | src/persistence_client_library_prct_access.c | 2 |
2 files changed, 6 insertions, 2 deletions
diff --git a/src/persistence_client_library_db_access.c b/src/persistence_client_library_db_access.c index cd9476a..55f168a 100644 --- a/src/persistence_client_library_db_access.c +++ b/src/persistence_client_library_db_access.c @@ -47,12 +47,16 @@ static int database_get(PersistenceInfo_s* info, const char* dbPath, int dbType) if(arrayIdx < DbTableSize) { + int openFlags = 0x01; // by default create file if not existing + if(gHandlesDBCreated[arrayIdx][dbType] == 0) { char path[PERS_ORG_MAX_LENGTH_PATH_FILENAME] = {0}; if(PersistencePolicy_wt == dbType) /// write through database { + /// 0x02 ==> open database in write through mode,keep bit 1 set in order to create db if not existing + openFlags |= 0x02; snprintf(path, PERS_ORG_MAX_LENGTH_PATH_FILENAME, "%s%s", dbPath, plugin_gLocalWt); } else if(PersistencePolicy_wc == dbType) // cached database @@ -74,7 +78,7 @@ static int database_get(PersistenceInfo_s* info, const char* dbPath, int dbType) if (handleDB == -1) { - handleDB = plugin_persComDbOpen(path, 0x01); + handleDB = plugin_persComDbOpen(path, openFlags); if(handleDB >= 0) { gHandlesDB[arrayIdx][dbType] = handleDB ; diff --git a/src/persistence_client_library_prct_access.c b/src/persistence_client_library_prct_access.c index 60526fb..405bc7c 100644 --- a/src/persistence_client_library_prct_access.c +++ b/src/persistence_client_library_prct_access.c @@ -122,7 +122,7 @@ int get_resource_cfg_table(PersistenceRCT_e rct, int group) DLT_LOG(gPclDLTContext, DLT_LOG_ERROR, DLT_STRING("gRCT - no valid PersistenceRCT_e")); break; } - gResource_table[arrayIdx] = plugin_persComRctOpen(filename, 0x00); + gResource_table[arrayIdx] = plugin_persComRctOpen(filename, 0x04); // 0x04 ==> open in read only mode if(gResource_table[arrayIdx] < 0) { |