Are you sure you're not freeing the value that Error will be printing?
val.str is unfortunately a global, that seems to be set at least some times
to the same pointer that xf86tokenString() may return.
(Does it even matter if we free or not? Does returning an error from
config file parsing ever not cause the server to exit?)
-alan-
Oliver McFadden wrote:
> Signed-off-by: Oliver McFadden <[email protected]>
> ---
> hw/xfree86/parser/read.c | 4 ++--
> 1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/hw/xfree86/parser/read.c b/hw/xfree86/parser/read.c
> index 1091be5..4e42b24 100644
> --- a/hw/xfree86/parser/read.c
> +++ b/hw/xfree86/parser/read.c
> @@ -219,15 +219,15 @@ xf86readConfigFile (void)
> }
> else
> {
> - Error (INVALID_SECTION_MSG, xf86tokenString ());
> free(val.str);
> val.str = NULL;
> + Error (INVALID_SECTION_MSG, xf86tokenString ());
> }
> break;
> default:
> - Error (INVALID_KEYWORD_MSG, xf86tokenString ());
> free(val.str);
> val.str = NULL;
> + Error (INVALID_KEYWORD_MSG, xf86tokenString ());
> }
> }
>
--
-Alan Coopersmith- [email protected]
Oracle Solaris Platform Engineering: X Window System
_______________________________________________
[email protected]: X.Org development
Archives: http://lists.x.org/archives/xorg-devel
Info: http://lists.x.org/mailman/listinfo/xorg-devel