Hello, rekado, le Mon 09 Sep 2013 20:37:17 +0800, a écrit : > A fresh `master_device' port is now obtained when accessing the device > file, not only on translator startup. This ensures that the device > can be re-opened after netdde has died.
This is indeed the intended fix, but it forgets a couple of things: - it should only reopen the master device if master_file is not NULL ; - it should close the previous master device before opening another one, otherwise you get a port leak on each ds_device_open call. It then actually becomes useless to call file_name_lookup in parse_opt(), and instead call it from ds_device_open itself, and free the port there (but only when master_file is not NULL of course). The check for master_device == MACH_PORT_NULL in main should of course be turned into master_file == NULL. Samuel