OSDN Git Service
Marcel Holtmann [Sun, 29 Jun 2014 21:42:01 +0000 (23:42 +0200)]
doc: Add notes for management version 1.7 features
Marcel Holtmann [Sun, 29 Jun 2014 21:25:38 +0000 (23:25 +0200)]
doc: Fix event opcode for New Connection Parameter event
Marcel Holtmann [Sun, 29 Jun 2014 21:24:42 +0000 (23:24 +0200)]
doc: Add documentation for Device Added and Device Removed events
Marcel Holtmann [Sun, 29 Jun 2014 20:33:35 +0000 (22:33 +0200)]
monitor: Decode Device Added and Device Removed control events
Marcel Holtmann [Sun, 29 Jun 2014 20:32:59 +0000 (22:32 +0200)]
lib: Add mgmt event for Device Added and Device Removed
Marcel Holtmann [Sun, 29 Jun 2014 18:29:34 +0000 (20:29 +0200)]
doc: Fix note about command complete for success and failure
Marcel Holtmann [Sun, 29 Jun 2014 17:40:58 +0000 (19:40 +0200)]
doc: Return address for Add Device and Remove Device commands
Marcel Holtmann [Sun, 29 Jun 2014 17:13:12 +0000 (19:13 +0200)]
core: Use kernel background scanning if available
Marcel Holtmann [Sun, 29 Jun 2014 17:12:27 +0000 (19:12 +0200)]
core: Read supported mgmt commands and set kernel_bg_scan variable
Szymon Janc [Sun, 29 Jun 2014 13:24:30 +0000 (15:24 +0200)]
android/pts: Update HOGP test coverage
Disable not supported optional features.
Marcel Holtmann [Sun, 29 Jun 2014 13:28:31 +0000 (15:28 +0200)]
tools: Add support for Add Device and Remove Device mgmt commands
Marcel Holtmann [Sun, 29 Jun 2014 13:27:38 +0000 (15:27 +0200)]
lib: Add defines for Add Device and Remove Device mgmt commands
Szymon Janc [Sat, 28 Jun 2014 18:48:59 +0000 (20:48 +0200)]
android/pts: Update HOGP tests results
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:09:00 +0000 (21:09 +0300)]
android/hog: Only discover if External Report has a Report UUID
Some devices, including PTS, may include characteristics other than
Report as External Report.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:59 +0000 (21:08 +0300)]
android/hog: Enable notifications only for Input Reports
HoG spec has the following statement:
"The Report Host shall enable notifications, via the Client
Characteristic Configuration descriptor, of the Report characteristic
for all instances of the Report characteristic where the Report Type
as defined in the Report Reference characteristic descriptor
refers to an Input Report."
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:58 +0000 (21:08 +0300)]
android/hog: Fix using the same callback for different descriptors
External Report and Report descriptors take different user_data so have
different callbacks to avoid possible crash if a discover happen to find
the descriptors of unexpect type.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:57 +0000 (21:08 +0300)]
android/hog: Add support for multiple instaces
This is necessary to pass PTS tests which does include 2 instances.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:56 +0000 (21:08 +0300)]
android/hog: Add support for Battery Service
If primary is not provided meaning primary should be auto discovered it
probably means other primary services such as Battery Service are not
being handled either so just handle BaS as well in such case.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:55 +0000 (21:08 +0300)]
lib/uuid: Add define for Battery UUID
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:54 +0000 (21:08 +0300)]
android: Add initial implementation of Battery Service client
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:53 +0000 (21:08 +0300)]
android/hog: Add support for reading device details via DIS
If primary is not provided meaning primary should be auto discovered it
probably means other primary services such as Device Information
Service are not being handled either so just handle DIS as well in such
case.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:52 +0000 (21:08 +0300)]
android/dis: Only cache the handle not all the characteristics
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:51 +0000 (21:08 +0300)]
android/dis: Add bt_dis_set_notification
Function bt_dis_set_notification can be used to set notify callback.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:50 +0000 (21:08 +0300)]
android/dis: Strip dependencies from deviceinfo plugin
This strip any dependecy from deviceinfo plugin so the code can be reused
by HoG implementation.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 18:08:49 +0000 (21:08 +0300)]
android/dis: Add copy to Device Info implementation
Marcel Holtmann [Sun, 29 Jun 2014 12:32:47 +0000 (14:32 +0200)]
doc: Update possible error codes for Add Device and Remove Device
Szymon Janc [Sat, 28 Jun 2014 18:47:57 +0000 (20:47 +0200)]
android/pts: Update L2CAP settings and tests results
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:11 +0000 (18:16 +0300)]
android/pts: Update HDP test results
Mark ECHO server tests passed.
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:10 +0000 (18:16 +0300)]
android/health: Improve debug
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:09 +0000 (18:16 +0300)]
android/health: Add handling for ECHO service
Reply received buffer back for ECHO service.
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:08 +0000 (18:16 +0300)]
android/health: Create mdep for ECHO channel
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:07 +0000 (18:16 +0300)]
android/health: Assign channel to user_data
Assign channel for incoming connections when it is created.
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:06 +0000 (18:16 +0300)]
android/health: Add channel connect
Connect channel on incoming connection callback
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:05 +0000 (18:16 +0300)]
android/health: Refactor channel creation
Avoid using app_id when we shall use app structure itself. Otherwise we
end up with unnecessary searches for app and problems for incoming
connections.
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:04 +0000 (18:16 +0300)]
android/health: Add handling MDL connection request
Handles MDL connection request for ECHO service
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:03 +0000 (18:16 +0300)]
android/health: Add HDP definitions
Andrei Emeltchenko [Fri, 27 Jun 2014 15:16:02 +0000 (18:16 +0300)]
android/health: Add error check when creating app
Marcel Holtmann [Sun, 29 Jun 2014 12:02:45 +0000 (14:02 +0200)]
lib: Remove not yet implemented management commands and events
Marcel Holtmann [Sun, 29 Jun 2014 11:58:59 +0000 (13:58 +0200)]
lib: Update with the new mgmt command opcodes
Marcel Holtmann [Sun, 29 Jun 2014 11:55:08 +0000 (13:55 +0200)]
doc: Update command opcode for Load Connection Parameters
Marcel Holtmann [Sun, 29 Jun 2014 11:54:35 +0000 (13:54 +0200)]
doc: Add management commands for Add Device and Remove Device
Marcel Holtmann [Sun, 29 Jun 2014 11:51:42 +0000 (13:51 +0200)]
doc: Move get clock info command to the next available opcode
Marcel Holtmann [Sat, 28 Jun 2014 21:10:00 +0000 (23:10 +0200)]
tools: Don't try to read BD_ADDR manually for raw devices
Marcel Holtmann [Sat, 28 Jun 2014 17:02:43 +0000 (19:02 +0200)]
lib: Add strings for connection parameter and clock info opcodes
Johan Hedberg [Sat, 28 Jun 2014 14:51:47 +0000 (17:51 +0300)]
tools/btmgmt: Add basic support for Get Clock Info command
Johan Hedberg [Sat, 28 Jun 2014 14:51:35 +0000 (17:51 +0300)]
lib/mgmt: Add defines for Get Clock Information
Sebastian Chlad [Fri, 20 Jun 2014 10:07:06 +0000 (12:07 +0200)]
android/pts: Add test files for DIS
Szymon Janc [Fri, 27 Jun 2014 16:57:42 +0000 (18:57 +0200)]
android/gatt: Remove System ID from DIS
System ID is not just a string but has a specified format and
should be unique.
DIS specification p. 3.7:
"The System ID characteristic shall represent a structure containing
an Organizationally Unique Identifier (OUI) followed by a manufacturer-defined
identifier and is unique for each individual instance of the product."
Sebastian Chlad [Fri, 20 Jun 2014 11:25:32 +0000 (13:25 +0200)]
android/pts: Add test files for ScPP
Luiz Augusto von Dentz [Fri, 27 Jun 2014 08:27:55 +0000 (11:27 +0300)]
android/hog: Add support for Scan Parameter Service
If primary is not provided meaning primary should be auto discovered it
probably means other primary services such as Scan Parameter Profile
are not being handled either so just handle ScPP as well in such case.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 08:27:54 +0000 (11:27 +0300)]
android/scpp: Check for cached handles on attach
Luiz Augusto von Dentz [Fri, 27 Jun 2014 08:27:53 +0000 (11:27 +0300)]
android/scpp: Add bt_scpp_set_interval and bt_scpp_set_window
These functions can be used to change the current values.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 08:27:52 +0000 (11:27 +0300)]
android/scpp: Strip dependencies from scan plugin
This strip any dependecy from scan plugin so the code can be reused
by HoG implementation.
Luiz Augusto von Dentz [Fri, 27 Jun 2014 08:27:51 +0000 (11:27 +0300)]
android/scpp: Add copy to Scan Parameter Profile implementation
Luiz Augusto von Dentz [Fri, 27 Jun 2014 08:27:50 +0000 (11:27 +0300)]
lib/uuid: Add define for Scan Parameter UUID
Andrei Emeltchenko [Fri, 27 Jun 2014 14:07:34 +0000 (17:07 +0300)]
android/health: Fix NULL dereference
Andrei Emeltchenko [Fri, 27 Jun 2014 11:25:02 +0000 (14:25 +0300)]
android/mcap: Fix using uninitialised value
Fixes clang warning:
...
android/mcap-lib.c:2366:20: warning: The left operand of '*' is a
garbage value
return tv->tv_sec * 1000000ll + tv->tv_nsec / 1000ll;
~~~~~~~~~~ ^
1 warning generated.
...
Andrei Emeltchenko [Fri, 27 Jun 2014 11:24:53 +0000 (14:24 +0300)]
android/health: Fix wrong callback return type
Ravi kumar Veeramally [Thu, 26 Jun 2014 21:30:46 +0000 (00:30 +0300)]
android/health: Implement destroy_channel call
Delete MDL channel with MDL_DELETE_REQ.
Ravi kumar Veeramally [Thu, 26 Jun 2014 21:30:45 +0000 (00:30 +0300)]
android/health: Implement mdl reconnect
MDL reconnection can be called only when it is already created, connected
and closed not deleted.
Ravi kumar Veeramally [Thu, 26 Jun 2014 21:30:44 +0000 (00:30 +0300)]
android/health: Fix deleting channels queue
Channels queue is created only on device creation. So do not destroy
queue on all mdls deleted in mdl_deleted_cb, just remove all entries.
Ravi kumar Veeramally [Thu, 26 Jun 2014 21:30:43 +0000 (00:30 +0300)]
android/health: Implement mdl_closed_cb callback
Callback will be called when data channel is disconnected/closed.
It does not mean that it is deleted. So only change connected status.
Ravi kumar Veeramally [Thu, 26 Jun 2014 21:30:42 +0000 (00:30 +0300)]
android/client: Introduce close_channel API in health
In order to run PTS MDL disconnect and reconnect, HAL api does
not support it. This close simply shutdown the fd, remote device
will be notified like data channel is closed not deleted. So ready
for reconnection.
Ravi kumar Veeramally [Thu, 26 Jun 2014 21:04:14 +0000 (00:04 +0300)]
android/health: Fix wrong user data passing in set_mcl_cb
It used to be channel, when set_mcl_cb refactored
it got changed to channed->dev.
commit
32180fa3a649ec26f9f3891a0ff5e4fe16592b91 introduced it.
Jakub Tyszkowski [Fri, 27 Jun 2014 10:08:03 +0000 (12:08 +0200)]
android/pts: Update MCAP results
Jakub Tyszkowski [Fri, 27 Jun 2014 10:08:02 +0000 (12:08 +0200)]
android/mcaptest: Support unavailable response to first MDL connect
This is needed to pass TC_MCAP_ERR_BI_16_C
Jakub Tyszkowski [Fri, 27 Jun 2014 10:08:01 +0000 (12:08 +0200)]
android/mcaptest: Send clock sync capabilities request
This adds option to send synchronization capabilities and requirements
request on MCL connection.
Marcel Holtmann [Fri, 27 Jun 2014 10:48:23 +0000 (12:48 +0200)]
doc: Add management command to get clock information
Luiz Augusto von Dentz [Fri, 27 Jun 2014 10:51:46 +0000 (13:51 +0300)]
unit/test-queue: Fix memory leak
This fixes the following memory leak:
32 bytes in 1 blocks are definitely lost in loss record 20 of 35
at 0x4C291D4: calloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x400DC2: queue_new (queue.c:65)
by 0x400AA5: test_foreach_remove_all (test-queue.c:92)
by 0x4E9E5E0: ??? (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x4E9E7A5: ??? (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x4E9EB1A: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x40083E: main (test-queue.c:109)
Luiz Augusto von Dentz [Fri, 27 Jun 2014 10:27:22 +0000 (13:27 +0300)]
shared/queue: Fix invalid read
If the queue elements are destroyed by queue_destroy the head will point
to freed memory causing the following error when unit/test-queue is run:
Invalid read of size 8
at 0x401040: queue_foreach (queue.c:194)
by 0x4E9E5E0: ??? (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x4E9E7A5: ??? (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x4E9EB1A: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x40083E: main (test-queue.c:109)
Address 0x7f65738 is 8 bytes inside a block of size 16 free'd
at 0x4C28577: free (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so)
by 0x400E29: queue_destroy (queue.c:93)
by 0x40102C: queue_foreach (queue.c:219)
by 0x4E9E5E0: ??? (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x4E9E7A5: ??? (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x4E9EB1A: g_test_run_suite (in /usr/lib64/libglib-2.0.so.0.3800.2)
by 0x40083E: main (test-queue.c:109)
Marcel Holtmann [Fri, 27 Jun 2014 09:44:39 +0000 (11:44 +0200)]
doc: Add address type information to get connection info command
Jakub Tyszkowski [Thu, 26 Jun 2014 13:09:11 +0000 (15:09 +0200)]
android/pts: Update MCAP results
Jakub Tyszkowski [Thu, 26 Jun 2014 13:09:10 +0000 (15:09 +0200)]
android/mcaptest: Support MDL reconnection if MCL reconnected
This is needed in some PTS test cases.
Jakub Tyszkowski [Thu, 26 Jun 2014 13:09:09 +0000 (15:09 +0200)]
android/mcaptest: Support MDL and MCL disconnection
This adds support for MDL disconnection triggered with timeout after the
MDL is connected. It also adds MCL disconnection timeout after the MDL
has been disconnected. If less than 0 is passed as '-e' or '-f' option
parameter, disconnection is not triggered. This is needed to pass some
PTS test cases.
Jakub Tyszkowski [Thu, 26 Jun 2014 13:09:08 +0000 (15:09 +0200)]
android/mcaptest: Support incoming connections
This adds support for handling incoming Control Link (MCL) and Data
Link (MDL) connections.
Jakub Tyszkowski [Thu, 26 Jun 2014 13:09:07 +0000 (15:09 +0200)]
android/mcaptest: Support connect
This initiates the connection
Jakub Tyszkowski [Thu, 26 Jun 2014 13:09:06 +0000 (15:09 +0200)]
android/mcaptest: Add skeleton for mcap test tool
This adds skeleton for simple tool for testing mcap library. As mcap-lib
uses bt_io, this tool works in daemon-like mode, by utilizing Glib's main
loop.
Jakub Tyszkowski [Thu, 26 Jun 2014 13:09:05 +0000 (15:09 +0200)]
android/pts: Change MCAP PIXIT value
Handling single data channel will simplify mcaptest tool.
This can be changed later when mcaptest will be improved.
Luiz Augusto von Dentz [Thu, 26 Jun 2014 10:14:07 +0000 (13:14 +0300)]
core: Fix bogus check to resume pending authorizations
After incoming pairing the code will attempt reverse service discovery
and queue any authorization request until the services are resolved, once
this process was completed the code should resume the authorization
process no matter how many are queued.
Szymon Janc [Thu, 26 Jun 2014 09:12:28 +0000 (11:12 +0200)]
android/gatt: Fix not sending notification on get included service
If there was and error notification with GATT error status should be
send.
Szymon Janc [Thu, 26 Jun 2014 08:19:27 +0000 (10:19 +0200)]
android/gatt: Fix not sending notification if no included services
Ravi kumar Veeramally [Thu, 26 Jun 2014 09:04:48 +0000 (12:04 +0300)]
android/health: Provide a helper funtion to search channel by id
Ravi kumar Veeramally [Wed, 25 Jun 2014 16:30:15 +0000 (19:30 +0300)]
android/hal-health: Return app_id and channel_id -1 in case of error
Right now returning only status of request but java layer expecting
-1 for app_id and channel_id in failure case.
Ravi kumar Veeramally [Wed, 25 Jun 2014 16:30:13 +0000 (19:30 +0300)]
android/health: Rename matching functions
Petri Gynther [Wed, 25 Jun 2014 17:38:29 +0000 (10:38 -0700)]
core: Fix adapter_connect_list_add()
adapter_connect_list_add() needs to ensure that trigger_passive_scanning() is
called even for existing devices on the connect list.
This issue can be seen with BLE HoG remotes trying to reconnect to BlueZ. If
the connection fails, att_error_cb() adds the failed device back to connect
list, but since the device is already on the list, no code ends up calling
trigger_passive_scanning(). After this point, passive scanning is disabled
and remains disabled for good, and BLE reconnects to BlueZ no longer work.
bluetoothd[931]: src/adapter.c:device_found_callback() hci0 addr ...
bluetoothd[931]: src/device.c:device_set_legacy() legacy 0
bluetoothd[931]: src/adapter.c:stop_passive_scanning()
bluetoothd[931]: src/adapter.c:stop_passive_scanning_complete() status 0x00 (Success)
bluetoothd[931]: src/device.c:device_connect_le() Connection attempt to: ...
bluetoothd[931]: src/adapter.c:discovering_callback() hci0 type 6 discovering 0
bluetoothd[931]: src/adapter.c:connect_failed_callback() hci0 ... status 2
bluetoothd[931]: plugins/policy.c:conn_fail_cb() status 2
bluetoothd[931]: src/adapter.c:bonding_attempt_complete() hci0 bdaddr ... type 1 status 0x2
bluetoothd[931]: src/device.c:device_bonding_complete() bonding (nil) status 0x02
bluetoothd[931]: src/device.c:device_bonding_failed() status 2
bluetoothd[931]: src/adapter.c:resume_discovery()
bluetoothd[931]: src/device.c:att_connect_cb() connect error: Transport endpoint is not connected (134)
bluetoothd[931]: src/device.c:att_error_cb() Enabling automatic connections
bluetoothd[931]: src/adapter.c:adapter_connect_list_add() ignoring already added device ...
... passive scan is disabled and remains disabled for good ...
Petri Gynther [Wed, 25 Jun 2014 17:38:17 +0000 (10:38 -0700)]
core: Fix discovering_callback()
discovering_callback() should not call trigger_passive_scanning() when
outgoing BLE connection is pending.
This issue can be seen with BLE HoG devices trying to reconnect to BlueZ:
bluetoothd[931]: src/adapter.c:device_found_callback() hci0 addr ...
bluetoothd[931]: src/device.c:device_set_legacy() legacy 0
bluetoothd[931]: src/device.c:device_set_rssi() rssi -75
bluetoothd[931]: src/adapter.c:stop_passive_scanning()
bluetoothd[931]: src/adapter.c:discovering_callback() hci0 type 6 discovering 0
bluetoothd[931]: src/adapter.c:trigger_passive_scanning()
bluetoothd[931]: src/adapter.c:stop_passive_scanning_complete() status 0x0b (Rejected)
bluetoothd[931]: Stopping passive scanning failed: Rejected
Petri Gynther [Wed, 25 Jun 2014 17:38:03 +0000 (10:38 -0700)]
core: Fix stop_passive_scanning_complete()
Consider MGMT_STATUS_REJECTED as success for stop_passive_scanning().
MGMT_STATUS_REJECTED may be returned from kernel because the passive
scan timer had expired in kernel and passive scan was disabled just
around the time we called stop_passive_scanning().
This issue can be seen with BLE HoG devices trying to reconnect to BlueZ:
bluetoothd[931]: src/adapter.c:device_found_callback() hci0 addr ...
bluetoothd[931]: src/device.c:device_set_legacy() legacy 0
bluetoothd[931]: src/device.c:device_set_rssi() rssi -75
bluetoothd[931]: src/adapter.c:stop_passive_scanning()
bluetoothd[931]: src/adapter.c:discovering_callback() hci0 type 6 discovering 0
bluetoothd[931]: src/adapter.c:trigger_passive_scanning()
bluetoothd[931]: src/adapter.c:stop_passive_scanning_complete() status 0x0b (Rejected)
bluetoothd[931]: Stopping passive scanning failed: Rejected
Luiz Augusto von Dentz [Wed, 25 Jun 2014 11:49:07 +0000 (14:49 +0300)]
android/hog: Fix using invalid range for external report
Andrei Emeltchenko [Thu, 26 Jun 2014 07:14:52 +0000 (10:14 +0300)]
android/health: Fix setting wrong PSM for SDP record
Luiz Augusto von Dentz [Wed, 25 Jun 2014 09:09:26 +0000 (12:09 +0300)]
android/hog: Fix code style
Luiz Augusto von Dentz [Wed, 25 Jun 2014 09:09:25 +0000 (12:09 +0300)]
android/hidhost: Add hid_device_new helper function
Andrei Emeltchenko [Tue, 24 Jun 2014 12:12:02 +0000 (15:12 +0300)]
android/health: Add setting mcl callbacks for incoming connection
For incoming connection NULL is passed as argument since application is
not known yet.
Andrei Emeltchenko [Tue, 24 Jun 2014 12:12:01 +0000 (15:12 +0300)]
android/health: Refactor create_device
create_device() should not search for apps again since we have searched
already, and we do not have always app_id.
Andrei Emeltchenko [Tue, 24 Jun 2014 12:12:00 +0000 (15:12 +0300)]
android/health: Add actual error message to error print
Andrei Emeltchenko [Tue, 24 Jun 2014 12:11:59 +0000 (15:11 +0300)]
android/health: Refactor setting mcl callbacks to function
Function will be used in other places as well.
Andrei Emeltchenko [Tue, 24 Jun 2014 12:11:58 +0000 (15:11 +0300)]
android/health: trivial: Fix missing space
Andrei Emeltchenko [Tue, 24 Jun 2014 12:11:57 +0000 (15:11 +0300)]
android/health: Remove extra check
gerr is always set on error condition.
Andrei Emeltchenko [Tue, 24 Jun 2014 12:11:56 +0000 (15:11 +0300)]
android/health: trivial: Remove empty line
Andrei Emeltchenko [Tue, 24 Jun 2014 12:11:55 +0000 (15:11 +0300)]
android/health: Fix missing error check
Andrei Emeltchenko [Tue, 24 Jun 2014 12:11:54 +0000 (15:11 +0300)]
android/health: Fix possible overflow