[RESEND] mountmgr.sys: implement forced setting of fixed/local disk

Ben Klein shacklein at gmail.com
Thu Jun 4 08:29:09 CDT 2009


2009/6/4 Alexandre Julliard <julliard at winehq.org>:
> Ben Klein <shacklein at gmail.com> writes:
>
>> From 100c129bbb1a3df3ebb68d52b22c798b6a2150c2 Mon Sep 17 00:00:00 2001
>> From: Ben Klein <shacklein at gmail.com>
>> Date: Fri, 6 Mar 2009 00:49:39 +1100
>> Subject: mountmgr.sys: implement forced setting of fixed/local disk
>>
>> define_unix_drive in mountmgr.c includes all cases used in query_unix_drive
>> except the DRIVE_FIXED == DEVICE_HARDDISK_VOL mapping. This patch fixes 17618
>> where setting the drive type to "Local disk" in winecfg does not save the
>> change to the registry.
>
> The problem is that there are two kinds of disk devices, and
> HARDDISK_VOL should only be used for things that have an actual device
> associated, i.e. USB sticks and the like. Currently there's no way to
> make that distinction in winecfg or in the registry.
>
> I don't think we want to extend the existing mechanism because the
> registry config needs to be changed anyway. There's a lot more
> information that mountmgr needs to store beyond just hd/cdrom/floppy,
> and extending the current scheme will only make it harder to change
> while maintaining backwards compatibility.

Thanks for the response. The patch is intended to synchronise
define_unix_drive with query_unix_drive (which currently has the
DRIVE_FIXED to DEVICE_HARDDISK_VOL mapping).

> Though I'd expect the current behavior to work fine since the harddisk
> type is autodetected. Is there really a need to configure an explicit
> HARDDISK_VOL device from winecfg, or is it just because it's there in
> the winecfg dropdown?

Forest Hale submitted a couple of bugs relating to this (17619 and
17618). The problem is that Wine correctly detects a network share (in
this case NFS on /home) but some applications (e.g. Steam) refuse to
install on network drives, so he wanted to override it with winecfg.
Overriding doesn't work, due to what I believe is simply an omission
in define_unix_drive where it doesn't handle the case of DRIVE_FIXED
to DEVICE_HARDDISK_VOL mapping.

I understand that you want this behaviour reworked, but for now, I
don't see the harm in synchronising the define and query functions
(since it's such a small thing).



More information about the wine-devel mailing list