Hi,
It seems there is something wrong with DosDefineDevice.
If we consider a drive declared as F: -> /mnt/win_e
Remapping the drive F: to G: with this function leads to F: -> G: with G: non defined.
This makes, in my case, my app to break all my drives assignement.
It's seems the code lacks a level of inderection as shown below:
Logical drive -> Real drive -> unix dir
Any idea?
Bye, Christian
Hi,
For those interesting in this issue here what happend to my drive symlinks. Btw, the app is none other that Myst.
Before launching Myst: lrwxrwxrwx 1 titan titan 8 mai 1 2004 a:: -> /dev/fd0 lrwxrwxrwx 1 titan titan 5 sep 3 23:29 c: -> /wine/ lrwxrwxrwx 1 titan titan 10 mar 20 2004 com1 -> /dev/ttyS0 lrwxrwxrwx 1 titan titan 10 mar 20 2004 com2 -> /dev/ttyS1 lrwxrwxrwx 1 titan titan 10 mar 20 2004 com3 -> /dev/ttyS2 lrwxrwxrwx 1 titan titan 10 mar 20 2004 com4 -> /dev/modem lrwxrwxrwx 1 titan titan 10 sep 3 23:29 d: -> /mnt/win_c/ lrwxrwxrwx 1 titan titan 10 sep 3 23:29 e: -> /mnt/win_d/ lrwxrwxrwx 1 titan titan 10 sep 3 23:29 f: -> /mnt/win_e/ lrwxrwxrwx 1 titan titan 12 déc 31 2004 g: -> /mnt/graveur/ lrwxrwxrwx 1 titan titan 9 fév 26 2005 g:: -> /dev/scd1 lrwxrwxrwx 1 titan titan 10 sep 3 23:30 h: -> /mnt/cdrom/ lrwxrwxrwx 1 titan titan 9 mai 19 2004 h:: -> /dev/scd0 lrwxrwxrwx 1 titan titan 24 sep 7 10:38 i: -> /home/titan/winecvs/wine/ lrwxrwxrwx 1 titan titan 17 sep 13 21:56 j: -> /home/titan/files/ lrwxrwxrwx 1 titan titan 8 mar 20 2004 lpt1 -> /dev/lp0
After: lrwxrwxrwx 1 titan titan 8 mai 1 2004 a:: -> /dev/fd0 lrwxrwxrwx 1 titan titan 3 sep 25 11:16 c: -> D:/ lrwxrwxrwx 1 titan titan 10 mar 20 2004 com1 -> /dev/ttyS0 lrwxrwxrwx 1 titan titan 10 mar 20 2004 com2 -> /dev/ttyS1 lrwxrwxrwx 1 titan titan 10 mar 20 2004 com3 -> /dev/ttyS2 lrwxrwxrwx 1 titan titan 10 mar 20 2004 com4 -> /dev/modem lrwxrwxrwx 1 titan titan 3 sep 25 11:16 d: -> E:/ lrwxrwxrwx 1 titan titan 3 sep 25 11:16 e: -> F:/ lrwxrwxrwx 1 titan titan 3 sep 25 11:16 f: -> G:/ lrwxrwxrwx 1 titan titan 12 déc 31 2004 g: -> /mnt/graveur/ lrwxrwxrwx 1 titan titan 9 fév 26 2005 g:: -> /dev/scd1 lrwxrwxrwx 1 titan titan 10 sep 3 23:30 h: -> /mnt/cdrom/ lrwxrwxrwx 1 titan titan 9 mai 19 2004 h:: -> /dev/scd0 lrwxrwxrwx 1 titan titan 3 sep 25 11:16 i: -> J:/ lrwxrwxrwx 1 titan titan 3 sep 25 11:16 j: -> K:/ lrwxrwxrwx 1 titan titan 8 mar 20 2004 lpt1 -> /dev/lp0
I don't why Myst does this but it breaks all my drives assignement. This means DosDefineDevice is broken.
For now, I just disable DosDefineDevice because I don't know how to fix it, I guess it is more Alexandre's area.
Bye, Christian
Christian Costa wrote:
Hi,
It seems there is something wrong with DosDefineDevice.
If we consider a drive declared as F: -> /mnt/win_e
Remapping the drive F: to G: with this function leads to F: -> G: with G: non defined.
This makes, in my case, my app to break all my drives assignement.
It's seems the code lacks a level of inderection as shown below:
Logical drive -> Real drive -> unix dir
Any idea?
Bye, Christian
How is really DefineDosDevice called ? I'd like you to add a trace for the parameters while entering DefineDosDevice and send it to me.
TIA
Eric Pouech wrote:
How is really DefineDosDevice called ? I'd like you to add a trace for the parameters while entering DefineDosDevice and send it to me.
TIA
Here are the calls traces:
fixme:volume:DefineDosDeviceW 1, L"C:", L"D:\" fixme:volume:DefineDosDeviceW 1, L"D:", L"E:\" fixme:volume:DefineDosDeviceW 1, L"E:", L"F:\" fixme:volume:DefineDosDeviceW 1, L"F:", L"G:\" fixme:volume:DefineDosDeviceW 1, L"H:", L"I:\" fixme:volume:DefineDosDeviceW 1, L"I:", L"J:\" fixme:volume:DefineDosDeviceW 1, L"J:", L"K:\"
Thanks, Christian
Christian Costa wrote:
Eric Pouech wrote:
How is really DefineDosDevice called ? I'd like you to add a trace for the parameters while entering DefineDosDevice and send it to me.
TIA
Here are the calls traces:
fixme:volume:DefineDosDeviceW 1, L"C:", L"D:\" fixme:volume:DefineDosDeviceW 1, L"D:", L"E:\" fixme:volume:DefineDosDeviceW 1, L"E:", L"F:\" fixme:volume:DefineDosDeviceW 1, L"F:", L"G:\" fixme:volume:DefineDosDeviceW 1, L"H:", L"I:\" fixme:volume:DefineDosDeviceW 1, L"I:", L"J:\" fixme:volume:DefineDosDeviceW 1, L"J:", L"K:\"
Thanks, Christian
this sounds a bit ackward for a program to do so. Could I get a full trace (or the 100k lines before the first call)? TIA
Eric Pouech wrote:
Christian Costa wrote:
Eric Pouech wrote:
How is really DefineDosDevice called ? I'd like you to add a trace for the parameters while entering DefineDosDevice and send it to me.
TIA
Here are the calls traces:
fixme:volume:DefineDosDeviceW 1, L"C:", L"D:\" fixme:volume:DefineDosDeviceW 1, L"D:", L"E:\" fixme:volume:DefineDosDeviceW 1, L"E:", L"F:\" fixme:volume:DefineDosDeviceW 1, L"F:", L"G:\" fixme:volume:DefineDosDeviceW 1, L"H:", L"I:\" fixme:volume:DefineDosDeviceW 1, L"I:", L"J:\" fixme:volume:DefineDosDeviceW 1, L"J:", L"K:\"
Thanks, Christian
this sounds a bit ackward for a program to do so. Could I get a full trace (or the 100k lines before the first call)? TIA
Here is one log with +volume and another with +volume,+relay. Let me know if you want others debug channels enabled.
Christian
fixme:midi:OSS_MidiInit Synthesizer support MIDI in. Not supported yet (please report) trace:volume:GetDriveTypeW L"C:" -> 3 trace:volume:GetDriveTypeW L"C:\" -> 3 trace:volume:GetDriveTypeW L"C:" -> 3 trace:volume:GetDriveTypeW L"C:\" -> 3 trace:volume:GetDriveTypeW L"C:" -> 3 trace:volume:GetDriveTypeW L"C:\" -> 3 trace:volume:GetDriveTypeW L"C:" -> 3 trace:volume:GetDriveTypeW L"C:\" -> 3 trace:volume:DefineDosDeviceW 1, L"C:", L"D:\" trace:volume:DefineDosDeviceW creating symlink /home/titan/.wine/dosdevices/c: -> D:/ trace:volume:GetVolumeInformationW cannot open device L"\\.\C:": err 2 trace:volume:GetVolumeInformationW cannot open device L"\\.\C:": err 2 trace:volume:GetDriveTypeW L"D:" -> 3 trace:volume:GetDriveTypeW L"D:\" -> 3 trace:volume:GetDriveTypeW L"D:" -> 3 trace:volume:GetDriveTypeW L"D:\" -> 3 trace:volume:GetDriveTypeW L"D:" -> 3 trace:volume:GetDriveTypeW L"D:\" -> 3 trace:volume:GetDriveTypeW L"D:" -> 3 trace:volume:GetDriveTypeW L"D:\" -> 3 trace:volume:DefineDosDeviceW 1, L"D:", L"E:\" trace:volume:DefineDosDeviceW creating symlink /home/titan/.wine/dosdevices/d: -> E:/ trace:volume:GetVolumeInformationW cannot open device L"\\.\D:": err 2 trace:volume:GetVolumeInformationW cannot open device L"\\.\D:": err 2 trace:volume:GetDriveTypeW L"E:" -> 3 trace:volume:GetDriveTypeW L"E:\" -> 3 trace:volume:GetDriveTypeW L"E:" -> 3 trace:volume:GetDriveTypeW L"E:\" -> 3 trace:volume:GetDriveTypeW L"E:" -> 3 trace:volume:GetDriveTypeW L"E:\" -> 3 trace:volume:GetDriveTypeW L"E:" -> 3 trace:volume:GetDriveTypeW L"E:\" -> 3 trace:volume:DefineDosDeviceW 1, L"E:", L"F:\" trace:volume:DefineDosDeviceW creating symlink /home/titan/.wine/dosdevices/e: -> F:/ trace:volume:GetVolumeInformationW cannot open device L"\\.\E:": err 2 trace:volume:GetVolumeInformationW cannot open device L"\\.\E:": err 2 trace:volume:GetDriveTypeW L"F:" -> 3 trace:volume:GetDriveTypeW L"F:\" -> 3 trace:volume:GetDriveTypeW L"F:" -> 3 trace:volume:GetDriveTypeW L"F:\" -> 3 trace:volume:GetDriveTypeW L"F:" -> 3 trace:volume:GetDriveTypeW L"F:\" -> 3 trace:volume:GetDriveTypeW L"F:" -> 3 trace:volume:GetDriveTypeW L"F:\" -> 3 trace:volume:DefineDosDeviceW 1, L"F:", L"G:\" trace:volume:DefineDosDeviceW creating symlink /home/titan/.wine/dosdevices/f: -> G:/ trace:volume:GetVolumeInformationW cannot open device L"\\.\F:": err 2 trace:volume:GetVolumeInformationW cannot open device L"\\.\F:": err 2 trace:volume:GetDriveTypeW L"H:" -> 5 trace:volume:GetDriveTypeW L"H:\" -> 5 trace:volume:GetDriveTypeW L"H:" -> 5 trace:volume:GetDriveTypeW L"H:\" -> 5 trace:volume:GetDriveTypeW L"H:" -> 5 trace:volume:GetDriveTypeW L"H:\" -> 5 trace:volume:GetDriveTypeW L"H:" -> 5 trace:volume:GetDriveTypeW L"H:\" -> 5 trace:volume:DefineDosDeviceW 1, L"H:", L"I:\" trace:volume:DefineDosDeviceW creating symlink /home/titan/.wine/dosdevices/h: -> I:/ trace:volume:GetVolumeInformationW L"\\.\H:": found fs type 4 trace:volume:GetVolumeInformationW L"\\.\H:": found fs type 4 trace:volume:GetDriveTypeW L"I:" -> 3 trace:volume:GetDriveTypeW L"I:\" -> 3 trace:volume:GetDriveTypeW L"I:" -> 3 trace:volume:GetDriveTypeW L"I:\" -> 3 trace:volume:GetDriveTypeW L"I:" -> 3 trace:volume:GetDriveTypeW L"I:\" -> 3 trace:volume:GetDriveTypeW L"I:" -> 3 trace:volume:GetDriveTypeW L"I:\" -> 3 trace:volume:DefineDosDeviceW 1, L"I:", L"J:\" trace:volume:DefineDosDeviceW creating symlink /home/titan/.wine/dosdevices/i: -> J:/ trace:volume:GetVolumeInformationW cannot open device L"\\.\I:": err 2 trace:volume:GetVolumeInformationW cannot open device L"\\.\I:": err 2 trace:volume:GetDriveTypeW L"J:" -> 3 trace:volume:GetDriveTypeW L"J:\" -> 3 trace:volume:GetDriveTypeW L"J:" -> 3 trace:volume:GetDriveTypeW L"J:\" -> 3 trace:volume:GetDriveTypeW L"J:" -> 3 trace:volume:GetDriveTypeW L"J:\" -> 3 trace:volume:GetDriveTypeW L"J:" -> 3 trace:volume:GetDriveTypeW L"J:\" -> 3 trace:volume:DefineDosDeviceW 1, L"J:", L"K:\" trace:volume:DefineDosDeviceW creating symlink /home/titan/.wine/dosdevices/j: -> K:/ trace:volume:GetVolumeInformationW cannot open device L"\\.\J:": err 2 trace:volume:GetVolumeInformationW cannot open device L"\\.\J:": err 2 err:font:OpenFontFile FT_New_Face rets 1 err:font:OpenFontFile FT_New_Face rets 1 err:font:OpenFontFile FT_New_Face rets 1 err:font:OpenFontFile FT_New_Face rets 1 err:font:OpenFontFile FT_New_Face rets 1 err:font:OpenFontFile FT_New_Face rets 1 err:font:OpenFontFile FT_New_Face rets 1 err:font:OpenFontFile FT_New_Face rets 1