summaryrefslogtreecommitdiff
path: root/telecomm/java/android/telecom/Connection.java
diff options
context:
space:
mode:
authorHall Liu <hallliu@google.com>2018-07-03 15:17:41 -0700
committerHall Liu <hallliu@google.com>2018-07-03 15:17:41 -0700
commit17eb1bd6e4d0a3062df6787a7564f02abfade50c (patch)
tree29ab388a21b88905d91e95c4eb4b8652f31be089 /telecomm/java/android/telecom/Connection.java
parent730a25995efb2b5646a5d42ce83cfc3dbef6ee74 (diff)
Fix readImmediately for CTS
The readImmediately API (only used by CTS so far) was broken by a previous change that unknowingly changed the semantics of ready(). Fixing this so that CTS tests work again. Change-Id: I6970713eae2a01dd07e30778ca8ee0d9bc7dfeb9 Fixes: 111125833 Test: CTS
Diffstat (limited to 'telecomm/java/android/telecom/Connection.java')
-rw-r--r--telecomm/java/android/telecom/Connection.java8
1 files changed, 5 insertions, 3 deletions
diff --git a/telecomm/java/android/telecom/Connection.java b/telecomm/java/android/telecom/Connection.java
index 3e97c8f40bf8..468c8fa9e30c 100644
--- a/telecomm/java/android/telecom/Connection.java
+++ b/telecomm/java/android/telecom/Connection.java
@@ -854,6 +854,8 @@ public abstract class Connection extends Conferenceable {
private final OutputStreamWriter mPipeToInCall;
private final ParcelFileDescriptor mFdFromInCall;
private final ParcelFileDescriptor mFdToInCall;
+
+ private final FileInputStream mFromInCallFileInputStream;
private char[] mReadBuffer = new char[READ_BUFFER_SIZE];
/**
@@ -862,11 +864,11 @@ public abstract class Connection extends Conferenceable {
public RttTextStream(ParcelFileDescriptor toInCall, ParcelFileDescriptor fromInCall) {
mFdFromInCall = fromInCall;
mFdToInCall = toInCall;
+ mFromInCallFileInputStream = new FileInputStream(fromInCall.getFileDescriptor());
// Wrap the FileInputStream in a Channel so that it's interruptible.
mPipeFromInCall = new InputStreamReader(
- Channels.newInputStream(Channels.newChannel(
- new FileInputStream(fromInCall.getFileDescriptor()))));
+ Channels.newInputStream(Channels.newChannel(mFromInCallFileInputStream)));
mPipeToInCall = new OutputStreamWriter(
new FileOutputStream(toInCall.getFileDescriptor()));
}
@@ -914,7 +916,7 @@ public abstract class Connection extends Conferenceable {
* not entered any new text yet.
*/
public String readImmediately() throws IOException {
- if (mPipeFromInCall.ready()) {
+ if (mFromInCallFileInputStream.available() > 0) {
return read();
} else {
return null;