Prevent apps reading the title of null ringtones from getting "Unknown
ringtone" as the title for a silent ringtone
Bug: 31084929
Change-Id: Ie9f84bd279633f065722dbde1fbd66289eaca07b
ExifInterface object can be created with a unsupported file format.
If saveAttribute is called with an unsupported file format, ExifInterface
makes the file corrupted. This CL prevents those cases by throwing
an exception before making any change on the file.
Bug: 30936376
Change-Id: I115a42601c774062485974042464abb0d65c35e9
ExifInterface uses a class named ByteOrderAwarenessDataInputStream
to handle LITTLE_ENDIAN byte-ordered data. This class can only be
initialized with a byte array, which is inefficient for large RAW
files. This CL adds support for initializing with an input stream.
Bug: 30749097
Change-Id: I4e95fb2157115c571ed24ec3746a3c6db752bbdc
Previously it stored system resources, and that caused
Resources.NotFoundException in following methods:
- RouteInfo.getName()
- RouteCategory.getName()
- UserRouteInfo.setIconResource(int)
- RouteGroup.setIconResource(int)
Also, this CL makes getName()/setName() methods work properly.
Bug: 30797944
Test: run a simple app that calls above methods.
Change-Id: Ia5db57c3d7b71c91dcfeea0584867ee2d846fef9
Separate the default system ringtone settings for managed profiles,
which previously used the same default ringtones as the personal profile
they belong to
Bug: 30658854
Change-Id: I22c69c7b8d31c7c424f5e00a3d9febac98b93d74
Current code checks Pixel X/Y Dimension tags when updating primary
image size values. This creates a problem when the image data are not
placed properly (IFD_TYPE_PRIMARY may need to be swapped with
IFD_TYPE_PREVIEW). This CL moves the updating code to after the
images have been properly placed.
Bug: 29409358
Change-Id: Ia70b5b292812c1e7812e9fc8ca2434998cf1b7f9
commit efa6f355b06675aa4d0879fd279e22c16d5c046c
Author: Mikhail Naganov <mnaganov@google.com>
Date: Wed Aug 10 12:25:13 2016 -0700
MIDI: Use server-side socket in blocking mode for virtual devices
Since virtual MIDI servers may misbehave, blocking mode will throttle
them if clients are not coping with their sending speed.
Bug: 29413812
Change-Id: I9c4a2a7a7ea3ea060c93fedc7d0f033427c557c9
commit 755dfb5f83749d3963c63d98d692307f8271c804
Author: Mikhail Naganov <mnaganov@google.com>
Date: Fri Jul 8 13:26:19 2016 -0700
Protect MIDI framework against client blocks in MidiReceiver.onSend
Make the server-side socket non-blocking when creating MidiOutputPort
for clients. Thus if a client ceases to read from its side of the
socket pair, the server will just fail to write instead of blocking.
One drawback is that the MidiOutputPort on the client can't indicate
that it has become dysfunctional, but it's not possible without
changing the API.
Bug: 29413812
Change-Id: I9dfcbdd214a815cea8fd1365324fd78ca459268a
commit c740b13953761f58233ac651a0b5227733b1bdcc
Author: Mikhail Naganov <mnaganov@google.com>
Date: Fri Jun 17 04:11:25 2016 -0700
UsbMidiDevice: Clean up terminology and fix comments
When working with physical MIDI devices, an *input* stream is used
for reading from *output* port of the device, and vice versa. Thus,
using "input" and "output" without specifying whether it's a stream
or a port is confusing.
Clarify names of counter variables, and fix a couple of comments
that were incorrect due to this confusion. No functional changes.
Change-Id: If561eaca4bade94e9296d2c703c9fcebc91296e2
commit 4269c6417287737624f6165a8bbeb5aa427de9a0
Author: Glenn Kasten <gkasten@google.com>
Date: Thu May 5 18:49:16 2016 -0700
Update MIDI package summary
Bug: 28625060
Change-Id: If552ca8e1a0666d402b5f536699bf3fb09c1e324
commit 862d40b73168bde7d0be5280d997985c18061014
Author: Phil Burk <philburk@google.com>
Date: Tue Apr 19 15:56:24 2016 -0700
MidiDevice: do not open ports on closed device
Fix involves client side mIsDeviceClosed flag.
Bug: 24949216
Change-Id: I666284a787fbb9a710d2372fb424e8e54f6a2825
Signed-off-by: Phil Burk <philburk@google.com>
commit 6f1de358b9f2616e03f4655f01454770915ddd66
Author: Phil Burk <philburk@google.com>
Date: Mon Apr 18 16:05:28 2016 -0700
MidiService: fix resource leak
The proxy object was being used to match when adding or removing objects.
But they are different each time. So now we use an asBinder() object.
Bug: 28153736
Change-Id: I1bccebf1e9464668db757ff08b41902d0cf0e3a7
Signed-off-by: Phil Burk <philburk@google.com>
commit f7386bd535bb8a1d7f8df8f44a1748ab770c991a
Author: Phil Burk <philburk@google.com>
Date: Tue Apr 5 14:19:53 2016 -0700
MidiDevice: fix connectPorts for same Process
If connectPorts() was called for a device in the same process then
the connection would die when the ParcelFileDescriptor was closed.
Bug: 26406775
Change-Id: Id0538452593b4761ac2a93d366ade76d2e35ce73
Signed-off-by: Phil Burk <philburk@google.com>
Change-Id: I4dfc2a2cbaf04bf1a790ae2cb39bf74fb5bb16ac
ExifInterface uses an ambiguous term called "hint" to indicate the
type of IFD that needs to be parsed. This CL substitutes the use of
such term with IfdType class.
Bug: 30749097
Change-Id: Id97d09882f37818978b773d55846707915efeb49
Since virtual MIDI servers may misbehave, blocking mode will throttle
them if clients are not coping with their sending speed.
Bug: 29413812
Change-Id: I9c4a2a7a7ea3ea060c93fedc7d0f033427c557c9
This CL finalizes porting piex into ExifInterface by removing JNI
methods and class as well as methods handling data received from
JNI method calls.
Bug: 29409358
Change-Id: I8f6c761e50cb29476dc0784f58908ec35e3c70e9
DNG files have a unique way of identifying their image compression
type. This CL addresses this issue by adding support for cases
mentioned in the DNG Specifications.
Bug: 30727870
Change-Id: I416b9fb49872e9c878193f346dcaad5f45b0b995
ExifInterface calls native method to retrieve thumbnail data from an
AssetInputStream data. This CL removes that dependecy.
Bug: 29409358
Change-Id: I890b0e813733a5dcaa5480ee48e68c63fc079114
Existing code assumes that the primary image data is correctly placed.
Since this may be a mistaken assumption, this CL checks the
NewSubfilType value and updates the image size values only if the
tag value equals the original resolution image.
Bug: 29409358
Change-Id: I51cffba870ee29d76118b4c8b72290d1010c6462
An uncompressed thumbnail may use 24-bit RGB format to store image
data. This CL handles uncompressed thumbnail images and creates a
bitmap object by using the given byte data.
Bug: 28156704
Change-Id: Ie650de4398004dfa74519817e417c7002d4fbdbb
This CL adds link to MediaMetadata.METADATA_KEY_MEDIA_ID
into the JavaDoc of MediaItem.getMediaId() to help developers
easily find what the MediaId is.
Bug: 28790407
Change-Id: Icdcc98ffe59e1480df9ac85fe22b710ecd9d14de
ARW, CR2, NEF, NRW, SRW have slight modifications to the data
structures described in TIFF Specifications. This CL handles these
modifications.
Bug: 29409358
Change-Id: I10c6b17a25d237b71d311705dfd80f7be783cd1d
Switch the device and client AudioFormat parameters in the
AudioRecordingConfiguration constructor, so it's the same
order as the rest of the code involved in sending a callback
when the recording configuration changes.
Bug 30282058
Change-Id: Iea417f02dcb644e3d4dacbc0e44ea4b2eac28840
PEF, RW2 files have unique ways of storing their data. This CL adds code
that checks whether a file is one of these formats and parses the data
according to specifications.
Bug: 29409358
Change-Id: I6c368b4865414062f9f535bf180d7d7bf6984a7d