On Thu, Jul 18, 2013 at 03:29:17PM +0800, Chen Gang wrote:
> On 07/18/2013 12:28 PM, Chen Gang wrote:
> >  
> >>    strcpy(fmt1, fmt);
> >> @@ -199,46 +214,51 @@ static void prepare_error_buf(const char *fmt, 
> >> va_list args)
> >>    while ((k = is_there_reiserfs_struct(fmt1, &what)) != NULL) {
> >>            *k = 0;
> >>  
> >> -          p += vsprintf(p, fmt1, args);
> >> +          p += vsnprintf(p, left, fmt1, args);
> 
> At least, need use vscnprintf() instead of vsnprintf(), since we need
> the real written length return.

                n = vsnprintf(p, left, ....);
                left -= n;
                if (left <= 0) /* overflow */
                        break;  /* or whatever's suitable here */
                p += n;
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Reply via email to