X-Git-Url: http://git.annexia.org/?p=libguestfs.git;a=blobdiff_plain;f=src%2Fgenerator.ml;h=9d961703cb273ade09cf02f5c906ab5622941a70;hp=b43b3bfa3d1e3c9fa0918d90cfe189c9a76102e4;hb=3a5a66de8f847a0ff11fdcf6c1644e19aa54c0f7;hpb=08c27722647d14a30648dd02e221e1e803d1189e diff --git a/src/generator.ml b/src/generator.ml index b43b3bf..9d96170 100755 --- a/src/generator.ml +++ b/src/generator.ml @@ -4757,18 +4757,21 @@ and generate_daemon_actions () = pr " reply_with_error (\"%%s: daemon failed to decode procedure arguments\", \"%s\");\n" name; pr " return;\n"; pr " }\n"; + let pr_args n = + pr " char *%s = args.%s;\n" n n + in List.iter ( function | Pathname n -> - pr " char *%s = args.%s;\n" n n; + pr_args n; pr " ABS_PATH (%s, goto done);\n" n; | Device n -> - pr " char *%s = args.%s;\n" n n; + pr_args n; pr " RESOLVE_DEVICE (%s, goto done);" n; | Dev_or_Path n -> - pr " char *%s = args.%s;\n" n n; + pr_args n; pr " REQUIRE_ROOT_OR_RESOLVE_DEVICE (%s, goto done);" n; - | String n -> pr " char *%s = args.%s;\n" n n + | String n -> pr_args n | OptString n -> pr " %s = args.%s ? *args.%s : NULL;\n" n n n | StringList n -> pr " %s = realloc (args.%s.%s_val,\n" n n n;