From: Jeremy Compostella Date: Mon, 2 May 2016 15:29:28 +0000 (+0200) Subject: ANDROID: dm: do_mounts_dm: fix dm_substitute_devices() X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=052d02c07cbe70ddbd6da4b001c220d7e597286a;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git ANDROID: dm: do_mounts_dm: fix dm_substitute_devices() When candidate is the last parameter, candidate_end points to the '\0' character and not the DM_FIELD_SEP character. In such a situation, we should not move the candidate_end pointer one character backward. Signed-off-by: Jeremy Compostella --- diff --git a/init/do_mounts_dm.c b/init/do_mounts_dm.c index 0fe9c5f7d5e9..a557c5ee00a7 100644 --- a/init/do_mounts_dm.c +++ b/init/do_mounts_dm.c @@ -176,7 +176,8 @@ static void __init dm_substitute_devices(char *str, size_t str_len) continue; /* Temporarily terminate with a nul */ - candidate_end--; + if (*candidate_end) + candidate_end--; old_char = *candidate_end; *candidate_end = '\0';