Jesper Juhl <[EMAIL PROTECTED]> wrote: > On Wednesday 24 August 2005 22:39, Brian Gerst wrote: > > > > Do this instead: > > char ln[LINE_SIZE], *line; > > > Right, now why didn't I think of that :) > > Jeff: Does the patch below agree with you more? > > > Signed-off-by: Jesper Juhl <[EMAIL PROTECTED]> > --- > > usr/gen_init_cpio.c | 22 ++++++++++++++-------- > 1 files changed, 14 insertions(+), 8 deletions(-) > > --- linux-2.6.13-rc6-mm2-orig/usr/gen_init_cpio.c 2005-06-17 > 21:48:29.000000000 +0200 > +++ linux-2.6.13-rc6-mm2/usr/gen_init_cpio.c 2005-08-24 23:10:36.000000000 > +0200 > @@ -438,7 +438,8 @@ struct file_handler file_handler_table[] > int main (int argc, char *argv[]) > { > FILE *cpio_list; > - char line[LINE_SIZE]; > + char ln[LINE_SIZE]; > + char *line; > char *args, *type; > int ec = 0; > int line_nr = 0; > @@ -455,7 +456,7 @@ int main (int argc, char *argv[]) > exit(1); > } > > - while (fgets(line, LINE_SIZE, cpio_list)) { > + while (line = ln, fgets(line, LINE_SIZE, cpio_list)) { > int type_idx; > size_t slen = strlen(line);
The ',' in the while() isn't exactly readable... first order of bussiness inside: while (fgets(line, LINE_SIZE, cpio_list)) { while (fgets(ln, LINE_SIZE, cpio_list)) { int type_idx; size_t slen = strlen(ln); line = ln; Or just use the fact that fgets(3) returns the buffer if no error: while(line = fgets(ln, LINE_SIZE, cpio_list)) { (yes, gcc will complain... wrap in () to shut it up) -- Dr. Horst H. von Brand User #22616 counter.li.org Departamento de Informatica Fono: +56 32 654431 Universidad Tecnica Federico Santa Maria +56 32 654239 Casilla 110-V, Valparaiso, Chile Fax: +56 32 797513 - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/