diff options
-rw-r--r-- | fs/udf/super.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/fs/udf/super.c b/fs/udf/super.c index f93c65d6c7d9..3ccb2f11fc76 100644 --- a/fs/udf/super.c +++ b/fs/udf/super.c | |||
@@ -2082,12 +2082,12 @@ static int udf_fill_super(struct super_block *sb, void *options, int silent) | |||
2082 | mutex_init(&sbi->s_alloc_mutex); | 2082 | mutex_init(&sbi->s_alloc_mutex); |
2083 | 2083 | ||
2084 | if (!udf_parse_options((char *)options, &uopt, false)) | 2084 | if (!udf_parse_options((char *)options, &uopt, false)) |
2085 | goto error_out; | 2085 | goto parse_options_failure; |
2086 | 2086 | ||
2087 | if (uopt.flags & (1 << UDF_FLAG_UTF8) && | 2087 | if (uopt.flags & (1 << UDF_FLAG_UTF8) && |
2088 | uopt.flags & (1 << UDF_FLAG_NLS_MAP)) { | 2088 | uopt.flags & (1 << UDF_FLAG_NLS_MAP)) { |
2089 | udf_err(sb, "utf8 cannot be combined with iocharset\n"); | 2089 | udf_err(sb, "utf8 cannot be combined with iocharset\n"); |
2090 | goto error_out; | 2090 | goto parse_options_failure; |
2091 | } | 2091 | } |
2092 | #ifdef CONFIG_UDF_NLS | 2092 | #ifdef CONFIG_UDF_NLS |
2093 | if ((uopt.flags & (1 << UDF_FLAG_NLS_MAP)) && !uopt.nls_map) { | 2093 | if ((uopt.flags & (1 << UDF_FLAG_NLS_MAP)) && !uopt.nls_map) { |
@@ -2238,6 +2238,7 @@ static int udf_fill_super(struct super_block *sb, void *options, int silent) | |||
2238 | 2238 | ||
2239 | error_out: | 2239 | error_out: |
2240 | iput(sbi->s_vat_inode); | 2240 | iput(sbi->s_vat_inode); |
2241 | parse_options_failure: | ||
2241 | #ifdef CONFIG_UDF_NLS | 2242 | #ifdef CONFIG_UDF_NLS |
2242 | if (UDF_QUERY_FLAG(sb, UDF_FLAG_NLS_MAP)) | 2243 | if (UDF_QUERY_FLAG(sb, UDF_FLAG_NLS_MAP)) |
2243 | unload_nls(sbi->s_nls_map); | 2244 | unload_nls(sbi->s_nls_map); |