http://bugs.winehq.org/show_bug.cgi?id=5099
------- Additional Comments From saulius.krasuckas@elst.vtu.lt 2006-22-04 04:44 ------- | Btw if you hack it that way, does it work? Or does it get any farther?
Vitaliy, as bernd already has said, it make the game start much faster...
* bernd buschinski writes: | But what if we just change the return status? | from STATUS_NOT_SUPPORTED to STATUS_SUCCESS | | at least it makes the "Command and Conquer" start mutch faster
So I suppose it helps, but I doubt we should be making this change for all unhandled NtFsControlFile functions. Bernd, can you try adding two required cases to NtFsControlFile(), namely FSCTL_LOCK_VOLUME and FSCTL_UNLOCK_VOLUME, and set return status only here?
* Vitaliy Margolen writes: | I meant that it will always fail on native when used on drive c: | It will suceed only if there are "no open handles on the device refernced by | handle".
But we don't know whether Tiberian Sun is referring to the drive c: . That's why I was asking about a way to get description of an object pointed by the handle. BTW, thank you for your nice explanation, Vitaliy.
| As far as implementing that on Wine - you can't. At best you can change return | value (something that you did with your patch). But that would be invalid for | most cases.
IMHO, we still could detect tries to lock CDFS (device type FILE_DEVICE_FILE_SYSTEM being compatible with a FILE_DEVICE_CD_ROM_FILE_SYSTEM, not with a FILE_DEVICE_DISK_FILE_SYSTEM), then we could check whether running linux kernel keeps appropriate CD device locked and if so--we could return STATUS_SUCCESS. No?
Bernd, does the game use real CD during its start?