summaryrefslogtreecommitdiffstats
path: root/src/misc
diff options
context:
space:
mode:
Diffstat (limited to 'src/misc')
-rw-r--r--src/misc/extra/extra.h1
-rw-r--r--src/misc/extra/extraUtilFile.c13
2 files changed, 14 insertions, 0 deletions
diff --git a/src/misc/extra/extra.h b/src/misc/extra/extra.h
index c0a7be95..4e36554c 100644
--- a/src/misc/extra/extra.h
+++ b/src/misc/extra/extra.h
@@ -104,6 +104,7 @@ extern char * Extra_FileNameAppend( char * pBase, char * pSuffix );
extern char * Extra_FileNameGeneric( char * FileName );
extern char * Extra_FileNameGenericAppend( char * pBase, char * pSuffix );
extern char * Extra_FileNameWithoutPath( char * FileName );
+extern char * Extra_FilePathWithoutName( char * FileName );
extern int Extra_FileCheck( char * pFileName );
extern int Extra_FileSize( char * pFileName );
extern char * Extra_FileRead( FILE * pFile );
diff --git a/src/misc/extra/extraUtilFile.c b/src/misc/extra/extraUtilFile.c
index 18a7f42c..bec8ba1e 100644
--- a/src/misc/extra/extraUtilFile.c
+++ b/src/misc/extra/extraUtilFile.c
@@ -213,6 +213,19 @@ char * Extra_FileNameWithoutPath( char * FileName )
return pRes + 1;
return FileName;
}
+char * Extra_FilePathWithoutName( char * FileName )
+{
+ char * pRes;
+ FileName = Abc_UtilStrsav( FileName );
+ for ( pRes = FileName + strlen(FileName) - 1; pRes >= FileName; pRes-- )
+ if ( *pRes == '\\' || *pRes == '/' )
+ {
+ *pRes = 0;
+ return FileName;
+ }
+ ABC_FREE( FileName );
+ return NULL;
+}
/**Function*************************************************************