Re: Int21 bug

2003-10-30 Thread Valentijn Sessink
Hello Marcus,

At Wed, Oct 29, 2003 at 10:25:45PM +0100, Marcus Meissner wrote:
> I have read through the code and this condition should not happen.

I've read code too, now. Version 1.80 of int21.c introduced the error. The
0x5b code here is plainly wrong, as AX can return an error *or* a file
handle.

I think it's been fixed in 20030911, but maybe even earlier, by introducing
INT21_CreateFile in dlls/winedos/int21.c version 1.38.

Function 0x5b might sttill not return the correct value when file creation
does not succeed, as I see no place where AX gets a correct error value.

> There has been some large reconstruction in that area, so please test
> yourself :/

I tried to, unfortunately the application I'm trying to test does things
with CD-ROM and thus broke - as I understood from the mailing list archives
- as result of a bug in 20030813 - where Wine crashes.

Now unfortunately, 0813 and 0911 just crash; versions before 0911 do not
have the RESET_CFLAG fixes; versions before 0813 differ too much in their
DOS file handling. Now version 1016 should be OK, but here the application
ends with a rather cryptic Windows dialog that says "error 6806".

So I gave up and reversed the 0x5b handling in msdos/int21.c in 20030408, so
my application works. I hope the 20031016++ versions will not barf with
"error 6806" - or maybe I'll sort out what change causes this.

Thanks for helping & checking my messages.

Best regards,

Valentijn
-- 
Zelf PDF-files maken? Heel gemakkelijk, en gratis: www.openoffice.org
-
http://www.openoffice.nl/   Open Office - Linux Office Solutions
Valentijn Sessink  [EMAIL PROTECTED]



Re: Int21 bug

2003-10-29 Thread Sylvain Petreolle
Could you retry with current CVS, or if you cant, 20031016 ?

> So: file handle 0x136 translates to DOS handle 10, and int21 returns
> AX=0x000a
> 
> My newer version, Wine 20030408, does the following:



> I'm not sure, but this bug could also help number 1170, that seems
> related
> in that there's a file that is not actually there, and 717, which
> also tries
> to make a file that isn't created.


=
Sylvain Petreolle (spetreolle_at_users_dot_sourceforge_dot_net)
 ICQ #170597259
Say NO to software patents
Dites NON aux brevets logiciels

"What if tomorrow the War could be over ?" Morpheus, in "Reloaded".

___
Do You Yahoo!? -- Une adresse @yahoo.fr gratuite et en français !
Yahoo! Mail : http://fr.mail.yahoo.com



Re: Int21 bug

2003-10-29 Thread Marcus Meissner
On Wed, Oct 29, 2003 at 01:24:42PM +0100, Valentijn Sessink wrote:
> Hi folks,
> 
> I think I hunted down a bug in DOS int21 function 0x5b (my DOS book insists
> this is 91 decimal). My older version of wine, 2000821, goes like this:
> 
> We also checked Codeweavers Wine for this bug; it seems to be there, but
> after two days of bug hunting our hunting ground is a bit of a mess, so I'm
> not sure if we tested 2.0 or 2.1. I searched Bugzilla for a DOS related bug
> and couldn't find one, but if it's fixed between 20030408 and now, then
> please accept my apologies for wasting your precious reading time.

I have read through the code and this condition should not happen.

There has been some large reconstruction in that area, so please test yourself :/

Ciao, Marcus