diff options
author | McBane <SomeOne@localhost> | 2021-01-27 19:36:21 +0100 |
---|---|---|
committer | McBane <SomeOne@localhost> | 2021-01-27 19:36:21 +0100 |
commit | 7ddb76979e5628c2dadd9b689733290ce5b17c22 (patch) | |
tree | 2748bedc527059909cd6fd0db7673abaa24583bc /src | |
parent | 4b3b14fe4b667fdbae6c3a21595e28b69b7a027d (diff) | |
download | bindfs-7ddb76979e5628c2dadd9b689733290ce5b17c22.tar.gz |
Sqgfault fix + Comments cleanup + intendation fix
Diffstat (limited to 'src')
-rw-r--r-- | src/bindfs.c | 53 |
1 files changed, 24 insertions, 29 deletions
diff --git a/src/bindfs.c b/src/bindfs.c index fe8f3f1..9d8529e 100644 --- a/src/bindfs.c +++ b/src/bindfs.c @@ -2399,7 +2399,7 @@ static void atexit_func() struct fuse_args filter_special_opts(struct fuse_args *args) { int i, j, ignore; - struct fuse_args new_args; + struct fuse_args new_args = FUSE_ARGS_INIT(0, (void*)0); char *tmpStr; // Copied from "libfuse/util/mount.fuse.c" (fuse-3.10.1) @@ -2407,7 +2407,7 @@ struct fuse_args filter_special_opts(struct fuse_args *args) char *ignore_opts[] = { "", "user", - "nofail", + "nofail", "nouser", "users", "auto", @@ -2417,36 +2417,31 @@ struct fuse_args filter_special_opts(struct fuse_args *args) }; for (i=0; i < args->argc; i++) { - ignore = 0; + ignore = 0; if (strcmp(args->argv[i], "-o") == 0 && (i+1) < args->argc) { - for (j = 0; ignore_opts[j]; j++) { - //printf("%s == %s\n", args->argv[i+1], ignore_opts[j]); - if (strcmp(args->argv[i+1], ignore_opts[j]) == 0) { - ignore = 1; - i+=1; - break; - } + for (j = 0; ignore_opts[j]; j++) { + if (strcmp(args->argv[i+1], ignore_opts[j]) == 0) { + ignore = 1; + i+=1; + break; + } + } } - } - else if (strncmp(args->argv[i], "-o", 2) == 0) { - for (j = 0; ignore_opts[j]; j++) { - tmpStr = malloc( (3 + strlen(ignore_opts[j])) * sizeof(char) ); - strcat(tmpStr, "-o"); strcat(tmpStr, ignore_opts[j]); strcat(tmpStr, "\0"); - //printf("%s == %s\n", args->argv[i], tmpStr); - if (strcmp(args->argv[i], tmpStr) == 0) { - ignore = 1; - free(tmpStr); - break; - } - free(tmpStr); + else if (strncmp(args->argv[i], "-o", 2) == 0) { + for (j = 0; ignore_opts[j]; j++) { + tmpStr = malloc( (3 + strlen(ignore_opts[j])) * sizeof(char) ); + strcat(tmpStr, "-o"); strcat(tmpStr, ignore_opts[j]); strcat(tmpStr, "\0"); + if (strcmp(args->argv[i], tmpStr) == 0) { + ignore = 1; + free(tmpStr); + break; + } + free(tmpStr); + } + } + if (!ignore) { + fuse_opt_add_arg(&new_args, strdup(args->argv[i])); } - } - if (!ignore) { - //tmpStr = malloc((3 + strlen(args->argv[i+1])) * sizeof(char)); - //strcat(tmpStr, args->argv[i]); strcat(tmpStr, args->argv[i+1]); strcat(tmpStr, "\0"); - //fuse_opt_add_arg(&new_args, tmpStr); - fuse_opt_add_arg(&new_args, args->argv[i]); - } } fuse_opt_free_args(args); |