summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorRichard Jones <rjones@redhat.com>2009-10-26 09:04:42 +0000
committerRichard Jones <rjones@redhat.com>2009-10-26 15:09:20 +0000
commitec02f0da1550e37acd95d615ff4fcf88569bcf2c (patch)
tree204efea9c4f0cb29f86bbbb7f8494f20aee0fc1c /src
parent74bde73d5c60c13b894fa60fff680a447499c884 (diff)
downloadlibguestfs-ec02f0da1550e37acd95d615ff4fcf88569bcf2c.tar.gz
libguestfs-ec02f0da1550e37acd95d615ff4fcf88569bcf2c.tar.xz
libguestfs-ec02f0da1550e37acd95d615ff4fcf88569bcf2c.zip
guestfish: Add win: prefix to use Windows paths.
Add a win: prefix for path arguments in guestfish: ><fs> file win:c:\windows\system32\config\system.log MS Windows registry file, NT/2000 or above
Diffstat (limited to 'src')
-rwxr-xr-xsrc/generator.ml16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/generator.ml b/src/generator.ml
index 39f363d6..f634cc8e 100755
--- a/src/generator.ml
+++ b/src/generator.ml
@@ -6357,12 +6357,13 @@ and generate_fish_cmds () =
);
List.iter (
function
- | Pathname n
- | Device n | Dev_or_Path n
+ | Device n
| String n
| OptString n
| FileIn n
| FileOut n -> pr " const char *%s;\n" n
+ | Pathname n
+ | Dev_or_Path n -> pr " char *%s;\n" n
| StringList n | DeviceList n -> pr " char **%s;\n" n
| Bool n -> pr " int %s;\n" n
| Int n -> pr " int %s;\n" n
@@ -6379,8 +6380,13 @@ and generate_fish_cmds () =
iteri (
fun i ->
function
+ | Device name
+ | String name ->
+ pr " %s = argv[%d];\n" name i
| Pathname name
- | Device name | Dev_or_Path name | String name -> pr " %s = argv[%d];\n" name i
+ | Dev_or_Path name ->
+ pr " %s = resolve_win_path (argv[%d]);\n" name i;
+ pr " if (%s == NULL) return -1;\n" name
| OptString name ->
pr " %s = strcmp (argv[%d], \"\") != 0 ? argv[%d] : NULL;\n"
name i i
@@ -6409,9 +6415,11 @@ and generate_fish_cmds () =
List.iter (
function
- | Pathname name | Device name | Dev_or_Path name | String name
+ | Device name | String name
| OptString name | FileIn name | FileOut name | Bool name
| Int name -> ()
+ | Pathname name | Dev_or_Path name ->
+ pr " free (%s);\n" name
| StringList name | DeviceList name ->
pr " free_strings (%s);\n" name
) (snd style);