From 0644e8bc24fccdb91f4a5ae2bb8b05fef4a3dd4e Mon Sep 17 00:00:00 2001 From: Ray Zhang Date: Tue, 13 Oct 2015 16:29:23 +0800 Subject: [PATCH] msm: mdss: correct the validating method of debug name string The name member in mdss_debug_base struct is not a pointer, so the current method to check whether this name string is empty is invalid. Use strlen to fix this bug which might introduce NULL pointer references in some cases if the name string is empty. Change-Id: I52b5eeae5f303e5690ce1e6a4ce00debf3435ee2 Signed-off-by: Ray Zhang --- drivers/video/fbdev/msm/mdss_debug_xlog.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/drivers/video/fbdev/msm/mdss_debug_xlog.c b/drivers/video/fbdev/msm/mdss_debug_xlog.c index 382ac3ebb789..f96ae8277b79 100644 --- a/drivers/video/fbdev/msm/mdss_debug_xlog.c +++ b/drivers/video/fbdev/msm/mdss_debug_xlog.c @@ -513,7 +513,7 @@ static void mdss_dump_reg_by_blk(const char *blk_name) return; list_for_each_entry_safe(blk_base, tmp, &mdd->base_list, head) { - if (blk_base->name && + if (strlen(blk_base->name) && !strcmp(blk_base->name, blk_name)) { mdss_dump_reg_by_ranges(blk_base, mdss_dbg_xlog.enable_reg_dump); @@ -532,7 +532,7 @@ static void mdss_dump_reg_all(void) return; list_for_each_entry_safe(blk_base, tmp, &mdd->base_list, head) { - if (blk_base->name) + if (strlen(blk_base->name)) mdss_dump_reg_by_blk(blk_base->name); } } @@ -556,7 +556,7 @@ struct mdss_debug_base *get_dump_blk_addr(const char *blk_name) return NULL; list_for_each_entry_safe(blk_base, tmp, &mdd->base_list, head) { - if (blk_base->name && + if (strlen(blk_base->name) && !strcmp(blk_base->name, blk_name)) return blk_base; }