<!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>

<div class="header">
  <h1>The Mesa 3D Graphics Library</h1>
</div>

<iframe src="../contents.html"></iframe>
<div class="content">

<h1>Mesa 19.0.7 Release Notes / June 24, 2019</h1>

<p>
Mesa 19.0.7 is a bug fix release which fixes bugs found since the 19.0.6 release.
</p>
<p>
Mesa 19.0.7 implements the OpenGL 4.5 API, but the version reported by
glGetString(GL_VERSION) or glGetIntegerv(GL_MAJOR_VERSION) /
glGetIntegerv(GL_MINOR_VERSION) depends on the particular driver being used.
Some drivers don't support all the features required in OpenGL 4.5.  OpenGL
4.5 is <strong>only</strong> available if requested at context creation.
Compatibility contexts may report a lower version depending on each driver.
</p>


<h2>SHA256 checksums</h2>
<pre>
81119f0cbbd1fbe7c0574e1e2690e0dae8868124d24c875f5fb76f165db3a54d  mesa-19.0.7.tar.gz
d7bf3db2e442fe5eeb96144f8508d94f04aededdf37af477e644638d366b2b28  mesa-19.0.7.tar.xz
</pre>


<h2>New features</h2>

<p>N/A</p>

<h2>Bug fixes</h2>


<ul>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=110302">Bug 110302</a> - [bisected][regression] piglit egl-create-pbuffer-surface and egl-gl-colorspace regressions</li>

<li><a href="https://bugs.freedesktop.org/show_bug.cgi?id=110921">Bug 110921</a> - virgl on OpenGL 3.3 host regressed to OpenGL 2.1</li>

</ul>

<h2>Changes</h2>


<p>Bas Nieuwenhuizen (5):</p>
<ul>
  <li>radv: Prevent out of bound shift on 32-bit builds.</li>
  <li>radv: Decompress DCC when the image format is not allowed for buffers.</li>
  <li>radv: Fix vulkan build in meson.</li>
  <li>anv: Fix vulkan build in meson.</li>
  <li>meson: Allow building radeonsi with just the android platform.</li>
</ul>

<p>Charmaine Lee (1):</p>
<ul>
  <li>svga: Remove unnecessary check for the pre flush bit for setting vertex buffers</li>
</ul>

<p>Deepak Rawat (1):</p>
<ul>
  <li>winsys/svga/drm: Fix 32-bit RPCI send message</li>
</ul>

<p>Dylan Baker (3):</p>
<ul>
  <li>docs: Add SHA256 sums for 19.0.6</li>
  <li>cherry-ignore: add additional 19.1 only patches</li>
  <li>Bump version for 19.0.7 release</li>
</ul>

<p>Emil Velikov (1):</p>
<ul>
  <li>mapi: correctly handle the full offset table</li>
</ul>

<p>Gert Wollny (2):</p>
<ul>
  <li>virgl: Add a caps feature check version</li>
  <li>virgl: Assume sRGB write control for older guest kernels or virglrenderer hosts</li>
</ul>

<p>Haihao Xiang (1):</p>
<ul>
  <li>i965: support UYVY for external import only</li>
</ul>

<p>Jason Ekstrand (2):</p>
<ul>
  <li>nir/propagate_invariant: Don't add NULL vars to the hash table</li>
  <li>anv: Set STATE_BASE_ADDRESS upper bounds on gen7</li>
</ul>

<p>Kenneth Graunke (1):</p>
<ul>
  <li>glsl: Fix out of bounds read in shader_cache_read_program_metadata</li>
</ul>

<p>Kevin Strasser (2):</p>
<ul>
  <li>gallium/winsys/kms: Fix dumb buffer bpp</li>
  <li>st/mesa: Add rgbx handling for fp formats</li>
</ul>

<p>Lionel Landwerlin (2):</p>
<ul>
  <li>intel/perf: fix EuThreadsCount value in performance equations</li>
  <li>intel/perf: improve dynamic loading config detection</li>
</ul>

<p>Mathias Fröhlich (1):</p>
<ul>
  <li>egl: Don't add hardware device if there is no render node v2.</li>
</ul>

<p>Nanley Chery (1):</p>
<ul>
  <li>anv/cmd_buffer: Initalize the clear color struct for CNL+</li>
</ul>

<p>Nataraj Deshpande (1):</p>
<ul>
  <li>anv: Fix check for isl_fmt in assert</li>
</ul>

<p>Samuel Pitoiset (5):</p>
<ul>
  <li>radv: fix alpha-to-coverage when there is unused color attachments</li>
  <li>radv: fix setting CB_SHADER_MASK for dual source blending</li>
  <li>radv: fix occlusion queries on VegaM</li>
  <li>radv: fix VK_EXT_memory_budget if one heap isn't available</li>
  <li>radv: fix FMASK expand with SRGB formats</li>
</ul>



</div>
</body>
</html>
