git.ucc.asn.au
/
tpg
/
acess2.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
| inline |
side by side
Usermode/libc - scanf/stdio fixes
[tpg/acess2.git]
/
Tools
/
DiskTool
/
src
/
helpers.c
diff --git
a/Tools/DiskTool/src/helpers.c
b/Tools/DiskTool/src/helpers.c
index
ddfe0f0
..
f9e3bc4
100644
(file)
--- a/
Tools/DiskTool/src/helpers.c
+++ b/
Tools/DiskTool/src/helpers.c
@@
-19,8
+19,24
@@
size_t DiskTool_int_TranslatePath(char *Buffer, const char *Path)
{
int len;
const char *colon = strchr(Path, ':');
-
- if( colon )
+
+ if( Path[0] == '#' )
+ {
+ len = strlen(Path+1);
+ if(Buffer) {
+ strcpy(Buffer, Path+1);
+ }
+ }
+ else if( Path[0] == ':' )
+ {
+ len = strlen("/Devices/LVM/");
+ len += strlen(Path+1);
+ if(Buffer) {
+ strcpy(Buffer, "/Devices/LVM/");
+ strcat(Buffer, Path+1);
+ }
+ }
+ else if( colon )
{
const char *pos;
for(pos = Path; pos < colon; pos ++)
@@
-36,23
+52,23
@@
size_t DiskTool_int_TranslatePath(char *Buffer, const char *Path)
strncat(Buffer+strlen("/Mount/"), Path, colon - Path);
strcat(Buffer, colon + 1);
}
- return len;
}
+ else
+ {
+ native_path:
+ if( !gsWorkingDirectory[0] ) {
+ getcwd(gsWorkingDirectory, 1024);
+ }
-native_path:
-
- if( !gsWorkingDirectory[0] ) {
- getcwd(gsWorkingDirectory, 1024);
- }
-
- len = strlen("/Native");
- len += strlen( gsWorkingDirectory ) + 1;
- len += strlen(Path);
- if( Buffer ) {
- strcpy(Buffer, "/Native");
- strcat(Buffer, gsWorkingDirectory);
- strcat(Buffer, "/");
- strcat(Buffer, Path);
+ len = strlen("/Native");
+ len += strlen( gsWorkingDirectory ) + 1;
+ len += strlen(Path);
+ if( Buffer ) {
+ strcpy(Buffer, "/Native");
+ strcat(Buffer, gsWorkingDirectory);
+ strcat(Buffer, "/");
+ strcat(Buffer, Path);
+ }
}
return len;
}
UCC
git Repository :: git.ucc.asn.au