thank you, i can do this in 2-3 hours, because i am compiling my embedded distro too :-) i let you know when i am tested this.
Stephan Am 01.01.2010 21:23, schrieb Dan Nicholson: > On Fri, Jan 01, 2010 at 07:48:30PM +0100, Stephan Raue wrote: > >> Am 01.01.2010 19:13, schrieb Dan Nicholson: >> >>> On Fri, Jan 1, 2010 at 7:38 AM, Stephan Raue<[email protected]> >>> wrote: >>> >>>> another little issue i have found in the implementation of xorg.conf.d: >>>> >>>> if i have configfiles without an empty last line there are errors >>>> because the first line of the second configfile will be parsed with the >>>> last line of the first config file. >>>> >>>> >>> Wow, good to know. I guess my editor always ends the files with >>> newlines. I'll have to take a look at it. >>> >>> >>> >> thank you :-) and thank you for our good work :-) >> > Can you try the patch below? I haven't built or tested it (upgrading my > system right now), but I think it should do the right thing. > > -- > Dan > > From 16902d9960518c2ac54199440746e77ff6cb93f5 Mon Sep 17 00:00:00 2001 > From: Dan Nicholson<[email protected]> > Date: Fri, 1 Jan 2010 11:58:03 -0800 > Subject: [PATCH] xfree86: Return non-NULL when reaching EOF with more files > to parse > > The config parser is line based, so it has to return when reaching EOF > just like when reaching EOL. In order to signal that there are still > files to parse, non-NULL must be returned. Previously, the parser was > just moving to the first line of the next file and continuing without > returning to the caller. This only works when each file ends in an empty > line. > > Signed-off-by: Dan Nicholson<[email protected]> > --- > hw/xfree86/parser/scan.c | 15 +++++++++------ > 1 files changed, 9 insertions(+), 6 deletions(-) > > diff --git a/hw/xfree86/parser/scan.c b/hw/xfree86/parser/scan.c > index b80fbfb..b26b6f6 100644 > --- a/hw/xfree86/parser/scan.c > +++ b/hw/xfree86/parser/scan.c > @@ -226,14 +226,17 @@ xf86getNextLine(void) > ret = fgets(configBuf + pos, configBufLen - pos - 1, > configFiles[curFileIndex].file); > > + /* > + * If we've reached EOF, prepare for the next file and don't > + * return NULL. Otherwise, just reset the index for parsing. > + */ > if (!ret) { > - /* stop if there are no more files */ > - if (++curFileIndex>= numFiles) { > + if (++curFileIndex< numFiles) { > + ret = configBuf; > + configLineNo = 0; > + } else > curFileIndex = 0; > - break; > - } > - configLineNo = 0; > - continue; > + break; > } > > /* search for EOL in the new block of chars */ > -- ### OpenELEC.tv ### The free and open Mediacenter Distribution 4 you http://www.openelec.tv _______________________________________________ xorg-devel mailing list [email protected] http://lists.x.org/mailman/listinfo/xorg-devel
