Fixed getcwd to better match
This commit is contained in:
parent
f77e0ed6cb
commit
308b201fd4
|
@ -19,7 +19,7 @@
|
|||
//CONSTANT PATH_MAX 4096
|
||||
#define PATH_MAX 4096
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
int _getcwd(char* buf, size_t size)
|
||||
{
|
||||
asm("LOAD_EFFECTIVE_ADDRESS_rdi %16"
|
||||
"LOAD_INTEGER_rdi"
|
||||
|
@ -29,6 +29,13 @@ char* getcwd(char* buf, size_t size)
|
|||
"SYSCALL");
|
||||
}
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
{
|
||||
int c = _getcwd(buf, size);
|
||||
if(0 == c) return NULL;
|
||||
return buf;
|
||||
}
|
||||
|
||||
char* getwd(char* buf)
|
||||
{
|
||||
return getcwd(buf, PATH_MAX);
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
//CONSTANT PATH_MAX 4096
|
||||
#define PATH_MAX 4096
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
int _getcwd(char* buf, size_t size)
|
||||
{
|
||||
asm("!4 R0 SUB R12 ARITH_ALWAYS"
|
||||
"!0 R0 LOAD32 R0 MEMORY"
|
||||
|
@ -29,6 +29,13 @@ char* getcwd(char* buf, size_t size)
|
|||
"SYSCALL_ALWAYS");
|
||||
}
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
{
|
||||
int c = _getcwd(buf, size);
|
||||
if(0 == c) return NULL;
|
||||
return buf;
|
||||
}
|
||||
|
||||
char* getwd(char* buf)
|
||||
{
|
||||
return getcwd(buf, PATH_MAX);
|
||||
|
|
|
@ -19,13 +19,20 @@
|
|||
//CONSTANT PATH_MAX 4096
|
||||
#define PATH_MAX 4096
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
int _getcwd(char* buf, size_t size)
|
||||
{
|
||||
asm("LOAD R0 R14 0"
|
||||
"LOAD R1 R14 4"
|
||||
"GETCWD");
|
||||
}
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
{
|
||||
int c = _getcwd(buf, size);
|
||||
if(0 == c) return NULL;
|
||||
return buf;
|
||||
}
|
||||
|
||||
char* getwd(char* buf)
|
||||
{
|
||||
return getcwd(buf, PATH_MAX);
|
||||
|
|
|
@ -19,7 +19,7 @@
|
|||
//CONSTANT PATH_MAX 4096
|
||||
#define PATH_MAX 4096
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
int _getcwd(char* buf, size_t size)
|
||||
{
|
||||
asm("LOAD_EFFECTIVE_ADDRESS_ebx %8"
|
||||
"LOAD_INTEGER_ebx"
|
||||
|
@ -29,6 +29,13 @@ char* getcwd(char* buf, size_t size)
|
|||
"INT_80");
|
||||
}
|
||||
|
||||
char* getcwd(char* buf, size_t size)
|
||||
{
|
||||
int c = _getcwd(buf, size);
|
||||
if(0 == c) return NULL;
|
||||
return buf;
|
||||
}
|
||||
|
||||
char* getwd(char* buf)
|
||||
{
|
||||
return getcwd(buf, PATH_MAX);
|
||||
|
|
Loading…
Reference in New Issue