Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 447736 - app-emulation/wine-9999 - 0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch fails to apply
Summary: app-emulation/wine-9999 - 0027-dsound-fix-format-handling-on-invalid-format-t...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Wine Maintainers
URL:
Whiteboard:
Keywords:
: 447978 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-12-18 16:40 UTC by jospezial
Modified: 2013-01-03 20:28 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments
failed to patch output (0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch.out,15.69 KB, text/plain)
2012-12-18 16:40 UTC, jospezial
Details

Note You need to log in before you can comment on or make changes to this bug.
Description jospezial 2012-12-18 16:40:50 UTC
Created attachment 332662 [details]
failed to patch output

[ ok ]
 * Applying 0026-dsound-rework-ugly-mixer-logic.patch ...
 [ ok ]
 * Applying 0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch ...

 * Failed Patch: 0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch !
 *  ( ../winepulse-patches-1.5.19/0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch )
 * 
 * Include in your bugreport the contents of:
 * 
 *   /var/tmp/portage/app-emulation/wine-9999/temp/0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch.out

 * ERROR: app-emulation/wine-9999 failed (prepare phase):
 *   Failed Patch: 0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch!
 * 
 * Call stack:
 *     ebuild.sh, line   93:  Called src_prepare
 *   environment, line 4033:  Called epatch '../winepulse-patches-1.5.19/0001-server-Use-rtkit-to-set-realtime-priority-try-4.patch' '../winepulse-patches-1.5.19/0002-avrt-Add-realtime-to-stub.patch' '../winepulse-patches-1.5.19/0003-server-Bump-priority-on-server-to-process-messages-f.patch' '../winepulse-patches-1.5.19/0004-rtkit-add-SIGXCPU-handling-to-wineserver.patch' '../winepulse-patches-1.5.19/0005-mmdevapi-be-stricter-about-tests.patch' '../winepulse-patches-1.5.19/0006-winmm-Load-winealsa-if-winepulse-is-found.patch' '../winepulse-patches-1.5.19/0007-winepulse-Add-initial-stub-for-pulseaudio-support.patch' '../winepulse-patches-1.5.19/0008-winepulse-Add-format-and-period-probing.patch' '../winepulse-patches-1.5.19/0009-winepulse-Add-audioclient.patch' '../winepulse-patches-1.5.19/0010-winepulse-Add-IAudioRenderClient-and-IAudioCaptureCl.patch' '../winepulse-patches-1.5.19/0011-winepulse-Add-IAudioClock-and-IAudioClock2.patch' '../winepulse-patches-1.5.19/0012-winepulse-Add-audiostreamvolume.patch' '../winepulse-patches-1.5.19/0013-winepulse-Add-session-support.patch' '../winepulse-patches-1.5.19/0014-fix-fdels-trailing-whitespaces.patch' '../winepulse-patches-1.5.19/0015-winepulse-v12.patch' '../winepulse-patches-1.5.19/0016-winepulse-v15-Add-support-for-missing-formats-and-si.patch' '../winepulse-patches-1.5.19/0017-winepulse-v16-Add-official-warning-wine-doesn-t-want.patch' '../winepulse-patches-1.5.19/0018-winepulse-v17-Fix-winmm-tests.patch' '../winepulse-patches-1.5.19/0019-winepulse-v18-Latency-and-compilation-improvements.patch' '../winepulse-patches-1.5.19/0020-winepulse-API-Compatibility-with-1.5.2-onward-v2.patch' '../winepulse-patches-1.5.19/0021-winepulse-Fix-low-latency-support.patch' '../winepulse-patches-1.5.19/0022-winepulse-drop-realtime-priority-before-thread-destr.patch' '../winepulse-patches-1.5.19/0023-winepulse-remove-bogus-SetEvent-from-pulse_started_c.patch' '../winepulse-patches-1.5.19/0024-winepulse-disable-the-setevent-part-of-the-latency-h.patch' '../winepulse-patches-1.5.19/0025-dsound-Use-event-based-threads.patch' '../winepulse-patches-1.5.19/0026-dsound-rework-ugly-mixer-logic.patch' '../winepulse-patches-1.5.19/0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch' '../winepulse-patches-1.5.19/0028-dsound-fixup-DSOUND_WaveQueue-checks.patch' '../winepulse-patches-1.5.19/0029-dsound-remove-state-machine-from-render-buffer.patch' '../winepulse-patches-1.5.19/0030-winepulse-v20-fix-the-checks-in-IsFormatSupported.patch' '../winepulse-patches-1.5.19/0031-winepulse-fixup-IsFormatSupported-calls.patch' '../winepulse-patches-1.5.19/0032-winepulse-v21-return-early-if-padding-didn-t-update.patch'
 *   environment, line 1838:  Called epatch '../winepulse-patches-1.5.19/0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch'
 *   environment, line 1997:  Called die
 * The specific snippet of code:
 *               die "Failed Patch: ${patchname}!";
 *
