[转帖] X61在Linux下也可以用wine模拟星际争霸了
发表于 : 2008-03-05 12:21
作者: forever steel(zhoun)
原发: http://guo9310.blog.163.com/
因为Mesa中的一个bug,如果是intel X3100显卡(用intel的i965驱动),
用wine运行星际争霸, 就会报错退出。
这个补丁解决了这个问题
终于可以在Linux下玩星际争霸了
原发: http://guo9310.blog.163.com/
因为Mesa中的一个bug,如果是intel X3100显卡(用intel的i965驱动),
用wine运行星际争霸, 就会报错退出。
这个补丁解决了这个问题
终于可以在Linux下玩星际争霸了
代码: 全选
--- a/src/mesa/shader/arbprogram.c
+++ b/src/mesa/shader/arbprogram.c
@@ -229,7 +229,7 @@ _mesa_ProgramStringARB(GLenum target, GL
struct gl_vertex_program *prog = ctx->VertexProgram.Current;
_mesa_parse_arb_vertex_program(ctx, target, string, len, prog);
- if (ctx->Driver.ProgramStringNotify)
+ if (ctx->Program.ErrorPos == -1 && ctx->Driver.ProgramStringNotify)
ctx->Driver.ProgramStringNotify( ctx, target, &prog->Base );
}
else if (target == GL_FRAGMENT_PROGRAM_ARB
@@ -237,7 +237,7 @@ _mesa_ProgramStringARB(GLenum target, GL
struct gl_fragment_program *prog = ctx->FragmentProgram.Current;
_mesa_parse_arb_fragment_program(ctx, target, string, len, prog);
- if (ctx->Driver.ProgramStringNotify)
+ if (ctx->Program.ErrorPos == -1 && ctx->Driver.ProgramStringNotify)
ctx->Driver.ProgramStringNotify( ctx, target, &prog->Base );
}
else {