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

Reply via email to