http://bugs.winehq.org/show_bug.cgi?id=24196
Summary: oleaut32: typelib registration should not fail
bitness-neutral assemblies (32-bit typelib wrapped in
64-bit PE, x64 .NET 2.0 installer)
Product: Wine
Version: 1.3.1
Platform: x86-64
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: oleaut32
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: focht(a)gmx.net
Hello,
another x64 .NET Framework 2.0 installer bug.
The typelib registration fails for some assemblies:
--- snip ---
...
002c:Call KERNEL32.CreateProcessA(00000000,7fffec16f650
"\"C:\\windows\\Microsoft.NET\\Framework64\\v2.0.50727\\regtlibv12.exe\"
\"C:\\windows\\Microsoft.NET\\Framework64\\v2.0.50727\\System.Drawing.tlb\"",00000000,00000000,7fff00000001,00000000,00000000,00000000,7fffec8edfe8,7fffec8eb9e0)
ret=4fc035780
...
002e:Call oleaut32.LoadTypeLib(7ffff143f880
L"C:\\windows\\Microsoft.NET\\Framework64\\v2.0.50727\\System.Drawing.tlb",7ffff143f870)
ret=004027bf
...
002e:Call KERNEL32.LoadLibraryExW(7ffff143f360
L"C:\\windows\\Microsoft.NET\\Framework64\\v2.0.50727\\System.Drawing.tlb",00000000,0000000b)
ret=7ffff105ffb0
002e:Ret KERNEL32.LoadLibraryExW() retval=7fffefad0001 ret=7ffff105ffb0
...
002e:Ret oleaut32.LoadTypeLib() retval=00000000 ret=004027bf
002e:Call oleaut32.RegisterTypeLib(7ffff74d30d0,7ffff143f880
L"C:\\windows\\Microsoft.NET\\Framework64\\v2.0.50727\\System.Drawing.tlb",00000000)
ret=00402808
...
002e:Ret oleaut32.RegisterTypeLib() retval=800288bd ret=00402808
...
002c:Call msi.MsiRecordSetStringW(00000005,00000000,7fffec8ec620
L"RegisterTypeLib of
C:\\windows\\Microsoft.NET\\Framework64\\v2.0.50727\\System.Drawing.tlb failed
: 800288bd") ret=4fc0358bd
--- snip ---
The PE file containing typelib resources "System.Drawing.tlb" is a PE64 binary.
Dumping the typelib resource reveals:
--- snip ---
Offset 0 1 2 3 4 5 6 7 8 9 A B C D E F Ascii
000002B0 4D 53 46 54 02 00 01 00 00 00 00 00 09 04 00 00 MSFT.........
000002C0 00 00 00 00 41 00 00 00 02 00 00 00 00 00 00 00 ....A..........
000002D0 0C 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ...............
--- snip ---
flags: 0x41 -> indicates the typelib itself is 32 bit (SYSKIND = SYS_WIN32)
The folder "c:\windows\Microsoft.NET\Framework64\v2.0.50727\" contains
assemblies with following characteristics:
64-bit PE + 64 bit typelib part (flags = 0x43 -> SYSKIND = SYS_WIN64)
64-bit PE + 32 bit typelib part (flags = 0x41 -> SYSKIND = SYS_WIN32)
I verified that Wine msi correctly installs them into their appropriate 32 bit
and 64 bit folders.
The 32-bit counterparts from "c:\windows\Microsoft.NET\Framework\v2.0.50727\"
are all:
32-bit PE + 32 bit typelib part (flags = 0x41 -> SYSKIND = SYS_WIN32)
===
What causes the embedded typelib to be 32-bit?
Well, the .NET assemblies these typelibs belong to are flagged as "MSIL"
assemblies.
These are bitness-neutral assemblies that are portable and can run under any
platform.
When you look at 64-bit ->
"c:\windows\Microsoft.NET\Framework64\v2.0.50727\RedistList\FrameworkList.xml":
--- snip ---
<File AssemblyName="System.Drawing" Version="2.0.0.0"
PublicKeyToken="b03f5f7f11d50a3a" Culture="neutral"
ProcessorArchitecture="MSIL" FileVersion="2.0.50727.42" InGAC="true" />
--- snip ---
Example for bitness-aware assembly (managed C++ assemblies are automatically
platform specific):
64-bit ->
"c:\windows\Microsoft.NET\Framework64\v2.0.50727\RedistList\FrameworkList.xml":
--- snip ---
<File AssemblyName="System.Data" Version="2.0.0.0"
PublicKeyToken="b77a5c561934e089" Culture="neutral"
ProcessorArchitecture="AMD64" FileVersion="2.0.50727.42" InGAC="true" />
--- snip ---
32-bit ->
"c:\windows\Microsoft.NET\Framework\v2.0.50727\RedistList\FrameworkList.xml":
(the 64 bit .NET Framework 2.0 redist contains both: the 64 bit _and_ 32 bit
runtime)
--- snip ---
<File AssemblyName="System.Data" Version="2.0.0.0"
PublicKeyToken="b77a5c561934e089" Culture="neutral" ProcessorArchitecture="x86"
FileVersion="2.0.50727.42" InGAC="true" />
--- snip ---
I guess Wine should not fail on these bitness-neutral assemblies that contain
32-bit typelibs.
--- snip dlls/oleaut32/typelib.c ---
HRESULT WINAPI RegisterTypeLib(
ITypeLib * ptlib, /* [in] Pointer to the library*/
OLECHAR * szFullPath, /* [in] full Path of the library*/
OLECHAR * szHelpDir) /* [in] dir to the helpfile for the library,
may be NULL*/
{
...
if (ptlib == NULL || szFullPath == NULL)
return E_INVALIDARG;
if (FAILED(ITypeLib_GetLibAttr(ptlib, &attr)))
return E_FAIL;
TRACE("(%s,%d)", debugstr_w(szFullPath), attr->syskind);
#ifdef _WIN64
if (attr->syskind != SYS_WIN64) return TYPE_E_BADMODULEKIND;
#else
if (attr->syskind != SYS_WIN32 && attr->syskind != SYS_WIN16) return
TYPE_E_BADMODULEKIND;
#endif
...
}
--- snip dlls/oleaut32/typelib.c ---
Regards
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=24200
Summary: msi: properly handle msidbComponentAttributes64bit
attribute to support x64 installers that mix
architectures in a single MSI package (32-bit and
64-bit components, filesystem, registry)
Product: Wine
Version: 1.3.1
Platform: x86-64
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: msi
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: focht(a)gmx.net
Hello,
one of the main problems with current Wine msi is there are x64 installers that
mix architectures in a single MSI package: 64-bit and 32-bit components
(without a separate 32-bit installer for 32-bit components).
Basically 'msidbComponentAttributes64bit' is not handled.
Example: "mscoree.dll" -> .NET bootstrapper
"Component" table:
--- snip 32-bit ---
MSCOREE_DLL_____X86.3643236F_FC70_11D3_A536_0090278A1BB8
{173A6EB3-6403-11D4-A53F-0090278A1BB8}
DD_SystemFolder_X86.3643236F_FC70_11D3_A536_0090278A1BB8 8
FL_mscoree_dll_____X86.3643236F_FC70_11D3_A536_0090278A1BB8
--- snip 32-bit ---
Attributes = 8
--- snip 64-bit ---
MSCOREE_DLL_____A64.3643236F_FC70_11D3_A536_0090278A1BB8
{70B495DC-D747-4182-B6D7-86C8A2244B25}
SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8 264
FL_mscoree_dll_____A64.3643236F_FC70_11D3_A536_0090278A1BB8
--- snip 64-bit ---
Attributes = 264 (256 = msidbComponentAttributes64bit + 8)
When it comes to "InstallFiles" action:
--- snip 32-bit component ---
001b:trace:msi:msi_get_property returning L"C:\\windows\\system32\\" for
property L"DD_SystemFolder_X86.3643236F_FC70_11D3_A536_0090278A1BB8"
...
001b:Call KERNEL32.MultiByteToWideChar(00000000,00000000,7fffe7ce1110
"FL_mscoree_dll_____X86.3643236F_FC70_11D3_A536_0090278A1BB8",ffffffff,7fffe7d4ba00,7fff0000003c)
ret=7fffed8ff38c
...
001b:trace:msi:resolve_folder Working to resolve
L"DD_SystemFolder_X86.3643236F_FC70_11D3_A536_0090278A1BB8"
...
001b:trace:msi:cabinet_copy_file extracting
L"C:\\windows\\system32\\mscoree.dll"
001b:Call KERNEL32.CreateFileW(7fffe7d0b980
L"C:\\windows\\system32\\mscoree.dll",c0000000,00000000,00000000,7fff00000002,7fff00000080,00000000)
ret=7fffed8ff409
001b:Ret KERNEL32.CreateFileW() retval=000000ac ret=7fffed8ff409
--- snip 32-bit component ---
--- snip 64-bit component ---
001b:trace:msi:msi_get_property returning L"C:\\windows\\system32\\" for
property L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8"
...
001b:Call KERNEL32.MultiByteToWideChar(00000000,00000000,7fffe7d247a0
"FL_mscoree_dll_____A64.3643236F_FC70_11D3_A536_0090278A1BB8",ffffffff,7fffe7d15ab0,0000003c)
ret=7fffed8ff38c
...
001b:trace:msi:resolve_folder Working to resolve
L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8"
...
001b:trace:msi:cabinet_copy_file extracting
L"C:\\windows\\system32\\mscoree.dll"
001b:Call KERNEL32.CreateFileW(7fffe7d15b40
L"C:\\windows\\system32\\mscoree.dll",c0000000,00000000,00000000,7fff00000002,00000080,00000000)
ret=7fffed8ff409
001b:Ret KERNEL32.CreateFileW() retval=000000b0 ret=7fffed8ff40
--- snip 64-bit component ---
The first extracted 32-bit version that gets (incorrectly) extracted to
system32 folder (remember: we're 64-bit install here) and subsequently gets
overwritten with 64-bit version later.
For the registry the same applies: In order to create registry values in 64bit
HKLM for components marked with "msidbComponentAttributes64bit" there is
nothing to change in 64-bit installs.
For 32-bit components (attrs < 256) the registry stuff must go to Wow6432Node.
Ideally Wine's msi should also support something like
"msidbComponentAttributesDisableRegistryReflection" to allow 32-bit components
to write into 64bit HKLM but that's not required for now.
Regards
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=24189
Summary: msi: set "System64Folder" standard property in x64
environment (64bit installer of .NET Framework 2.0)
Product: Wine
Version: 1.3.1
Platform: x86-64
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: msi
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: focht(a)gmx.net
Hello,
continuation of bug 24187
Check for x64 IE5.01 fails.
--- snip ----
001a:trace:msi:msi_set_property 0x7ffff72baca0
L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8" L"C:\\windows\\system32\\"
...
001a:trace:msi:ACTION_AppSearchDr
L"SearchForIE501_ENU_A64.3643236F_FC70_11D3_A536_0090278A1BB8"
...
001a:trace:msi:msi_get_property property
L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8" not found
...
001a:trace:msi:MSI_EvaluateConditionW 1 <- L"( NOT
IE501FOUND.3643236F_FC70_11D3_A536_0090278A1BB8 ) AND ( NOT
IE501FOUND.3643236F_FC70_11D3_A536_0090278A1BB8 )"
...
001a:trace:msi:ACTION_PerformAction Performing action
(L"CA_CheckIE501.3643236F_FC70_11D3_A536_0090278A1BB8")
...
001a:trace:msi:ACTION_CustomAction Handling custom action
L"CA_CheckIE501.3643236F_FC70_11D3_A536_0090278A1BB8" (113 (null) L"IE5.01 or
higher version is required prior to installing Microsoft .NET Framework")
001a:trace:msidb:MSI_RecordSetStringW 0x7fffec3adb40 0 L"IE5.01 or higher
version is required prior to installing Microsoft .NET Framework"
...
001a:err:msi:ITERATE_Actions Execution halted, action
L"CA_CheckIE501.3643236F_FC70_11D3_A536_0090278A1BB8" returned 1603
--- snip ----
SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8 property is the culprit
--- snip orca ---
SearchForIE501_____X86.3643236F_FC70_11D3_A536_0090278A1BB8
[DD_SystemFolder_X86.3643236F_FC70_11D3_A536_0090278A1BB8] 1
SearchForIE501_ENU_X86.3643236F_FC70_11D3_A536_0090278A1BB8
[DD_SystemFolder_X86.3643236F_FC70_11D3_A536_0090278A1BB8] 1
SearchForIE501_____A64.3643236F_FC70_11D3_A536_0090278A1BB8
[SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8] 1
SearchForIE501_ENU_A64.3643236F_FC70_11D3_A536_0090278A1BB8
[SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8] 1
--- snip orca ---
Although the property is initially set:
--- snip ---
001a:trace:msi:msi_get_property returning L"C:\\windows\\system32\\" for
property L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8"
--- snip ---
It is later reset due to custom action:
--- snip ---
001a:trace:msi:ACTION_CustomAction Handling custom action
L"CA_SetSystem64Folder.3643236F_FC70_11D3_A536_0090278A1BB8" (33
L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8" L"[System64Folder]")
001a:trace:msidb:MSI_CreateRecord 1
001a:trace:msidb:MSI_RecordSetStringW 0x7fffec3b3010 0 L"[System64Folder]"
001a:trace:msi:MSI_FormatRecordW 0x7fffe3c06490 0x7fffec3b3010 (nil)
0x7fffecf4ddfc
001a:trace:msidb:MSI_RecordIsNull 0x7fffec3b3010 0
001a:trace:msidb:MSI_RecordGetStringW 0x7fffec3b3010 0 (nil) 0x7fffecf4dcbc
001a:trace:msidb:MSI_RecordGetStringW 0x7fffec3b3010 0 0x7fffec3ad750
0x7fffecf4dcbc
001a:trace:msi:MSI_FormatRecordW (L"[System64Folder]")
001a:trace:msidb:MSI_CreateRecord 1
001a:trace:msidb:MSI_RecordSetStringW 0x7fffec3ad040 1 L"System64Folder"
001a:trace:msi:MSI_DatabaseOpenViewW L"SELECT `Value` FROM `_Property` WHERE
`_Property`=?" 0x7fffecf4dc38
001a:trace:msidb:TABLE_CreateView 0x7ffff72da890 L"_Property" 0x7fffecf4db68
001a:trace:msidb:TABLE_CreateView table 0x7fffe3c068e0 found with 2 columns
001a:trace:msidb:TABLE_CreateView L"_Property" one row is 4 bytes
001a:trace:msidb:WHERE_CreateView 0x7fffec3b3400
...
001a:trace:msi:msi_get_property property L"System64Folder" not found
001a:trace:msi:msiobj_release object 0x7fffec3b3010 destroyed
001a:trace:msi:msi_set_property 0x7ffff72da890
L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8" L""
001a:trace:msidb:MSI_CreateRecord 1
001a:trace:msidb:MSI_RecordSetStringW 0x7fffec3b3010 1
L"SystemFolder.3643236F_FC70_11D3_A536_0090278A1BB8"
--- snip ---
The standard property "System64Folder" must be set in x64 environments.
Adding this in dlls/msi/package.c:set_installer_properties() with proper value
will succeed the check and get the installer further
Regards
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=22805
Summary: Can't install 64bit .NET 2.0
Product: Wine
Version: 1.1.44
Platform: x86-64
URL: http://www.microsoft.com/downloads/details.aspx?family
id=b44a0000-acf8-4fa1-affb-40e78d788b00&displaylang=en
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: Paul.Vriens.Wine(a)gmail.com
I'm trying to install the 64bit version of .NET 2.0 but this fails.
Console shows:
wine: Invalid address
A +module trace shows:
warn:module:map_image Need to relocate module from 0x400000 to 0x110000, but
there are no relocation records
warn:module:load_dll Failed to load module
L"C:\\users\\paul\\Temp\\IXP000.TMP\\install.exe"; status=c0000018
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=24187
Summary: msi: set "MsiAMD64" and "Msix64" standard properties
in x64 environment (64bit installer of .NET Framework
2.0)
Product: Wine
Version: 1.3.1
Platform: x86-64
OS/Version: Linux
Status: NEW
Severity: normal
Priority: P2
Component: msi
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: focht(a)gmx.net
Hello,
this is a split-off from http://bugs.winehq.org/show_bug.cgi?id=22805#c6
The 64bit version of .NET Framework 2.0 fails due to launch condition not met.
--- snip ---
...
001b:trace:msidb:TABLE_get_column_info 0x7fffec3aba00 1 (nil) 0x7fffecf4de50
001b:trace:msidb:MSI_RecordSetStringW 0x7fffe3c28c20 1 L"MsiAMD64"
001b:trace:msidb:TABLE_get_column_info 0x7fffec3aba00 2 (nil) 0x7fffecf4de50
001b:trace:msidb:MSI_RecordSetStringW 0x7fffe3c28c20 2 L"This setup is only
supported on AMD64 platforms"
...
001b:trace:msi:msi_get_property property L"MsiAMD64" not found
001b:trace:msi:MSI_EvaluateConditionW 0 <- L"MsiAMD64"
001b:trace:msi:msiobj_release object 0x7fffe3c28c20 destroyed
001b:trace:msi:MSI_ViewClose 0x7fffec3ab130
001b:trace:msidb:TABLE_close 0x7fffec3aba00
001b:trace:msidb:TABLE_delete 0x7fffec3aba00
001b:trace:msi:msiobj_release object 0x7fffec3ab130 destroyed
001b:trace:msidb:MSI_CreateRecord 1
001b:trace:msidb:MSI_RecordSetStringW 0x7fffec3ab130 1 L"Action ended 17:16:07:
LaunchConditions. Return value 1603."
--- snip ---
You have to add standard properties that indicate 64-bit environment.
Current, only the "Intel" (32 bit) standard property is handled.
--- snip dlls/msi/package.c ---
static VOID set_installer_properties(MSIPACKAGE *package)
{
...
static const WCHAR szIntFormat[] = {'%','d',0};
static const WCHAR szIntel[] = { 'I','n','t','e','l',0 };
...
GetSystemInfo( &sys_info );
if (sys_info.u.s.wProcessorArchitecture == PROCESSOR_ARCHITECTURE_INTEL)
{
sprintfW( bufstr, szIntFormat, sys_info.wProcessorLevel );
msi_set_property( package->db, szIntel, bufstr );
}
...
--- snip dlls/msi/package.c ---
Just add handling for "MsiAMD64" (introduced with Windows Installer 3.0, still
present for backward compatibility) and "Msix64" (introduced with with Windows
Installer 3.1).
The values seem not relevant, it's only important that the properties exist.
You can reuse the sys_info values from previous GetSystemInfo() call for
"Intel" property to also test for AMD/64 bit case.
In case of x64 system set both, "MsiAMD64" and "Msix64" properties.
With that in place, this launch condition succeeds only to run into next bug
;-)
Regards
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=47255
Bug ID: 47255
Summary: Xenonauts crashes in wined3d
Product: Wine
Version: unspecified
Hardware: x86
OS: Linux
Status: NEW
Keywords: regression
Severity: normal
Priority: P2
Component: directx-d3d
Assignee: wine-bugs(a)winehq.org
Reporter: gyebro69(a)gmail.com
CC: hverbeet(a)gmail.com
Regression SHA1: db201072655946662c041a66ee434c30c245e5b0
Distribution: ---
Created attachment 64541
--> https://bugs.winehq.org/attachment.cgi?id=64541
terminal output
Xenonauts v1.65 crashes immediately after launch.
Reverting commit db201072655946662c041a66ee434c30c245e5b0 fixes the crash.
No demo version is available. Let me know what debug log would be of help.
wine-4.8-343-g27bf52d12c
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: GeForce GT 730/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 418.52.07
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=24613
Summary: Aura 2 (Sacred Rings): inventory not shown when
pressing RMB
Product: Wine
Version: 1.3.4
Platform: x86
URL: http://www.fileplanet.com/175732/170000/fileinfo/Aura-
2:-The-Sacred-Rings-Demo
OS/Version: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: -unknown
AssignedTo: wine-bugs(a)winehq.org
ReportedBy: gyebro69(a)gmail.com
CC: chris.kcat(a)gmail.com
Created an attachment (id=31088)
--> (http://bugs.winehq.org/attachment.cgi?id=31088)
terminal output
In Aura 2 (The Sacred Rings) when you press the right-mouse button the
inventory should show up at the bottom of the screen, showing your items, the
journal etc. Normally, when you open your inventory the mouse pointer should be
confined to this lower area of the screen where you can select items etc.
When you press RMB in Wine nothing happens in the game: the mouse pointer stays
on the main screen, a black bar is shown below but it contains nothing.
The game worked without the issue in Wine-0.9.45. Bisecting between 0.9.45 and
0.9.46 resulted:
d9571c9e6fa0b8f255815c5128c2859348ea70e6 is the first bad commit
commit d9571c9e6fa0b8f255815c5128c2859348ea70e6
Author: Chris Robinson <chris.kcat(a)gmail.com>
Date: Sat Sep 15 13:02:32 2007 -0700
wgl: Store the fbconfig id with the window when a pixel format is set.
:040000 040000 41741ff092257972095d557196b306aa7e5f7a43
3692bf0336451ec52733c88a7c30ced04fb60179 M dlls
The patch cannot be reverted cleanly, however, after
git checkout d9571c9e6fa0b8f255815c5128c2859348ea70e6 : the problem exists
and
git revert d9571c9e6fa0b8f255815c5128c2859348ea70e6 : restores the good state.
Link to the demo added to URL (538 MB)
Author of the patch added to CC.
Fedora 13
Nvidia 7600 / driver 256.53
--
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=47299
Bug ID: 47299
Summary: LAV Filters codec crashes when set to DXVA2
(copy-back) HW acceleration.
Product: Wine
Version: 4.9
Hardware: x86
URL: https://github.com/Nevcairiel/LAVFilters/releases/down
load/0.74.1/LAVFilters-0.74.1-x86.zip
OS: Linux
Status: UNCONFIRMED
Severity: normal
Priority: P2
Component: directx-d3d
Assignee: wine-bugs(a)winehq.org
Reporter: gabrielopcode(a)gmail.com
Distribution: ---
Created attachment 64600
--> https://bugs.winehq.org/attachment.cgi?id=64600
Avoid a NULL dereference by returning early
Grab the 32-bit version in a 32-bit wineprefix to keep it simple (link supplied
for latest version but it's not required).
Extract it to C:\lav on a new 32-bit prefix. Then install with:
wine cmd /c 'cd /D C:\lav && install_video.bat'
Open the config with:
wine rundll32.exe 'C:\lav\LAVVideo.ax,OpenConfiguration'
On the 'Hardware Acceleration' section, change the 'Hardware Decoder to use' to
'DXVA2 (copy-back)' and the crash should happen.
Here's the relevant snippet with +d3d (notice the errors, since I assume we
don't have DXVA2 support):
--- snip ---
0029:trace:d3d:wined3d_cs_run Executing WINED3D_CS_OP_CALLBACK.
0029:trace:d3d:wined3d_cpu_blitter_create Created blitter 0x1708f0.
0029:trace:d3d:wined3d_ffp_blitter_create Created blitter 0x170908.
0029:trace:d3d:wined3d_fbo_blitter_create Created blitter 0x170948.
0029:trace:d3d:wined3d_raw_blitter_create Created blitter 0x170960.
0029:trace:d3d:context_acquire device 0x1a6898, texture 0x19da60,
sub_resource_idx 0.
0029:trace:d3d:context_acquire Rendering onscreen.
0029:trace:d3d:swapchain_create_context Creating a new context for swapchain
0x1c1478, thread 41.
0029:trace:d3d:context_create swapchain 0x1c1478.
0029:trace:d3d:adapter_gl_create_context swapchain 0x1c1478, context 0x1c6fd9c.
0029:trace:d3d:wined3d_context_gl_init context_gl 0x1c3978, swapchain 0x1c1478.
0029:trace:d3d:context_choose_pixel_format device 0x1a6898, dc 0x120052,
color_format WINED3DFMT_B8G8R8A8_UNORM, ds_format WINED3DFMT_UNKNOWN,
aux_buffers 0.
0029:trace:d3d:context_choose_pixel_format Found iPixelFormat=27 for
ColorFormat=WINED3DFMT_B8G8R8A8_UNORM, DepthStencilFormat=WINED3DFMT_UNKNOWN.
0029:trace:d3d:wined3d_context_gl_enter Entering context 0x1c3978, level 1.
0029:err:d3d:wined3d_context_gl_init Failed to set pixel format 27 on device
context 0x120052.
0029:trace:d3d:context_release Releasing context 0x1c3978, level 1.
0029:warn:d3d:context_release Context 0x1c3978 is not the current context.
0029:warn:d3d:adapter_gl_create_context Failed to initialise context.
0029:err:d3d:swapchain_create_context Failed to create a new context for the
swapchain
--- snip ---
The attached patch fixes this problem by avoiding the crash. Obviously it
doesn't fix the root cause, so I don't know if it's a good practice to apply it
but it's an idea.
Note that this crash happens even in media players that use DirectShow (e.g.
Media Player Classic) when opening files with codecs that support DXVA2
decoding, if you set the registry key manually.
If you want to test that, import:
REGEDIT4
[HKEY_CURRENT_USER\Software\LAV\Video\HWAccel]
"HWAccel"=dword:00000003
in the wineprefix, to set it to DXVA2 (copy-back), and then load such a video,
it should crash.
The patch here will also fix loading such videos and in fact they will work
just fine, though obviously without any hardware acceleration since we don't
have it. I don't think crashing on missing features is desireable, though.
I'm not familiar with wined3d code at all so there's probably a better fix for
this.
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.
https://bugs.winehq.org/show_bug.cgi?id=35868
Bug ID: 35868
Summary: DXVA Checker 3.0.x (.NET 2.0 app) needs unimplemented
function dxva2.dll.DXVA2CreateVideoService
Product: Wine
Version: 1.7.15
Hardware: x86
OS: Linux
Status: NEW
Severity: normal
Priority: P2
Component: -unknown
Assignee: wine-bugs(a)winehq.org
Reporter: focht(a)gmx.net
Hello folks,
since there is now a stub dll I looked around for some real world users :)
'DXVA Checker'
Prerequisite: 'winetricks -q dotnet20'
--- snip ---
$ wine ./DXVAChecker.exe
...
fixme:quartz:VMR9_maybe_init Reduce ratio to least common denominator
fixme:quartz:VMR9SurfaceAllocatorNotify_SetD3DDevice (0x1c90d0/0x1c8ec0)->(...)
semi-stub
fixme:d3d:resource_check_usage Unhandled usage flags 0x8.
fixme:quartz:VMR9SurfaceAllocatorNotify_AllocateSurfaceHelper
(0x1c90d0/0x1c8ec0)->(0x33dcec, 0x33dce8 => 2, 0x1dbae0) semi-stub
fixme:quartz:VMR7FilterConfig_SetNumberOfStreams (0x1c90bc/0x1c8ec0)->(1) stub
fixme:quartz:VMR9Inner_QueryInterface No interface for
{bb057577-0db8-4e6a-87a7-1a8c9a505a0f}
fixme:strmbase:BaseInputPinImpl_QueryInterface No interface for
{256a6a22-fbad-11d1-82bf-00a0c9696c8f}!
wine: Call from 0x7b83abc3 to unimplemented function
dxva2.dll.DXVA2CreateVideoService, aborting
--- snip ---
MSDN:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms704721%28v=vs.85%…
$ sha1sum DXVAChecker32_3.0.1.zip
e7ba2151ae8cc2b9f805cbd1dd046c31f0d45a5b DXVAChecker32_3.0.1.zip
$ du -sh DXVAChecker32_3.0.1.zip
564K DXVAChecker32_3.0.1.zip
$ wine --version
wine-1.7.15-67-g99c151a
Regards
--
Do not reply to this email, post in Bugzilla using the
above URL to reply.
You are receiving this mail because:
You are watching all bug changes.