Diffstat (limited to 'noncore/apps/opie-console/io_bt.cpp') (more/less context) (show whitespace changes)
-rw-r--r-- | noncore/apps/opie-console/io_bt.cpp | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/noncore/apps/opie-console/io_bt.cpp b/noncore/apps/opie-console/io_bt.cpp index 0831faf..d71aacc 100644 --- a/noncore/apps/opie-console/io_bt.cpp +++ b/noncore/apps/opie-console/io_bt.cpp @@ -12,37 +12,51 @@ IOBt::~IOBt() { } } void IOBt::close() { IOSerial::close(); // still need error handling + if ( m_attach ) { delete m_attach; + m_attach = 0; + } } bool IOBt::open() { + // only set up bt stuff if mac address was set, otherwise use the device set + if ( !m_mac.isEmpty() ) { + + // now it should also be checked, if there is a connection to the device with that mac allready + // hciattach here m_attach = new OProcess(); *m_attach << "hciattach /dev/ttyS2 any 57600"; // then start hcid, then rcfomm handling (m_mac) connect( m_attach, SIGNAL( processExited( OProcess* ) ), this, SLOT( slotExited( OProcess* ) ) ); if ( m_attach->start() ) { IOSerial::open(); } else { qWarning("could not attach to device"); delete m_attach; m_attach = 0; } + } else { + // directly to the normal serial + // TODO: look first if the connection really exists. ( is set up ) + + IOSerial::open(); + } } void IOBt::reload( const Profile &config ) { m_device = config.readEntry("Device", BT_DEFAULT_DEVICE); m_mac = config.readEntry("Mac", BT_DEFAULT_MAC); m_baud = config.readNumEntry("Baud", BT_DEFAULT_BAUD); m_parity = config.readNumEntry("Parity", BT_DEFAULT_PARITY); m_dbits = config.readNumEntry("DataBits", BT_DEFAULT_DBITS); |