Comment 1 Andrew Resch 2012-12-18 18:58:40 UTC
My guess is that this change broke it: http://source.winehq.org/git/wine.git/blobdiff/10fb1eac9c499d3a017729da4d167d12c0425087..b0e95d27a9f816ba3319ce5e48e51f175f44713c:/dlls/dsound/primary.c

Should be easy enough to rebuild this patch if it's just an indentation fix.
Comment 2 Andrew Resch 2012-12-18 19:21:08 UTC
Yup, I changed the tabs to spaces (4) in the patch and it applied cleanly.


--- 0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch	2012-12-18 11:03:27.075259290 -0800
+++ /tmp/winepulse-patches-1.5.19/0027-dsound-fix-format-handling-on-invalid-format-to-neve.patch	2012-12-18 11:06:28.878716335 -0800
@@ -515,9 +515,9 @@
 -        device->normfunction = normfunctions[device->pwfx->wBitsPerSample/8 - 1];
 +    device->writelead = (wfx->nSamplesPerSec / 100) * wfx->nBlockAlign;
  
--	FillMemory(device->buffer, device->buflen, (device->pwfx->wBitsPerSample == 8) ? 128 : 0);
--	FillMemory(device->mix_buffer, device->mix_buffer_len, 0);
--	device->playpos = 0;
+-    FillMemory(device->buffer, device->buflen, (device->pwfx->wBitsPerSample == 8) ? 128 : 0);
+-    FillMemory(device->mix_buffer, device->mix_buffer_len, 0);
+-    device->playpos = 0;
 +    TRACE("buflen: %u, fraglen: %u, mix_buffer_len: %u\n",
 +          device->buflen, device->fraglen, device->mix_buffer_len);
  

Sorry for the ugliness of a diff of a diff ;)
Comment 3 jospezial 2012-12-20 19:18:25 UTC
The next wine patch that fails:

https://bugs.gentoo.org/show_bug.cgi?id=447978

Perhaps it is the same solution?
Comment 4 Alexandre Rostovtsev (RETIRED) gentoo-dev 2012-12-22 04:41:05 UTC
I've added a new version of the pulseaudio patchset which is compatible with wine-1.5.20 and the current -9999.

I've also added a "vanilla" use flag; when USE=vanilla, the pulseaudio patchset is not applied at all (when USE="-pulseaudio -vanilla", it's applied but not enabled), which may be useful for 9999 users who need the latest features from wine git but don't need high-quality pulse support.

>*wine-1.5.20 (22 Dec 2012)
>
>  22 Dec 2012; Alexandre Rostovtsev <tetromino@gentoo.org> +wine-1.5.20.ebuild,
>  wine-9999.ebuild:
>  Bump, see http://www.winehq.org/announce/1.5.20 for the announcement. Added
>  vanilla USE flag that minimizes the number of applied patches, which will
>  help avoid problems like bug #447736/#447978 for wine-9999 users who do not
>  need pulseaudio. Update to EAPI5.
Comment 5 Alexandre Rostovtsev (RETIRED) gentoo-dev 2012-12-22 04:41:26 UTC
*** Bug 447978 has been marked as a duplicate of this bug. ***
Comment 6 jospezial 2013-01-03 20:28:52 UTC
(In reply to comment #4)
> I've added a new version of the pulseaudio patchset which is compatible with
> wine-1.5.20 and the current -9999.
> 
> I've also added a "vanilla" use flag; when USE=vanilla, the pulseaudio
> patchset is not applied at all (when USE="-pulseaudio -vanilla", it's
> applied but not enabled), which may be useful for 9999 users who need the
> latest features from wine git but don't need high-quality pulse support.
> 
> >*wine-1.5.20 (22 Dec 2012)
> >
> >  22 Dec 2012; Alexandre Rostovtsev <tetromino@gentoo.org> +wine-1.5.20.ebuild,
> >  wine-9999.ebuild:
> >  Bump, see http://www.winehq.org/announce/1.5.20 for the announcement. Added
> >  vanilla USE flag that minimizes the number of applied patches, which will
> >  help avoid problems like bug #447736/#447978 for wine-9999 users who do not
> >  need pulseaudio. Update to EAPI5.

Thank you.
Installs fine again.

app-emulation/wine-9999 was built with the following:
USE="X alsa cups fontconfig gecko gnutls gphoto2 gsm jpeg lcms mono mp3 ncurses nls openal opencl opengl oss perl png prelink samba scanner ssl threads truetype udisks v4l win32 win64 xcomposite xinerama xml -capi -custom-cflags (-gstreamer) -ldap -odbc -osmesa (-selinux) -test"