diff options
Diffstat (limited to 'packages/bluez')
-rw-r--r-- | packages/bluez/bluez-utils.inc | 4 | ||||
-rw-r--r-- | packages/bluez/bluez-utils/handle-eintr.patch | 23 | ||||
-rw-r--r-- | packages/bluez/bluez-utils_3.9.bb | 2 |
3 files changed, 28 insertions, 1 deletions
diff --git a/packages/bluez/bluez-utils.inc b/packages/bluez/bluez-utils.inc index 912c419f8c..a22431eaf9 100644 --- a/packages/bluez/bluez-utils.inc +++ b/packages/bluez/bluez-utils.inc @@ -11,7 +11,8 @@ LICENSE = "GPL" SRC_URI = "http://bluez.sourceforge.net/download/bluez-utils-${PV}.tar.gz \ file://hcid.conf \ file://02dtl1_cs.sh \ - file://hciattach-ti-bts.patch;patch=1" + file://hciattach-ti-bts.patch;patch=1 \ + file://handle-eintr.patch;patch=1" # Almost all serial CF cards w/ manfid 0x0000,0x0000 seem to use the bcs protocol # Let's default to that instead of 'any' until further notice... @@ -41,6 +42,7 @@ do_install_append() { chmod u+s ${D}${base_sbindir}/hciattach ${D}${base_sbindir}/hciconfig install -m 0644 ${WORKDIR}/hcid.conf ${D}${sysconfdir}/bluetooth/ install -m 0755 ${WORKDIR}/02dtl1_cs.sh ${D}${sysconfdir}/apm/event.d/ + install -m 0755 ${S}/daemon/.libs/passkey-agent ${D}${base_bindir}/ } CONFFILES_${PN} = "${sysconfdir}/bluetooth/hcid.conf ${sysconfdir}/bluetooth/rfcomm.conf \ diff --git a/packages/bluez/bluez-utils/handle-eintr.patch b/packages/bluez/bluez-utils/handle-eintr.patch new file mode 100644 index 0000000000..effe5d9696 --- /dev/null +++ b/packages/bluez/bluez-utils/handle-eintr.patch @@ -0,0 +1,23 @@ +--- bluez-utils-3.9.org/tools/hciattach.c 2007-01-28 20:16:48.000000000 +0000 ++++ bluez-utils-3.9/tools/hciattach.c 2007-02-12 16:50:49.000000000 +0000 +@@ -1135,7 +1256,7 @@ + int main(int argc, char *argv[]) + { + struct uart_t *u = NULL; +- int detach, printpid, opt, i, n, ld; ++ int detach, printpid, opt, i, n, ld, err; + int to = 5; + int init_speed = 0; + int send_break = 0; +@@ -1286,7 +1414,10 @@ + + while (!__io_canceled) { + p.revents = 0; +- if (poll(&p, 1, 500)) ++ err = poll(&p, 1, 500); ++ if (err < 0 && errno == EINTR) ++ continue; ++ if (err) + break; + } + diff --git a/packages/bluez/bluez-utils_3.9.bb b/packages/bluez/bluez-utils_3.9.bb index d07c68b7d7..36410ee2ec 100644 --- a/packages/bluez/bluez-utils_3.9.bb +++ b/packages/bluez/bluez-utils_3.9.bb @@ -1 +1,3 @@ require bluez-utils.inc + +PR = "r2" |