From a3fda8265fa4e28f7989f8294a69d680b2f0b992 Mon Sep 17 00:00:00 2001 From: ahodgkinson Date: Wed, 24 May 2006 19:26:29 +0000 Subject: [PATCH] Added f_getcwd(). git-svn-id: https://svn.code.sf.net/p/flaim/code/trunk@450 0109f412-320b-0410-ab79-c3e0c5ffbbe6 --- ftk/src/ftk.h | 3 +++ ftk/src/ftknlm.cpp | 12 ++++++++++++ ftk/src/ftksys.h | 1 + ftk/src/ftkunix.cpp | 20 ++++++++++++++++++++ ftk/src/ftkwin.cpp | 20 ++++++++++++++++++++ 5 files changed, 56 insertions(+) diff --git a/ftk/src/ftk.h b/ftk/src/ftk.h index 5458972..b7056c2 100644 --- a/ftk/src/ftk.h +++ b/ftk/src/ftk.h @@ -1457,6 +1457,9 @@ RCODE FLMAPI f_chdir( const char * pszDir); + RCODE FLMAPI f_getcwd( + char * pszDir); + /**************************************************************************** Desc: ****************************************************************************/ diff --git a/ftk/src/ftknlm.cpp b/ftk/src/ftknlm.cpp index e72f901..33d1fc4 100644 --- a/ftk/src/ftknlm.cpp +++ b/ftk/src/ftknlm.cpp @@ -4084,6 +4084,18 @@ RCODE FLMAPI f_chdir( } #endif +/********************************************************************** +Desc: +**********************************************************************/ +#if defined( FLM_RING_ZERO_NLM) +RCODE FLMAPI f_getcwd( + char * pszDir) +{ + *pszDir = NULL; + return( RC_SET( NE_FLM_NOT_IMPLEMENTED)); +} +#endif + #endif // FLM_NLM /**************************************************************************** diff --git a/ftk/src/ftksys.h b/ftk/src/ftksys.h index 212d7d4..baff22a 100644 --- a/ftk/src/ftksys.h +++ b/ftk/src/ftksys.h @@ -93,6 +93,7 @@ #include #include #include + #include #pragma pack( pop, enter_windows) // Conversion from XXX to YYY, possible loss of data diff --git a/ftk/src/ftkunix.cpp b/ftk/src/ftkunix.cpp index 1eef07a..171795a 100644 --- a/ftk/src/ftkunix.cpp +++ b/ftk/src/ftkunix.cpp @@ -1598,6 +1598,26 @@ Exit: return( rc); } +/********************************************************************** +Desc: +**********************************************************************/ +RCODE FLMAPI f_getcwd( + char * pszDir) +{ + RCODE rc = NE_FLM_OK; + + if( getcwd( pszDir, F_PATH_MAX_SIZE) == NULL) + { + *pszDir = 0; + rc = f_mapPlatformError( errno, NE_FLM_IO_PATH_NOT_FOUND); + goto Exit; + } + +Exit: + + return( rc); +} + #endif // FLM_UNIX #if defined( FLM_WATCOM_NLM) diff --git a/ftk/src/ftkwin.cpp b/ftk/src/ftkwin.cpp index 3bbe23e..b36c98b 100644 --- a/ftk/src/ftkwin.cpp +++ b/ftk/src/ftkwin.cpp @@ -1625,6 +1625,26 @@ Exit: return( rc); } +/********************************************************************** +Desc: +**********************************************************************/ +RCODE FLMAPI f_getcwd( + char * pszDir) +{ + RCODE rc = NE_FLM_OK; + + if( _getcwd( pszDir, F_PATH_MAX_SIZE) == NULL) + { + *pszDir = 0; + rc = f_mapPlatformError( GetLastError(), NE_FLM_IO_PATH_NOT_FOUND); + goto Exit; + } + +Exit: + + return( rc); +} + #endif // FLM_WIN /****************************************************************************