diff options
author | Peter Baumann <p.baumann@jacobs-university.de> | 2010-07-27 09:09:46 +0200 |
---|---|---|
committer | www-data <www-data@ubuntu.localdomain> | 2010-07-30 11:16:37 +0200 |
commit | f75d8d2bd146dd8cfe16207377264218b148d197 (patch) | |
tree | cf7141d74b91f5fc7d698bf4d539827d11a82179 /raslib/error.cc | |
parent | b2119927d072fdd6d99bccceb5fd3fd68771f4d0 (diff) | |
download | rasdaman-upstream-f75d8d2bd146dd8cfe16207377264218b148d197.tar.gz rasdaman-upstream-f75d8d2bd146dd8cfe16207377264218b148d197.tar.xz rasdaman-upstream-f75d8d2bd146dd8cfe16207377264218b148d197.zip |
PB: more benchmark improvement + correct log output handling
Diffstat (limited to 'raslib/error.cc')
-rw-r--r-- | raslib/error.cc | 25 |
1 files changed, 11 insertions, 14 deletions
diff --git a/raslib/error.cc b/raslib/error.cc index 6647847..5e5bdbf 100644 --- a/raslib/error.cc +++ b/raslib/error.cc @@ -205,20 +205,17 @@ initTextTable() unsigned int numOfEntries = 0; int result; // sscanf() result - // determine file name; use path if env var is set - strcpy( errorFileName, "" ); - const char* rmanHome = getenv( RASDAMAN_PATH_VARNAME ); - if (rmanHome) - { - strcat(errorFileName, rmanHome); - strcat(errorFileName, ERRORTEXXT_PATH ); - strcat(errorFileName, "/" ); - } else { - strcat(errorFileName, SHARE_DATA_DIR); - strcat(errorFileName, "/"); - } - strcat(errorFileName, ERRORTEXT_FILE ); - // RMInit::logOut << "using error text file: " << errorFileName << endl; + // determine file path + name + int filenameLength = snprintf( errorFileName, FILENAME_MAX, "%s/%s", SHARE_DATA_DIR, ERRORTEXT_FILE ); + if (filenameLength < FILENAME_MAX ) + { + RMInit::logOut << "Using error text file: " << errorFileName << endl; + } + else + { + errorFileName[FILENAME_MAX-1] = '\0'; // force-terminate string before printing + cerr << "Warning: error text file path longer than allowed by OS, likely file will not be found: " << errorFileName << endl; + } // errortexts.open(errorFileName, ios::nocreate | ios::in); errortexts.open(errorFileName, ios::in); |