Hi!

     In main.c:init_device() driver counted as system console if its
attribute word contains only ATTR_CONIN bit. Isn't there should be both
ATTR_CONIN and ATTR_CONOUT bits set? Also, what prevents for one device be
both system console and clock driver? Also, ATTR_CONIN bit checked without
ATTR_CHAR - isn't it should be checked? So, I suggest, instead:

______________O\_/_________________________________\_/O______________
  if (!(dhp->dh_attr & ATTR_CHAR) && (rq.r_nunits != 0))
  {
    dhp->dh_name[0] = rq.r_nunits;
    update_dcb(dhp);
  }

  if (dhp->dh_attr & ATTR_CONIN)
    LoL->syscon = dhp;
  else if (dhp->dh_attr & ATTR_CLOCK)
    LoL->clock = dhp;
_____________________________________________________________________
              O/~\                                 /~\O

should be:

______________O\_/_________________________________\_/O______________
  if (dhp->dh_attr & ATTR_CHAR)
  {
    if (dhp->dh_attr & (ATTR_CONIN | ATTR_CONOUT))
      LoL->syscon = dhp;
    if (dhp->dh_attr & ATTR_CLOCK)
      LoL->clock = dhp;
  }
  else if (rq.r_nunits)
  {
    dhp->dh_name[0] = rq.r_nunits;
    update_dcb(dhp);
  }
_____________________________________________________________________
              O/~\                                 /~\O




-------------------------------------------------------
This SF.Net email is sponsored by: GNOME Foundation
Hackers Unite!  GUADEC: The world's #1 Open Source Desktop Event.
GNOME Users and Developers European Conference, 28-30th June in Norway
http://2004/guadec.org
_______________________________________________
Freedos-kernel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/freedos-kernel

Reply via email to