My post is lost in vain again :-(
OK, everyone probably got my last post here about my EJECT bugfix patch but me :-( Nevertheless, I'd like to comment on this bugfix further. Firstly, of course my fix may be optimised like this:
diff -ruN cvs/kernel/kernel/dosfns.c src/kernel/kernel/dosfns.c --- cvs/kernel/kernel/dosfns.c 2004-01-27 20:07:26.000000000 +0200 +++ src/kernel/kernel/dosfns.c 2004-02-05 13:16:22.000000000 +0200 @@ -538,7 +538,7 @@ sftp->sft_shroff = -1; /* /// Added for SHARE - Ron Cemer */ sftp->sft_attrib = attrib = attrib | D_ARCHIVE;
- if (result & IS_NETWORK) + if ((result & (IS_NETWORK | IS_DEVICE)) == IS_NETWORK) { int status; if ((flags & (O_TRUNC | O_CREAT)) == O_CREAT)
Secondly, I was wrong - it doesn't fix the M$ "CHKDSK I:" "Invalid drive specification" bug. But I saw that whereas MS-DOS passes AX=0 to "CHKDSK I:" just before execution, FreeDOS passes AX=FF. If I force AX=0 before running it, it works! My LASTDRIVE=J, so it shouldn't do that. Perhaps the bug is in dosfns.c:get_cds() but I'm not sure. I'll study this further tomorrow morning. Must catch it!
Lucho
------------------------------------------------------- The SF.Net email is sponsored by EclipseCon 2004 Premiere Conference on Open Tools Development and Integration See the breadth of Eclipse activity. February 3-5 in Anaheim, CA. http://www.eclipsecon.org/osdn _______________________________________________ Freedos-kernel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/freedos-kernel