diff options
author | Christopher Faylor <me@cgf.cx> | 2003-10-01 12:36:39 +0000 |
---|---|---|
committer | Christopher Faylor <me@cgf.cx> | 2003-10-01 12:36:39 +0000 |
commit | 0e1ba88882c97c5ab78fb000af5d59f8b1842776 (patch) | |
tree | 6bade2e95dd111a05cff703d9cef9dd95acbaa1e /winsup/cygwin/dtable.cc | |
parent | 883c5345d4a806fbea7c7a01ef3e9548874de85b (diff) | |
download | cygnal-0e1ba88882c97c5ab78fb000af5d59f8b1842776.tar.gz cygnal-0e1ba88882c97c5ab78fb000af5d59f8b1842776.tar.bz2 cygnal-0e1ba88882c97c5ab78fb000af5d59f8b1842776.zip |
* Makefile.in: Add YA method for generating devices.cc.
* child_info.h: YA update of another magic number.
* gendevices: New file.
* devices.in: New file.
* devices.cc: Regenerate.
* devices.shilka: Remove.
* devices.h: Correctly define device pointers.
(device): Remove now obsolete fields.
(device::native): Renamed from device::fmt.
* dtable.cc (build_fh_dev): Simplify in light of new unit parsing scheme.
(build_fh_pc): Ditto.
* path.cc (win32_device_name): Ditto.
* fhandler.h (fhandler_base::get_native_name): Reflect renaming of fmt to
native.
* fhandler_tty.cc (fhandler_tty_mster::init): Initialize slave device prior to
reporting unit.
Diffstat (limited to 'winsup/cygwin/dtable.cc')
-rw-r--r-- | winsup/cygwin/dtable.cc | 176 |
1 files changed, 82 insertions, 94 deletions
diff --git a/winsup/cygwin/dtable.cc b/winsup/cygwin/dtable.cc index bf6cb237b..f2fefd8e3 100644 --- a/winsup/cygwin/dtable.cc +++ b/winsup/cygwin/dtable.cc @@ -308,21 +308,10 @@ fhandler_base * build_fh_dev (const device& dev, const char *unix_name) { path_conv pc (dev); - char *w32buf = const_cast<char *> (pc.get_win32 ()); - - __small_sprintf (w32buf, dev.fmt, dev.minor); if (unix_name) pc.set_normalized_path (unix_name); - else if (!dev.upper) - pc.set_normalized_path (dev.name); else - { - pc.set_normalized_path (w32buf); - for (char *p = strchr (pc.normalized_path, '\\'); - p; - p = strchr (p + 1, '\\')) - *p = '/'; - } + pc.set_normalized_path (dev.name); return build_fh_pc (pc); } @@ -331,7 +320,6 @@ build_fh_pc (path_conv& pc) { fhandler_base *fh = NULL; - if (pc.dev.upper) switch (pc.dev.major) { case DEV_TTYS_MAJOR: @@ -351,90 +339,90 @@ build_fh_pc (path_conv& pc) case DEV_TAPE_MAJOR: fh = cnew (fhandler_dev_tape) (); break; - } - else - switch (pc.dev) - { - case FH_CONSOLE: - case FH_CONIN: - case FH_CONOUT: - fh = cnew (fhandler_console) (); - break; - case FH_CYGDRIVE: - fh = cnew (fhandler_cygdrive) (); - break; - case FH_PTYM: - fh = cnew (fhandler_pty_master) (); - break; - case FH_WINDOWS: - fh = cnew (fhandler_windows) (); - break; - case FH_SERIAL: - fh = cnew (fhandler_serial) (); - break; - case FH_FIFO: - fh = cnew (fhandler_fifo) (); - break; - case FH_PIPE: - case FH_PIPER: - case FH_PIPEW: - fh = cnew (fhandler_pipe) (); - break; - case FH_TCP: - case FH_UDP: - case FH_ICMP: - case FH_UNIX: - case FH_STREAM: - case FH_DGRAM: - fh = cnew (fhandler_socket) (); - break; - case FH_FS: - fh = cnew (fhandler_disk_file) (); - break; - case FH_NULL: - fh = cnew (fhandler_dev_null) (); - break; - case FH_ZERO: - fh = cnew (fhandler_dev_zero) (); - break; - case FH_RANDOM: - case FH_URANDOM: - fh = cnew (fhandler_dev_random) (); - break; - case FH_MEM: - case FH_PORT: - fh = cnew (fhandler_dev_mem) (); - break; - case FH_CLIPBOARD: - fh = cnew (fhandler_dev_clipboard) (); - break; - case FH_OSS_DSP: - fh = cnew (fhandler_dev_dsp) (); - break; - case FH_PROC: - fh = cnew (fhandler_proc) (); - break; - case FH_REGISTRY: - fh = cnew (fhandler_registry) (); - break; - case FH_PROCESS: - fh = cnew (fhandler_process) (); - break; - case FH_TTY: - { - device newdev = pc.dev; - newdev.tty_to_real_device (); - switch (newdev) + default: + switch (pc.dev) + { + case FH_CONSOLE: + case FH_CONIN: + case FH_CONOUT: + fh = cnew (fhandler_console) (); + break; + case FH_CYGDRIVE: + fh = cnew (fhandler_cygdrive) (); + break; + case FH_PTYM: + fh = cnew (fhandler_pty_master) (); + break; + case FH_WINDOWS: + fh = cnew (fhandler_windows) (); + break; + case FH_SERIAL: + fh = cnew (fhandler_serial) (); + break; + case FH_FIFO: + fh = cnew (fhandler_fifo) (); + break; + case FH_PIPE: + case FH_PIPER: + case FH_PIPEW: + fh = cnew (fhandler_pipe) (); + break; + case FH_TCP: + case FH_UDP: + case FH_ICMP: + case FH_UNIX: + case FH_STREAM: + case FH_DGRAM: + fh = cnew (fhandler_socket) (); + break; + case FH_FS: + fh = cnew (fhandler_disk_file) (); + break; + case FH_NULL: + fh = cnew (fhandler_dev_null) (); + break; + case FH_ZERO: + fh = cnew (fhandler_dev_zero) (); + break; + case FH_RANDOM: + case FH_URANDOM: + fh = cnew (fhandler_dev_random) (); + break; + case FH_MEM: + case FH_PORT: + fh = cnew (fhandler_dev_mem) (); + break; + case FH_CLIPBOARD: + fh = cnew (fhandler_dev_clipboard) (); + break; + case FH_OSS_DSP: + fh = cnew (fhandler_dev_dsp) (); + break; + case FH_PROC: + fh = cnew (fhandler_proc) (); + break; + case FH_REGISTRY: + fh = cnew (fhandler_registry) (); + break; + case FH_PROCESS: + fh = cnew (fhandler_process) (); + break; + case FH_TTY: { - case FH_CONSOLE: - fh = cnew (fhandler_console) (); - break; - case FH_TTYS: - fh = cnew (fhandler_tty_slave) (); - break; + device newdev = pc.dev; + newdev.tty_to_real_device (); + switch (newdev) + { + case FH_CONSOLE: + fh = cnew (fhandler_console) (); + break; + case FH_TTYS: + fh = cnew (fhandler_tty_slave) (); + break; + } } } - } + } if (!fh) fh = cnew (fhandler_nodevice) (); |