diff options
| -rw-r--r-- | drivers/video/fbdev/msm/mdss_mdp_overlay.c | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/drivers/video/fbdev/msm/mdss_mdp_overlay.c b/drivers/video/fbdev/msm/mdss_mdp_overlay.c index e2ae4cf3077f..43de734ca770 100644 --- a/drivers/video/fbdev/msm/mdss_mdp_overlay.c +++ b/drivers/video/fbdev/msm/mdss_mdp_overlay.c @@ -476,13 +476,17 @@ static int mdss_mdp_overlay_pipe_setup(struct msm_fb_data_type *mfd, ret = copy_from_user(pipe->pp_res.igc_c0_c1, pipe->pp_cfg.igc_cfg.c0_c1_data, sizeof(uint32_t) * len); - if (ret) - return -ENOMEM; + if (ret) { + ret = -ENOMEM; + goto exit_fail; + } ret = copy_from_user(pipe->pp_res.igc_c2, pipe->pp_cfg.igc_cfg.c2_data, sizeof(uint32_t) * len); - if (ret) - return -ENOMEM; + if (ret) { + ret = -ENOMEM; + goto exit_fail; + } pipe->pp_cfg.igc_cfg.c0_c1_data = pipe->pp_res.igc_c0_c1; pipe->pp_cfg.igc_cfg.c2_data = pipe->pp_res.igc_c2; @@ -508,8 +512,10 @@ static int mdss_mdp_overlay_pipe_setup(struct msm_fb_data_type *mfd, ret = copy_from_user(pipe->pp_res.hist_lut, pipe->pp_cfg.hist_lut_cfg.data, sizeof(uint32_t) * len); - if (ret) - return -ENOMEM; + if (ret) { + ret = -ENOMEM; + goto exit_fail; + } pipe->pp_cfg.hist_lut_cfg.data = pipe->pp_res.hist_lut; } } |
