From f1615dccd5a69fa0a6fc4f6b55291fd436341dde Mon Sep 17 00:00:00 2001 From: Alan Mishchenko Date: Fri, 2 Aug 2013 23:15:37 -0700 Subject: [PATCH] Code for parsing the transcripts. --- src/base/cmd/cmd.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/src/base/cmd/cmd.c b/src/base/cmd/cmd.c index b047cafd6..93e658d5b 100644 --- a/src/base/cmd/cmd.c +++ b/src/base/cmd/cmd.c @@ -1153,6 +1153,7 @@ int CmdCommandScanDir( Abc_Frame_t * pAbc, int argc, char **argv ) { struct _finddata_t c_file; char * pDirStr = NULL; + char* pDirCur = NULL; long hFile; char c; @@ -1174,8 +1175,15 @@ int CmdCommandScanDir( Abc_Frame_t * pAbc, int argc, char **argv ) goto usage; } } + + if ( pDirStr ) { + if( (pDirCur = _getcwd( NULL, 0 )) == NULL ) + { + printf( "Cannot read current directory\n" ); + return 0; + } if ( _chdir(pDirStr) ) { printf( "Cannot change to directory: %s\n", pDirStr ); @@ -1248,6 +1256,16 @@ int CmdCommandScanDir( Abc_Frame_t * pAbc, int argc, char **argv ) while( _findnext( hFile, &c_file ) == 0 ); _findclose( hFile ); } + if ( pDirStr ) + { + if ( _chdir(pDirCur) ) + { + ABC_FREE( pDirCur ); + printf( "Cannot change to directory: %s\n", pDirCur ); + return 0; + } + ABC_FREE( pDirCur ); + } return 0; usage: