else: # child (dbus & device i/o [qt4] or dbus [qt3]) os.close(r1) if ui_toolkit == 'qt4': r2, w2 = os.pipe() r3, w3 = os.pipe() log.debug("Creating pipe: hpssd (%d) ==> hpdio (%d)" % (w2, r2)) log.debug("Creating pipe: hpdio (%d) ==> hpssd (%d)" % (w3, r3)) child_pid2 = os.fork() if child_pid2: # parent (dbus) os.close(r2) import hpssd hpssd.run(w1, w2, r3) else: # child (device i/o) os.close(w2) import hpdio hpdio.run(r2, w3) else: # qt3 import hpssd hpssd.run(w1)