Jonathan Gevaryahu a �crit : does this help? A+
Index: sync.c =================================================================== RCS file: /home/cvs/cvsroot/wine/wine/dlls/kernel/sync.c,v retrieving revision 1.64 diff -u -u -r1.64 sync.c --- sync.c 7 Dec 2004 14:23:03 -0000 1.64 +++ sync.c 12 Dec 2004 19:53:14 -0000 @@ -893,7 +893,7 @@ OBJECT_ATTRIBUTES attr; NTSTATUS status;
- if (!is_version_nt()) access = SEMAPHORE_ALL_ACCESS; + if (!is_version_nt()) access = TIMER_ALL_ACCESS;
attr.Length = sizeof(attr); attr.RootDirectory = 0;
Unfortunately, your patch doesn't fix the problem. But I noticed something disturbing: in CVS (without your patch) occasionally Total Annihilation will run fine (it did ONCE), but almost all of the time it will not work, and give the previously mentioned trace result.
Sometimes, it will give a different trace result:
...
000d: select() = PENDING
warn:file:wine_nt_to_unix_file_name L"units\\CORDEV1.OVR" not found in /home/jon
athan/.wine/dosdevices/g:/cavedog/totala/units
warn:ntdll:NtCreateFile L"\\??\\G:\\cavedog\\totala\\units\\CORDEV1.OVR" not fou
nd (c000003a)
warn:file:CreateFileW Unable to create file L"units\\CORDEV1.OVR" (status c00000
3a)
trace:ntdll:NtCreateFile handle=0x4087f7a4 access=80000000 name=L"\\??\\G:\\cave
dog\\totala\\units-english\\CORDOOM.FBI" objattr=00000042 root=(nil) sec=(nil) i
o=0x4087f7a8 alloc_size=(nil)
attr=00000080 sharing=00000003 disp=1 options=00000050 ea=(nil).0x00000000
000d: *wakeup* signaled=258 cookie=0x44f7f4a0
000d: select( flags=12, cookie=0x44f7f4a0, timeout=1102914722.834956 (+0.003836)
, handles={0x110} )
000d: select() = PENDING
warn:file:wine_nt_to_unix_file_name L"units-english\\CORDOOM.FBI" not found in /
home/jonathan/.wine/dosdevices/g:/cavedog/totala
warn:ntdll:NtCreateFile L"\\??\\G:\\cavedog\\totala\\units-english\\CORDOOM.FBI"
not found (c000003a)
warn:file:CreateFileW Unable to create file L"units-english\\CORDOOM.FBI" (statu
s c000003a)
trace:ntdll:NtCreateFile handle=0x4087f7c8 access=80000000 name=L"\\??\\G:\\cave
dog\\totala\\units\\CORDOOM.FBI" objattr=00000042 root=(nil) sec=(nil) io=0x4087
f7cc alloc_size=(nil)
attr=00000080 sharing=00000003 disp=1 options=00000050 ea=(nil).0x00000000
000d: *wakeup* signaled=258 cookie=0x44f7f4a0
000d: select( flags=12, cookie=0x44f7f4a0, timeout=1102914722.844670 (+0.005838)
, handles={0x110} )
000d: select() = PENDING
warn:file:wine_nt_to_unix_file_name L"units\\CORDOOM.FBI" not found in /home/jon
athan/.wine/dosdevices/g:/cavedog/totala/units
warn:ntdll:NtCreateFile L"\\??\\G:\\cavedog\\totala\\units\\CORDOOM.FBI" not fou
nd (c000003a)
000a: event_op( handle=0xc0, op=1 )
000a: event_op() = 0
000d: *wakeup* signaled=258 cookie=0x44f7f4a0
000d: select( flags=12, cookie=0x44f7f4a0, timeout=1102914722.854135 (+0.007851)
, handles={0x110} )
000d: select() = PENDING
warn:file:CreateFileW Unable to create file L"units\\CORDOOM.FBI" (status c00000
3a)
0009: get_handle_fd( handle=0xec, access=00000000 )
0009: get_handle_fd() = 0 { fd=24, flags=0 }
trace:ntdll:NtReadFile (0xec,(nil),(nil),(nil),0x4087f80c,0x44404668,0x00000200,
(nil),(nil)),partial stub!
0009: get_handle_fd( handle=0xec, access=80000000 )
0009: get_handle_fd() = 0 { fd=24, flags=0 }
000d: *wakeup* signaled=258 cookie=0x44f7f4a0
000d: select( flags=12, cookie=0x44f7f4a0, timeout=1102914722.864331 (+0.009845)
, handles={0x110} )
000d: select() = PENDING
trace:ntdll:NtReadFile = 0x00000000
0009: get_handle_fd( handle=0xec, access=00000000 )
0009: get_handle_fd() = 0 { fd=24, flags=0 }
trace:ntdll:NtReadFile (0xec,(nil),(nil),(nil),0x4087f414,0x4506cf40,0x00000200,
(nil),(nil)),partial stub!
0009: get_handle_fd( handle=0xec, access=80000000 )
0009: get_handle_fd() = 0 { fd=24, flags=0 }
trace:ntdll:NtReadFile = 0x00000000
trace:ntdll:NtReadFile (0xec,(nil),(nil),(nil),0x4087f404,0x44404668,0x00000200,
(nil),(nil)),partial stub!
...
And that trace means that it was actually working. If I hadn't Control-C terminated that trace, it would have run the game.
Jonathan Gevaryahu [EMAIL PROTECTED]
