Messages in this thread |  | | Date | Mon, 16 Feb 2015 20:14:05 +0100 | Subject | Re: [PATCH] lib/vsprintf.c:Avoid extra operation in dentry_name | From | Richard Weinberger <> |
| |
On Mon, Feb 16, 2015 at 7:49 PM, Anshul Garg <aksgarg1989@gmail.com> wrote: > From: Anshul Garg <aksgarg1989@gmail.com> > > Remove unnecessary increment and decrement operation > in dentry_name function as after increment operation > loop is breaked and then decrement operation is > performed. So remove increment and decrement operation > from the function. > > Signed-off-by: Anshul Garg <aksgarg1989@gmail.com> > --- > lib/vsprintf.c | 3 +-- > 1 file changed, 1 insertion(+), 2 deletions(-) > > diff --git a/lib/vsprintf.c b/lib/vsprintf.c > index ec337f6..2a38105 100644 > --- a/lib/vsprintf.c > +++ b/lib/vsprintf.c > @@ -576,11 +576,10 @@ char *dentry_name(char *buf, char *end, const struct dentry *d, struct printf_sp > if (p == d) { > if (i) > array[i] = ""; > - i++; > break; > } > } > - s = array[--i]; > + s = array[i]; > for (n = 0; n != spec.precision; n++, buf++) { > char c = *s++; > if (!c) {
What if the if (d == d) branch is not taken? Does the code then really behave exactly as before?
-- Thanks, //richard
|  |