Lines Matching refs:args
29 void fuse_opt_free_args(struct fuse_args *args)
31 if (args) {
32 if (args->argv && args->allocated) {
34 for (i = 0; i < args->argc; i++)
35 free(args->argv[i]);
36 free(args->argv);
38 args->argc = 0;
39 args->argv = NULL;
40 args->allocated = 0;
50 int fuse_opt_add_arg(struct fuse_args *args, const char *arg)
55 assert(!args->argv || args->allocated);
57 newargv = realloc(args->argv, (args->argc + 2) * sizeof(char *));
62 args->argv = newargv;
63 args->allocated = 1;
64 args->argv[args->argc++] = newarg;
65 args->argv[args->argc] = NULL;
69 int fuse_opt_insert_arg(struct fuse_args *args, int pos, const char *arg)
71 assert(pos <= args->argc);
72 if (fuse_opt_add_arg(args, arg) == -1)
75 if (pos != args->argc - 1) {
76 char *newarg = args->argv[args->argc - 1];
77 memmove(&args->argv[pos + 1], &args->argv[pos],
78 sizeof(char *) * (args->argc - pos - 1));
79 args->argv[pos] = newarg;
357 int fuse_opt_parse(struct fuse_args *args, void *data,
367 if (!args || !args->argv || !args->argc)
370 ctx.argc = args->argc;
371 ctx.argv = args->argv;
375 struct fuse_args tmp = *args;
376 *args = ctx.outargs;