<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html lang="en">
<head>
  <meta http-equiv="content-type" content="text/html; charset=utf-8">
  <title>Mesa Release Notes</title>
  <link rel="stylesheet" type="text/css" href="mesa.css">
</head>
<body>

<h1>Mesa 7.10.2 Release Notes / April 6, 2011</h1>

<p>
Mesa 7.10.2 is a bug fix release which fixes bugs found since the 7.10 release.
</p>
<p>
Mesa 7.10.2 implements the OpenGL 2.1 API, but the version reported by
glGetString(GL_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 2.1.
</p>
<p>
See the <a href="install.html">Compiling/Installing page</a> for prerequisites
for DRI hardware acceleration.
</p>


<h2>MD5 checksums</h2>
<pre>
2f9f444265534a2cfd9a99d1a8291089  MesaLib-7.10.2.tar.gz
f5de82852f1243f42cc004039e10b771  MesaLib-7.10.2.tar.bz2
47836e37bab6fcafe3ac90c9544ba0e9  MesaLib-7.10.2.zip
175120325828f313621cc5bc6c504803  MesaGLUT-7.10.2.tar.gz
8c71d273f5f8d6c5eda4ffc39e0fe03e  MesaGLUT-7.10.2.tar.bz2
03036c8efe7b791a90fa0f2c41b43f43  MesaGLUT-7.10.2.zip
</pre>


<h2>New features</h2>
<p>None.</p>

<h2>Bug fixes</h2>
<p>This list is likely incomplete.</p>
<ul>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=29172">Bug 29172</a> - Arrandale - Pill Popper Pops Pills</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=31159">Bug 31159</a> - shadow problem in 0ad game</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32688">Bug 32688</a> - [RADEON:KMS:R300G] some games have a wireframe or outline visible</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=32949">Bug 32949</a> - [glsl wine] Need for Speed renders incorrectly with GLSL enabled</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34203">Bug 34203</a> - [GLSL] fail to call long chains across shaders</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34376">Bug 34376</a> - [GLSL] allowing assignment to unsized array
  <ul>
    <li>The commit message incorrectly
    lists <a href="https://bugs.freedesktop.org/show_bug.cgi?id=34367">bug
    34367</a>.</li>
  </ul>
</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34370">Bug 34370</a> - [GLSL] "i&lt;5 &amp;&amp; i&lt;4" in for loop fails</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=34374">Bug 34374</a> - [GLSL] fail to redeclare an array using initializer</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35073">Bug 35073</a> - [GM45] Alpha test is broken when rendering to FBO with no color attachment</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=35483">Bug 35483</a> - util_blit_pixels_writemask: crash in line 322 of src/gallium/auxiliary/util/u_blit.c</li>

<!-- <li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=">Bug </a> - </li> -->

</ul>


<h2>Changes</h2>
<p>The full set of changes can be viewed by using the following GIT command:</p>

<pre>
  git log mesa-7.10.1..mesa-7.10.2
</pre>

<p><em>Note:</em> Reverted commits and the reverts are not included in this list.</p>

<p>Alex Deucher (2):</p>
<ul>
  <li>r600c: add new ontario pci ids</li>
  <li>r600g: add some additional ontario pci ids</li>
</ul>

<p>Benjamin Franzke (1):</p>
<ul>
  <li>st/dri: Fix surfaceless gl using contexts with previous bound surfaces</li>
</ul>

<p>Brian Paul (9):</p>
<ul>
  <li>docs: pull 7.9.2 release notes into 7.10 branch</li>
  <li>docs: update news.html with 7.10.1 and 7.9.2 releases</li>
  <li>docs: fill in 7.10.1 release data</li>
  <li>docs: add, fix release notes links</li>
  <li>docs: update info about Mesa packaging/contents</li>
  <li>docs: update prerequisites, remove old demo info</li>
  <li>mesa: Guard against null pointer deref in fbo validation</li>
  <li>st/mesa: Apply LOD bias from correct texture unit</li>
  <li>glsl: silence warning in printf() with a cast</li>
</ul>

<p>Chad Versace (1):</p>
<ul>
  <li>i965: Fix tex_swizzle when depth mode is GL_RED</li>
</ul>

<p>Dave Airlie (1):</p>
<ul>
  <li>r600: don't close fd on failed load</li>
</ul>

<p>Eric Anholt (2):</p>
<ul>
  <li>i965: Apply a workaround for the Ironlake "vertex flashing".</li>
  <li>i965: Fix alpha testing when there is no color buffer in the FBO.</li>
</ul>

<p>Fabian Bieler (1):</p>
<ul>
  <li>st/mesa: Apply LOD from texture object</li>
</ul>

<p>Henri Verbeet (1):</p>
<ul>
  <li>st/mesa: Validate state before doing blits.</li>
</ul>

<p>Ian Romanick (13):</p>
<ul>
  <li>docs: Add 7.10.1 md5sums</li>
  <li>glsl: Refactor AST-to-HIR code handling variable initializers</li>
  <li>glsl: Refactor AST-to-HIR code handling variable redeclarations</li>
  <li>glsl: Process redeclarations before initializers</li>
  <li>glsl: Function signatures cannot have NULL return type</li>
  <li>glsl: Add several function / call related validations</li>
  <li>linker: Add imported functions to the linked IR</li>
  <li>glsl: Use insert_before for lists instead of open coding it</li>
  <li>glsl: Only allow unsized array assignment in an initializer</li>
  <li>glcpp: Refresh autogenerated lexer files</li>
  <li>docs: Initial bits of 7.10.2 release notes</li>
  <li>mesa: set version string to 7.10.2</li>
  <li>mesa: Remove nonexistant files from _FILES lists</li>
</ul>

<p>Jerome Glisse (1):</p>
<ul>
  <li>r600g: move user fence into base radeon structure</li>
</ul>

<p>José Fonseca (2):</p>
<ul>
  <li>mesa: Fix typo glGet*v(GL_TEXTURE_COORD_ARRAY_*).</li>
  <li>mesa: More glGet* fixes.</li>
</ul>

<p>Kenneth Graunke (4):</p>
<ul>
  <li>glcpp: Rework lexer to use a SKIP state rather than REJECT.</li>
  <li>glcpp: Remove trailing contexts from #if rules.</li>
  <li>i965/fs: Fix linear gl_Color interpolation on pre-gen6 hardware.</li>
  <li>glsl: Accept precision qualifiers on sampler types, but only in ES.</li>
</ul>

<p>Marek Olšák (15):</p>
<ul>
  <li>st/mesa: fix crash when DrawBuffer-&gt;_ColorDrawBuffers[0] is NULL</li>
  <li>st/mesa: fail to alloc a renderbuffer if st_choose_renderbuffer_format fails</li>
  <li>r300/compiler: fix the saturate modifier when applied to TEX instructions</li>
  <li>r300/compiler: fix translating the src negate bits in pair_translate</li>
  <li>r300/compiler: Abs doesn't cancel Negate (in the conversion to native swizzles)</li>
  <li>r300/compiler: TEX instructions don't support negation on source arguments</li>
  <li>r300/compiler: do not set TEX_IGNORE_UNCOVERED on r500</li>
  <li>r300/compiler: saturate Z before the shadow comparison</li>
  <li>r300/compiler: fix equal and notequal shadow compare functions</li>
  <li>r300/compiler: remove unused variables</li>
  <li>st/mesa: fix crash when using both user and vbo buffers with the same stride</li>
  <li>r300g: fix alpha-test with no colorbuffer</li>
  <li>r300g: tell the GLSL compiler to lower the continue opcode</li>
  <li>r300/compiler: propagate SaturateMode down to the result of shadow comparison</li>
  <li>r300/compiler: apply the texture swizzle to shadow pass and fail values too</li>
</ul>

<p>Michel Dänzer (1):</p>
<ul>
  <li>Use proper source row stride when getting depth/stencil texels.</li>
</ul>

<p>Tom Stellard (4):</p>
<ul>
  <li>r300/compiler: Use a 4-bit writemask in pair instructions</li>
  <li>prog_optimize: Fix reallocating registers for shaders with loops</li>
  <li>r300/compiler: Fix vertex shader MAD instructions with constant swizzles</li>
  <li>r300/compiler: Don't try to convert RGB to Alpha in full instructions</li>
</ul>

</body>
</html>
