slang: No need to purify source text for tokeniser.
authorMichal Krol <michal@vmware.com>
Sat, 21 Nov 2009 19:43:02 +0000 (20:43 +0100)
committerMichal Krol <michal@vmware.com>
Sat, 21 Nov 2009 19:43:02 +0000 (20:43 +0100)
src/mesa/shader/slang/slang_compile.c

index 44c889734b65bfe43ee36c5dd9c7c142f53d9456..f2342bfdcbebae088af490658d007f53c3f22394 100644 (file)
@@ -2592,34 +2592,24 @@ compile_with_grammar(const char *source,
    unsigned int maxVersion;
    int result;
    struct sl_pp_purify_options options;
-   char *outbuf;
    char errmsg[200] = "";
    unsigned int errline = 0;
    struct sl_pp_token_info *intokens;
    unsigned int tokens_eaten;
 
-   memset(&options, 0, sizeof(options));
-   if (sl_pp_purify(source, &options, &outbuf, errmsg, sizeof(errmsg), &errline)) {
-      slang_info_log_error(infolog, errmsg);
-      return GL_FALSE;
-   }
-
    context = sl_pp_context_create();
    if (!context) {
       slang_info_log_error(infolog, "out of memory");
-      free(outbuf);
       return GL_FALSE;
    }
 
-   if (sl_pp_tokenise(context, outbuf, &intokens)) {
+   memset(&options, 0, sizeof(options));
+   if (sl_pp_tokenise(context, &options, source, &intokens)) {
       slang_info_log_error(infolog, "%s", sl_pp_context_error_message(context));
       sl_pp_context_destroy(context);
-      free(outbuf);
       return GL_FALSE;
    }
 
-   free(outbuf);
-
    if (sl_pp_version(context, intokens, &version, &tokens_eaten)) {
       slang_info_log_error(infolog, "%s", sl_pp_context_error_message(context));
       sl_pp_context_destroy(context);