diff --git a/[refs] b/[refs] index 2db65f2e2424..d7cc6cc8d315 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 47c7157f3406e83648dad1c5c4e6e8c0f574dfc3 +refs/heads/master: d85170ed30a533ef6832cf11b38488e562c311c8 diff --git a/trunk/drivers/staging/panel/panel.c b/trunk/drivers/staging/panel/panel.c index 8bd7182195b3..3e07e41eb885 100644 --- a/trunk/drivers/staging/panel/panel.c +++ b/trunk/drivers/staging/panel/panel.c @@ -48,6 +48,7 @@ #include #include #include +#include #include #include #include @@ -1179,22 +1180,16 @@ static inline int handle_lcd_special_code(void) break; while (*esc) { + char *endp; + if (*esc == 'x') { esc++; - lcd_addr_x = 0; - while (isdigit(*esc)) { - lcd_addr_x = lcd_addr_x * 10 + - (*esc - '0'); - esc++; - } + lcd_addr_x = simple_strtoul(esc, &endp, 10); + esc = endp; } else if (*esc == 'y') { esc++; - lcd_addr_y = 0; - while (isdigit(*esc)) { - lcd_addr_y = lcd_addr_y * 10 + - (*esc - '0'); - esc++; - } + lcd_addr_y = simple_strtoul(esc, &endp, 10); + esc = endp; } else break; }