home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Frozen Fish 1: Amiga
/
FrozenFish-Apr94.iso
/
bbs
/
alib
/
d1xx
/
d109
/
uupc.lha
/
UUpc
/
Source
/
LOCAL
/
chdir.c
next >
Wrap
C/C++ Source or Header
|
1987-10-28
|
1KB
|
62 lines
#include <libraries/dos.h>
#include <exec/memory.h>
#include <functions.h>
#ifdef TEST
#include <stdio.h>
#endif
#ifndef NULL
#define NULL 0L
#endif
/*------------------------------------------------------------------*/
/* chdir(path): make path the current directory. Return Ok/Not */
/*------------------------------------------------------------------*/
int chdir( path )
char *path;
{
register struct Lock *lock;
struct Lock *oldLock;
#ifdef TEST
fprintf( stderr, "Changing to directory \"%s\"\n\n", path );
#endif
if ( *path == '\0' )
return 0;
lock = Lock( path, ACCESS_READ );
if ( lock == 0L )
return (int)IoErr();
oldLock = CurrentDir( lock );
if ( oldLock )
UnLock( oldLock );
return 0;
}
#ifdef TEST
main()
{
char command[108];
FILE *f;
gets( command );
fprintf( stderr, "%d\n", chdir( command ));
if (f = fopen("abc", "r"))
{
fprintf( stderr, "Opened Ok!\n");
fclose( f );
}
else
fprintf( stderr, "Can't open abc\n");
exit( 0 );
}
#endif