[Bug 31609] New: TestLauncher says a required DLL is missing, but the test runs fine without TestLauncher
http://bugs.winehq.org/show_bug.cgi?id=31609 Bug #: 31609 Summary: TestLauncher says a required DLL is missing, but the test runs fine without TestLauncher Product: Testbot Version: unspecified Platform: x86 OS/Version: Linux Status: NEW Severity: normal Priority: P2 Component: unknown AssignedTo: wine-bugs(a)winehq.org ReportedBy: dank(a)kegel.com Classification: Unclassified http://source.winehq.org/git/tools.git/blob/HEAD:/testbot/src/TestLauncher/T... has a function AllImportedDllsPresent() that tries to avoid running tests that implicitly link against DLLs that aren't present. Unfortunately, in the case of dlls with manifests, it reports it can't find dlls that are in fact present. What it needs is a good dose of the medicine that cured the same problem in winetest: http://www.winehq.org/pipermail/wine-cvs/2010-July/068410.html A quick test shows that this works. I'll send a patch soon. -- 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=31609 Dan Kegel <dank(a)kegel.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch, source -- 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=31609 --- Comment #1 from Dan Kegel <dank(a)kegel.com> 2012-09-03 21:50:11 CDT --- Created attachment 41568 --> http://bugs.winehq.org/attachment.cgi?id=41568 Draft patch allowing vcomp test to execute How's this look? -- 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=31609 François Gouget <fgouget(a)codeweavers.com> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fgouget(a)codeweavers.com --- Comment #2 from François Gouget <fgouget(a)codeweavers.com> 2012-09-05 04:28:34 CDT --- You're calling the functions directly instead of using the function pointers. Also it might be worth splitting the patch in two parts: one to introduce the 'goto done' which I feel is worth it on its own and the other for the activation context stuff. But then others might say this is overkill. Otherwise I can't test the patch right now but it looks good. -- 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=31609 --- Comment #3 from Dan Kegel <dank(a)kegel.com> 2012-09-07 21:21:32 CDT --- Patches sent, http://www.winehq.org/pipermail/wine-patches/2012-September/117630.html http://www.winehq.org/pipermail/wine-patches/2012-September/117631.html -- 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=31609 --- Comment #4 from Dan Kegel <dank(a)kegel.com> 2012-09-10 21:30:08 CDT --- Workaround: late-bind the DLL, like most tests do. -- 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=31609 François Gouget <fgouget(a)codeweavers.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Depends on| |33065 -- 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=31609 --- Comment #5 from François Gouget <fgouget(a)codeweavers.com> 2013-03-17 05:18:12 CDT --- The new plan for this is to get rid of TestLauncher and use winetest.exe directly instead. This will remove code duplication and avoid such issues in the future. What's needed for that is the ability to package winetest.exe with a single test to not have to shuttle around a bloated binary for every small test. See bug 33065 - Make it possible to build a winetest executable with a single test. -- 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=31609 --- Comment #6 from François Gouget <fgouget(a)codeweavers.com> --- Created attachment 61157 --> https://bugs.winehq.org/attachment.cgi?id=61157 Dummy patch to run the vcomp:vcomp test The new new plan is to _not_ get rid of TestLauncher because a more careful analysis showed that TestLauncher and WineTest have quite different requirements such that merging the two does not really make sense (imho). Furthermore this issue is no longer present in the TestBot because the vcomp test dynamically loads vcomp.dll. Paradoxically WineTest still has the issue because it parses the name of the test executable, infers that it's testing vcomp.dll, and then checks for the presence of that dll. And apparently the code in WineTest is still not good enough to properly detect the presence of vcomp.dll so that WineTest.exe does not run vcomp_test.exe. So as is, merging TestLauncher with WineTest would make things worse! See also: https://www.winehq.org/pipermail/wine-devel/2017-September/119052.html Note that not all VMs have vcomp.dll. The attached patch can be used on the TestBot to verify that it runs the test when appropriate and to figure out which VMs have vcomp.dll. Based on the current results the 32 bit dll is present on w2000pro, wxppro, w2003std, wvistau64*, w2008s64, w8, w864 and the 64 bit one is present on wvistau64, w2008s64 and w864. Note that some online resources seem to imply that vcomp.dll is present in the Visual C++ 2005 redistributable (and VC++ 2005 was indeed installed on all the VMs that have vcomp.dll except w2008s64 (though maybe it was installed and it was not written down)). Some VMs seem to have other versions such as vcomp90.dll but not vcomp.dll. -- 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=31609 --- Comment #7 from François Gouget <fgouget(a)codeweavers.com> --- For the the WineTest side of this bug, see bug 45032. -- 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=31609 tokktokk <fdsfgs(a)krutt.org> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |fdsfgs(a)krutt.org -- 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=31609 Bug 31609 depends on bug 33065, which changed state. Bug 33065 Summary: Make it possible to build a winetest executable with a single test https://bugs.winehq.org/show_bug.cgi?id=33065 What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |WONTFIX -- 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=31609 François Gouget <fgouget(a)codeweavers.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Assignee|wine-bugs(a)winehq.org |fgouget(a)codeweavers.com -- 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=31609 François Gouget <fgouget(a)codeweavers.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Fixed by SHA1| |feeea5ba4825a98aac577bf24b1 | |76697a22bd8cc Resolution|--- |FIXED --- Comment #8 from François Gouget <fgouget(a)codeweavers.com> --- This patch drops the AllImportedDllsPresent() function and all the related code. Instead it detects the Windows critical error dialog. This allows TestLauncher to also deal with missing entry points, missing ordinals, and missing indirect dependencies (when a dll used by the test depends on another dll that is missing). commit feeea5ba4825a98aac577bf24b176697a22bd8cc Author: Francois Gouget <fgouget(a)codeweavers.com> Date: Mon Mar 15 19:15:39 2021 +0100 testbot/TestLauncher: Fix the detection of test executable dependencies. Detect the critical error dialog that pops up when the test executable depends on a missing dll or entry point. This improves the diagnostic messages and avoids long timeouts. Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=31609 Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=32216 Signed-off-by: Francois Gouget <fgouget(a)codeweavers.com> Signed-off-by: Alexandre Julliard <julliard(a)winehq.org> -- 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.
participants (2)
-
wine-bugs@winehq.org -
WineHQ Bugzilla