[Bug 50002] New: BlackBerry (Research in Motion) USB and Modem Drivers installs files in the wrong place and fails to install kernel drivers

WineHQ Bugzilla wine-bugs at winehq.org
Tue Oct 13 21:52:39 CDT 2020


https://bugs.winehq.org/show_bug.cgi?id=50002

            Bug ID: 50002
           Summary: BlackBerry (Research in Motion) USB and Modem Drivers
                    installs files in the wrong place and fails to install
                    kernel drivers
           Product: Wine
           Version: 5.19
          Hardware: x86-64
               URL: https://swdownloads.blackberry.com/Downloads/contactFo
                    rmPreload.do?code=A8BAA56554F96369AB93E4F3BB068C22&dl=
                    F5937D3FABCEC4C05D26AB6F3FEEC891
                OS: Linux
            Status: NEW
          Keywords: download, Installer
          Severity: normal
          Priority: P2
         Component: msi
          Assignee: wine-bugs at winehq.org
          Reporter: z.figura12 at gmail.com
      Distribution: ---

Created attachment 68409
  --> https://bugs.winehq.org/attachment.cgi?id=68409
hack: set CommonFiles64Folder to the 32-bit common files dir

The installer is more than a bit of a mess. It seems to be trying to install
64-bit files into the 64-bit "Common Files" folder, and 32-bit files into the
32-bit folder. It has this <trimmed> in its Directory table:

Directory        Directory_Parent    DefaultDir
----------------------------------------------------------
TARGETDIR                    SourceDir
RESEARCH_IN_MOTION    ProgramFilesFolder    RESEAR~1|Research In Motion
BLACKBERRY        RESEARCH_IN_MOTION    BLACKB~1|BlackBerry
INSTALLDIR        BLACKBERRY        .
CommonFiles64Folder    TARGETDIR        .:Common64
CommonFilesFolder    TARGETDIR        .:Common
CommonFilesRIM.191...    CommonFilesFolder    RESEAR~1|Research In Motion
CommonFilesRIM.07D...    CommonFiles64Folder    RESEAR~1|Research In Motion

On Wine this behaves essentially as expected, and files get installed into
64-bit "Common Files". On Windows, however, for some reason, everything gets
installed into the 32-bit "Common Files" directory. This problem is compounded
when the program subsequently tries to install PnP drivers (from a 64-bit
custom action) using files from the 32-bit "Common Files" folder—working around
their own bug, I guess—and on Wine nothing gets installed.

I'm more than a little baffled as to how this could possibly break on Windows.
It'll probably take some more involved debugging.

Anyway, the attached patch works around the bug. The installer successfully
creates a couple of root PnP devices, but the driver subsequently fails to load
due to missing WDF. (In fact it needs quite a substantial chunk of WDF, which I
have partially implemented in my local tree).

-- 
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.


More information about the wine-bugs mailing list