[13/18] wpp: Add wpp_set_exit_on_error function

Matteo Bruni matteo.mystral at gmail.com
Mon Aug 17 15:07:50 CDT 2009


2009/8/17 Juan Lang <juan.lang at gmail.com>:
> Hi Matteo,
>
> this approach seems pretty inflexible to me:
>
> +/* Whether to exit the app on errors (default: true) */
> +extern void wpp_set_exit_on_error( int exit );
>
> @@ -646,7 +654,8 @@ int ppy_error(const char *s, ...)
>        va_start(ap, s);
>        generic_msg(s, "Error", ppy_text, ap);
>        va_end(ap);
> -       exit(1);
> +       if(pp_status.exit_on_error) exit(1);
> +       else pp_status.state = 1;
>        return 1;
>  }
>
> It seems as though you might instead have a global error function that
> should be called, which defaults to exit().  In fact, that's what
> ppy_error seems to be.  So I think you'd want to make ppy_error into a
> function pointer, and make the current definition its default value,
> or something like that.  I can't imagine that retaining the output to
> stderr is all that useful in the context of the D3D9 shader assembler.
>
> You could further split this patch:  this is half of it, setting and
> dealing with the exit_on_error flag.  The other half deals with the
> current assumption that ppy_error never returns.  You can make
> removing that assumption one patch, and this--changing the error
> function to something else--a subsequent patch.
> --Juan
>

Good idea. I'll do it for the next try.



More information about the wine-devel mailing list