[Git][wine/wine][master] 6 commits: mf: Make flushing on sample grabber largely a no-op.
"Alexandre Julliard (@julliard) via Wine-commits" <[email protected]> Sun, 08 Feb 2026 15:29:01 -0600
| Newsgroups | gmane.comp.emulators.wine.cvs |
|---|---|
| Message-ID | <[email protected]> |
----==_mimepart_6989001d6cb2d_37bc84e4530cc20064c7
Content-Type: text/plain;
charset=UTF-8
Content-Transfer-Encoding: 7bit
Alexandre Julliard pushed to branch master at wine / wine
Commits:
fef7eb6a by Brendan McGrath at 2026-02-08T21:25:27+01:00
mf: Make flushing on sample grabber largely a no-op.
Testing on Windows seems to show a Flush on the sample grabber doesn't
actually flush.
- - - - -
febfda64 by Brendan McGrath at 2026-02-08T21:25:30+01:00
mf: Keep count of samples queued.
- - - - -
6905555f by Brendan McGrath at 2026-02-08T21:25:30+01:00
mf: Always queue a sample unless stopped.
- - - - -
7488a4b8 by Brendan McGrath at 2026-02-08T21:25:30+01:00
mf: Ensure we always have four requests outstanding/satisfied.
The total of:
1. unsatisfied sample requests made to MF; plus
2. samples queued (i.e. satisfied requests)
should always equal 4. Thus, for example, if we flush 3 samples, we need
to request 3 more.
The stop state appears to flush all samples from sample grabber and
all requests outstanding with MF. Hence, starting playback from the stop
state always makes four new sample requests.
Pause and resume always makes four new sample requests, but will also not
flush the queue. This appears to be a Windows bug, as looping pause and
resume can therefore result in samples being queued until we are OOM.
- - - - -
314dffea by Brendan McGrath at 2026-02-08T21:25:32+01:00
mf: Remove no longer used sample_count and samples array.
All samples are now queued in the 'items' list.
- - - - -
26109063 by Brendan McGrath at 2026-02-08T21:25:34+01:00
mf: Request new sample before processing markers.
This switches the order of the RequestSample and Marker events to match
the order on Windows.
- - - - -
2 changed files:
- dlls/mf/samplegrabber.c
- dlls/mf/tests/mf.c
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/d20c6db395b0725e4de06fd2dffbdbc468607cc5...2610906350c2027db1395076f8048790e59f9895
--
View it on GitLab: https://gitlab.winehq.org/wine/wine/-/compare/d20c6db395b0725e4de06fd2dffbdbc468607cc5...2610906350c2027db1395076f8048790e59f9895
You're receiving this email because of your account on gitlab.winehq.org.
----==_mimepart_6989001d6cb2d_37bc84e4530cc20064c7
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" "http://www=
.w3.org/TR/REC-html40/loose.dtd">
<html lang=3D"en" style=3D'--code-editor-font: var(--default-mono-font, "=
GitLab Mono"), JetBrains Mono, Menlo, DejaVu Sans Mono, Liberation Mono, =
Consolas, Ubuntu Mono, Courier New, andale mono, lucida console, monospac=
e;'>
<head>
<meta content=3D"text/html; charset=3Dutf-8" http-equiv=3D"Content-Type">=
<title>
GitLab
</title>
<style data-premailer=3D"ignore" type=3D"text/css">
a { color: #1068bf; }
</style>
<style>img {
max-width: 100%; height: auto;
}
body {
font-size: .875rem;
}
body {
-webkit-text-shadow: rgba(255,255,255,.01) 0 0 1px;
}
body {
font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Ro=
boto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-serif,"Apple Colo=
r Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji"; font-size=
: inherit;
}
</style>
</head>
<body style=3D'font-size: inherit; -webkit-text-shadow: rgba(255,255,255,=
.01) 0 0 1px; font-family: "GitLab Sans",-apple-system,BlinkMacSystemFont=
,"Segoe UI",Roboto,"Noto Sans",Ubuntu,Cantarell,"Helvetica Neue",sans-ser=
if,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emo=
ji";'>
<div class=3D"content">
<h3 style=3D"margin-top: 20px; margin-bottom: 10px;">
Alexandre Julliard pushed to branch master at <a href=3D"https://gitlab.w=
inehq.org/wine/wine">wine / wine</a>
</h3>
<h4 style=3D"margin-top: 10px; margin-bottom: 10px;">
Commits:
</h4>
<ul>
<li>
<strong style=3D"font-weight: 600;"><a href=3D"https://gitlab.winehq.org/=
wine/wine/-/commit/fef7eb6afff45fbc975263eb6da2d6eddc9960c9">fef7eb6a</a>=
</strong>
<div>
<span> by Brendan McGrath </span> <i> at 2026-02-08T21:25:27+01:00 </i>
</div>
<pre class=3D"commit-message" style=3D'white-space: pre-wrap; display: bl=
ock; font-size: 14px; color: #3a383f; position: relative; font-family: "G=
itLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation M=
ono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida co=
nsole", monospace; font-variant-ligatures: none; word-break: break-all; w=
ord-wrap: break-word; background-color: #fbfafd; border-radius: 2px; marg=
in: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>mf: Make flushing o=
n sample grabber largely a no-op.
Testing on Windows seems to show a Flush on the sample grabber doesn't
actually flush.
</pre>
</li>
<li>
<strong style=3D"font-weight: 600;"><a href=3D"https://gitlab.winehq.org/=
wine/wine/-/commit/febfda6458689c0db28b206424b621d306d28955">febfda64</a>=
</strong>
<div>
<span> by Brendan McGrath </span> <i> at 2026-02-08T21:25:30+01:00 </i>
</div>
<pre class=3D"commit-message" style=3D'white-space: pre-wrap; display: bl=
ock; font-size: 14px; color: #3a383f; position: relative; font-family: "G=
itLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation M=
ono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida co=
nsole", monospace; font-variant-ligatures: none; word-break: break-all; w=
ord-wrap: break-word; background-color: #fbfafd; border-radius: 2px; marg=
in: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>mf: Keep count of s=
amples queued.
</pre>
</li>
<li>
<strong style=3D"font-weight: 600;"><a href=3D"https://gitlab.winehq.org/=
wine/wine/-/commit/6905555fc67ff95454f69876c91a39638fce4189">6905555f</a>=
</strong>
<div>
<span> by Brendan McGrath </span> <i> at 2026-02-08T21:25:30+01:00 </i>
</div>
<pre class=3D"commit-message" style=3D'white-space: pre-wrap; display: bl=
ock; font-size: 14px; color: #3a383f; position: relative; font-family: "G=
itLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation M=
ono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida co=
nsole", monospace; font-variant-ligatures: none; word-break: break-all; w=
ord-wrap: break-word; background-color: #fbfafd; border-radius: 2px; marg=
in: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>mf: Always queue a =
sample unless stopped.
</pre>
</li>
<li>
<strong style=3D"font-weight: 600;"><a href=3D"https://gitlab.winehq.org/=
wine/wine/-/commit/7488a4b8944116fed9ed12b96e4b7548f55cf721">7488a4b8</a>=
</strong>
<div>
<span> by Brendan McGrath </span> <i> at 2026-02-08T21:25:30+01:00 </i>
</div>
<pre class=3D"commit-message" style=3D'white-space: pre-wrap; display: bl=
ock; font-size: 14px; color: #3a383f; position: relative; font-family: "G=
itLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation M=
ono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida co=
nsole", monospace; font-variant-ligatures: none; word-break: break-all; w=
ord-wrap: break-word; background-color: #fbfafd; border-radius: 2px; marg=
in: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>mf: Ensure we alway=
s have four requests outstanding/satisfied.
The total of:
1. unsatisfied sample requests made to MF; plus
2. samples queued (i.e. satisfied requests)
should always equal 4. Thus, for example, if we flush 3 samples, we need
to request 3 more.
The stop state appears to flush all samples from sample grabber and
all requests outstanding with MF. Hence, starting playback from the stop
state always makes four new sample requests.
Pause and resume always makes four new sample requests, but will also not=
flush the queue. This appears to be a Windows bug, as looping pause and
resume can therefore result in samples being queued until we are OOM.
</pre>
</li>
<li>
<strong style=3D"font-weight: 600;"><a href=3D"https://gitlab.winehq.org/=
wine/wine/-/commit/314dffeaa3894b62870c3f70cf1b680ed4df0061">314dffea</a>=
</strong>
<div>
<span> by Brendan McGrath </span> <i> at 2026-02-08T21:25:32+01:00 </i>
</div>
<pre class=3D"commit-message" style=3D'white-space: pre-wrap; display: bl=
ock; font-size: 14px; color: #3a383f; position: relative; font-family: "G=
itLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation M=
ono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida co=
nsole", monospace; font-variant-ligatures: none; word-break: break-all; w=
ord-wrap: break-word; background-color: #fbfafd; border-radius: 2px; marg=
in: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>mf: Remove no longe=
r used sample_count and samples array.
All samples are now queued in the 'items' list.
</pre>
</li>
<li>
<strong style=3D"font-weight: 600;"><a href=3D"https://gitlab.winehq.org/=
wine/wine/-/commit/2610906350c2027db1395076f8048790e59f9895">26109063</a>=
</strong>
<div>
<span> by Brendan McGrath </span> <i> at 2026-02-08T21:25:34+01:00 </i>
</div>
<pre class=3D"commit-message" style=3D'white-space: pre-wrap; display: bl=
ock; font-size: 14px; color: #3a383f; position: relative; font-family: "G=
itLab Mono", "JetBrains Mono", "Menlo", "DejaVu Sans Mono", "Liberation M=
ono", "Consolas", "Ubuntu Mono", "Courier New", "andale mono", "lucida co=
nsole", monospace; font-variant-ligatures: none; word-break: break-all; w=
ord-wrap: break-word; background-color: #fbfafd; border-radius: 2px; marg=
in: 0; padding: 8px 12px; border: 1px solid #dcdcde;'>mf: Request new sam=
ple before processing markers.
This switches the order of the RequestSample and Marker events to match
the order on Windows.
</pre>
</li>
</ul>
<h4 style=3D"margin-top: 10px; margin-bottom: 10px;">
2 changed files:
</h4>
<ul>
<li class=3D"file-stats">
<a href=3D"https://gitlab.winehq.org/wine/wine/-/compare/d20c6db395b0725e=
4de06fd2dffbdbc468607cc5...2610906350c2027db1395076f8048790e59f9895#95e07=
2227102f2bcd18ddb27d9bd8233fe5c6cc5">
dlls/mf/samplegrabber.c
</a>
</li>
<li class=3D"file-stats">
<a href=3D"https://gitlab.winehq.org/wine/wine/-/compare/d20c6db395b0725e=
4de06fd2dffbdbc468607cc5...2610906350c2027db1395076f8048790e59f9895#38af2=
002cdac18e4819839775ba914609caa73df">
dlls/mf/tests/mf.c
</a>
</li>
</ul>
</div>
<div class=3D"footer" style=3D"margin-top: 10px;">
<p style=3D"font-size: small; color: #626168;">
=E2=80=94
<br>
<a href=3D"https://gitlab.winehq.org/wine/wine/-/compare/d20c6db395b0725e=
4de06fd2dffbdbc468607cc5...2610906350c2027db1395076f8048790e59f9895">View=
it on GitLab</a>.
<br>
You're receiving this email because of your account on <a target=3D"_blan=
k" rel=3D"noopener noreferrer" href=3D"https://gitlab.winehq.org">gitlab.=
winehq.org</a>. <a href=3D"https://gitlab.winehq.org/-/profile/notificati=
ons" target=3D"_blank" rel=3D"noopener noreferrer" class=3D"mng-notif-lin=
k">Manage all notifications</a> =C2=B7 <a href=3D"https://gitlab.winehq.o=
rg/help" target=3D"_blank" rel=3D"noopener noreferrer" class=3D"help-link=
">Help</a>
<span style=3D"color: transparent; font-size: 0; display: none; overflow:=
hidden; opacity: 0; width: 0; height: 0; max-width: 0; max-height: 0;">
Notification message regarding https://gitlab.winehq.org/wine/wine/-/comp=
are/d20c6db395b0725e4de06fd2dffbdbc468607cc5...2610906350c2027db1395076f8=
048790e59f9895 at 1770586141
</span>
</p>
</div>
</body>
</html>
----==_mimepart_6989001d6cb2d_37bc84e4530cc20064c7--