diff options
author | Fabian Frederick <fabf@skynet.be> | 2015-04-08 21:23:55 +0200 |
---|---|---|
committer | Jan Kara <jack@suse.cz> | 2015-05-18 11:23:05 +0200 |
commit | 78fc2e694f35d1d027448e5b7641f32719073320 (patch) | |
tree | b87e819b926d51be31b4f11af32a0a4336379845 /fs/udf | |
parent | e9d4cf411f7582537ed0038d0f32a8743b75e58a (diff) | |
download | linux-stable-78fc2e694f35d1d027448e5b7641f32719073320.tar.gz linux-stable-78fc2e694f35d1d027448e5b7641f32719073320.tar.bz2 linux-stable-78fc2e694f35d1d027448e5b7641f32719073320.zip |
udf: improve error management in udf_CS0toNLS()
Only callsite udf_get_filename() now returns error code as well.
Suggested-by: Jan Kara <jack@suse.cz>
Signed-off-by: Fabian Frederick <fabf@skynet.be>
Signed-off-by: Jan Kara <jack@suse.cz>
Diffstat (limited to 'fs/udf')
-rw-r--r-- | fs/udf/unicode.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/fs/udf/unicode.c b/fs/udf/unicode.c index 35cc9477b066..658aa14cc474 100644 --- a/fs/udf/unicode.c +++ b/fs/udf/unicode.c @@ -265,7 +265,7 @@ static int udf_CS0toNLS(struct nls_table *nls, struct ustr *utf_o, memset(utf_o, 0, sizeof(struct ustr)); pr_err("unknown compression code (%d) stri=%s\n", cmp_id, ocu_i->u_name); - return 0; + return -EINVAL; } ocu = ocu_i->u_name; @@ -357,8 +357,9 @@ int udf_get_filename(struct super_block *sb, uint8_t *sname, int slen, goto out2; } } else if (UDF_QUERY_FLAG(sb, UDF_FLAG_NLS_MAP)) { - if (!udf_CS0toNLS(UDF_SB(sb)->s_nls_map, filename, - unifilename)) { + ret = udf_CS0toNLS(UDF_SB(sb)->s_nls_map, filename, + unifilename); + if (ret < 0) { udf_debug("Failed in udf_get_filename: sname = %s\n", sname); goto out2; |