bug-gnubg
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Bug-gnubg] Player record problems on Windows


From: Holger
Subject: [Bug-gnubg] Player record problems on Windows
Date: Mon, 10 Mar 2003 15:29:57 +0100

Hi,

the problem with erasing a player record on Windows still persists. Now I had a look into it with a file monitor.

Analyse/Player Records calls CommandRecordShow() which opens gnubgpr for reading: 21:31:50 Gnubg Open M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS OPENEXISTING READONLY DENYNONE
The following is (presumably) read in RecordReadItem():
21:31:50 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 0 Length: 4096 21:31:50 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 470 Length: 4096 21:31:50 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 470 Length: 4096 21:31:50 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 470 Length: 4096

Erasing a record of a player finally invokes CommandRecordErase()
21:32:00 Gnubg Open M:\GAMES\GNUBG\.GNUBG\GNUBGPR-699745 SUCCESS CREATENEW REPLACEEXISTING WRITEONLY DENYNONE
RecordRead():
21:32:00 Gnubg Open M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS OPENEXISTING READONLY DENYNONE 21:32:00 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 0 Length: 4096 21:32:00 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 470 Length: 4096 21:32:00 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 470 Length: 4096 21:32:00 Gnubg Read M:\GAMES\GNUBG\.GNUBG\GNUBGPR SUCCESS Offset: 470 Length: 4096
21:32:00  Gnubg  Close  M:\GAMES\GNUBG\.GNUBG\GNUBGPR  SUCCESS  CLOSE_FINAL
and RecordWrite() writes the changed player records to the temp file ...
21:32:00 Gnubg Write M:\GAMES\GNUBG\.GNUBG\GNUBGPR-699745 SUCCESS Offset: 0 Length: 359 21:32:00 Gnubg Close M:\GAMES\GNUBG\.GNUBG\GNUBGPR-699745 SUCCESS CLOSE_FINAL
... and tries to delete the old file
21:32:00  Gnubg  FindOpen  M:\GAMES\GNUBG\.GNUBG\GNUBGPR  SUCCESS  gnubgpr
21:32:00  Gnubg  FindClose  M:\GAMES\GNUBG\.GNUBG\GNUBGPR  SUCCESS
21:32:00  Gnubg  Delete  M:\GAMES\GNUBG\.GNUBG\GNUBGPR  ACCDENIED

But since gnubgpr is still open (from CommandRecordShow), under Windows one gets an access denied.

Close window with OK
21:32:02  Gnubg  Close  M:\GAMES\GNUBG\.GNUBG\GNUBGPR  SUCCESS  CLOSE_FINAL

Btw, in the instance for the above example I've replaced all (three) occurances of unlink with remove because I'm not entirely sure that unlink works with paths under Windows. For remove I've read it in the manual. A look at the code suggests some bigger changes to when and by whom which files are opened. I guess passing only filenames instead of pointers would help.

Regards,

        Holger





reply via email to

[Prev in Thread] Current Thread [Next in Thread]