<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www.w3.org/TR/REC-html40/loose.dtd">
<html lang="en">
<head>
<meta content="text/html; charset=US-ASCII" http-equiv="Content-Type">
<title>
GitLab
</title>
<style>img {
max-width: 100%; height: auto;
}
</style>
</head>
<body>
<div class="content">
<h3>
Georg Chini pushed to branch master
at <a href="https://gitlab.freedesktop.org/pulseaudio/pulseaudio">PulseAudio / pulseaudio</a>
</h3>
<h4>
Commits:
</h4>
<ul>
<li>
<strong><a href="https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/f5d3606fe76302c7dbdb0f6a80400df829a5f846">f5d3606f</a></strong>
<div>
<span>by Tanu Kaskinen</span>
<i>at 2020-01-05T09:31:07+02:00</i>
</div>
<pre class="commit-message" style="white-space: pre-wrap; margin: 0;">virtual-surround-sink: Use correct sample spec with memblockq
The memblockq stores data in the virtual sink format, not in the master
sink format. The wrong sample spec caused a crash when the virtual sink
rendered data whose length was not divisible by the sink input frame
size.
Fixes: https://gitlab.freedesktop.org/pulseaudio/pulseaudio/issues/786
</pre>
</li>
</ul>
<h4>1 changed file:</h4>
<ul>
<li class="file-stats">
<a href="#94d275bf9e9e0c9bf41712587c27b624651d0985">
src/modules/module-virtual-surround-sink.c
</a>
</li>
</ul>
<h4>Changes:</h4>
<li id="94d275bf9e9e0c9bf41712587c27b624651d0985">
<a href="https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/f5d3606fe76302c7dbdb0f6a80400df829a5f846#94d275bf9e9e0c9bf41712587c27b624651d0985"><strong>src/modules/module-virtual-surround-sink.c</strong></a>
<hr>
<table class="code white" style="font-family: monospace; font-size: 90%;" bgcolor="#fff" width="100%" cellpadding="0" cellspacing="0">
<tr class="line_holder match" id="" style="line-height: 1.6;">
<td class="diff-line-num unfold js-unfold old_line" data-linenumber="786" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">...</td>
<td class="diff-line-num unfold js-unfold new_line" data-linenumber="786" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">...</td>
<td class="line_content match " style="padding-left: 0.5em; padding-right: 0.5em; color: rgba(0,0,0,0.3);" bgcolor="#fafafa">@@ -786,7 +786,7 @@ int pa__init(pa_module*m) {</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="786" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
786
</td>
<td class="diff-line-num new_line" data-linenumber="786" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
786
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC786" class="line" lang="c"> <span class="n" style="color: #333;">u</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">sink</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">input_to_master</span> <span class="o" style="font-weight: 600;">=</span> <span class="n" style="color: #333;">u</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">sink_input</span><span class="p">;</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="787" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
787
</td>
<td class="diff-line-num new_line" data-linenumber="787" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
787
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC787" class="line" lang="c"></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="788" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
788
</td>
<td class="diff-line-num new_line" data-linenumber="788" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
788
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC788" class="line" lang="c"> <span class="n" style="color: #333;">pa_sink_input_get_silence</span><span class="p">(</span><span class="n" style="color: #333;">u</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">sink_input</span><span class="p">,</span> <span class="o" style="font-weight: 600;">&</span><span class="n" style="color: #333;">silence</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder old" id="" style="line-height: 1.6;">
<td class="diff-line-num old old_line" data-linenumber="789" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
789
</td>
<td class="diff-line-num new_line old" data-linenumber="789" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #fac5cd; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#f9d7dc">
</td>
<td class="line_content old" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#fbe9eb">
<pre style="margin: 0;">-<span id="LC789" class="line" lang="c"> <span class="n" style="color: #333;">u</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">memblockq</span> <span class="o" style="font-weight: 600;">=</span> <span class="n" style="color: #333;">pa_memblockq_new</span><span class="p">(</span><span class="s" style="color: #d14;">"module-virtual-surround-sink memblockq"</span><span class="p">,</span> <span class="mi" style="color: #099;">0</span><span class="p">,</span> <span class="n" style="color: #333;">MEMBLOCKQ_MAXLENGTH</span><span class="p">,</span> <span class="mi" style="color: #099;">0</span><span class="p">,</span> <span class="o" style="font-weight: 600;">&</span><span class="n" style="color: #333;">s<span class="idiff left right">ink_input_s</span>s</span><span class="p">,</span> <span class="mi" style="color: #099;">1</span><span class="p">,</span> <span class="mi" style="color: #099;">1</span><span class="p">,</span> <span class="mi" style="color: #099;">0</span><span class="p">,</span> <span class="o" style="font-weight: 600;">&</span><span class="n" style="color: #333;">silence</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder new" id="" style="line-height: 1.6;">
<td class="diff-line-num new old_line" data-linenumber="790" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
</td>
<td class="diff-line-num new new_line" data-linenumber="789" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #c7f0d2; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#ddfbe6">
789
</td>
<td class="line_content new" style="padding-left: 0.5em; padding-right: 0.5em;" bgcolor="#ecfdf0">
<pre style="margin: 0;">+<span id="LC789" class="line" lang="c"> <span class="n" style="color: #333;">u</span><span class="o" style="font-weight: 600;">-></span><span class="n" style="color: #333;">memblockq</span> <span class="o" style="font-weight: 600;">=</span> <span class="n" style="color: #333;">pa_memblockq_new</span><span class="p">(</span><span class="s" style="color: #d14;">"module-virtual-surround-sink memblockq"</span><span class="p">,</span> <span class="mi" style="color: #099;">0</span><span class="p">,</span> <span class="n" style="color: #333;">MEMBLOCKQ_MAXLENGTH</span><span class="p">,</span> <span class="mi" style="color: #099;">0</span><span class="p">,</span> <span class="o" style="font-weight: 600;">&</span><span class="n" style="color: #333;">ss</span><span class="p">,</span> <span class="mi" style="color: #099;">1</span><span class="p">,</span> <span class="mi" style="color: #099;">1</span><span class="p">,</span> <span class="mi" style="color: #099;">0</span><span class="p">,</span> <span class="o" style="font-weight: 600;">&</span><span class="n" style="color: #333;">silence</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="790" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
790
</td>
<td class="diff-line-num new_line" data-linenumber="790" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
790
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC790" class="line" lang="c"> <span class="n" style="color: #333;">pa_memblock_unref</span><span class="p">(</span><span class="n" style="color: #333;">silence</span><span class="p">.</span><span class="n" style="color: #333;">memblock</span><span class="p">);</span></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="791" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
791
</td>
<td class="diff-line-num new_line" data-linenumber="791" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
791
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC791" class="line" lang="c"></span>
</pre>
</td>
</tr>
<tr class="line_holder" id="" style="line-height: 1.6;">
<td class="diff-line-num old_line" data-linenumber="792" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
792
</td>
<td class="diff-line-num new_line" data-linenumber="792" style="width: 35px; color: rgba(0,0,0,0.3); border-right-width: 1px; border-right-color: #f0f0f0; border-right-style: solid; padding: 0 5px;" align="right" bgcolor="#fafafa">
792
</td>
<td class="line_content" style="padding-left: 0.5em; padding-right: 0.5em;">
<pre style="margin: 0;"> <span id="LC792" class="line" lang="c"> <span class="cm" style="color: #998; font-style: italic;">/* resample hrir */</span></span>
</pre>
</td>
</tr>
</table>
<br>
</li>
</div>
<div class="footer" style="margin-top: 10px;">
<p style="font-size: small; color: #777;">
—
<br>
<a href="https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/f5d3606fe76302c7dbdb0f6a80400df829a5f846">View it on GitLab</a>.
<br>
You're receiving this email because of your account on gitlab.freedesktop.org.
If you'd like to receive fewer emails, you can
adjust your notification settings.
<script type="application/ld+json">{"@context":"http://schema.org","@type":"EmailMessage","action":{"@type":"ViewAction","name":"View Commit","url":"https://gitlab.freedesktop.org/pulseaudio/pulseaudio/commit/f5d3606fe76302c7dbdb0f6a80400df829a5f846"}}</script>
</p>
</div>
</body>
</html>