summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlexey Roslyakov <alexey.roslyakov@newsycat.com>2010-09-02 21:24:56 -0700
committerPatrick Jacques <kernelzilla@kinetic-computing.com>2010-09-02 21:24:56 -0700
commit588096697a65a5275f1010a13326fee03d4096cc (patch)
tree00568ed50070519667fdf8d411ddae694eebe7b8
parent57e7bb29dcf918b965b5676c9b80426d1f9a7139 (diff)
downloadframeworks_base-588096697a65a5275f1010a13326fee03d4096cc.zip
frameworks_base-588096697a65a5275f1010a13326fee03d4096cc.tar.gz
frameworks_base-588096697a65a5275f1010a13326fee03d4096cc.tar.bz2
framework: Fix for race condition in NativeDaemonConnector.
NativeDaemonConnector calls onDaemonConnected() callback function. In case of MountService callback function calls mConnector.doListCommand, and exception occurs since mOutputStream is not initialized yet. Change-Id: I5ecd3980a5e5098bce9bae434ac6e3cab9bf7067
-rw-r--r--services/java/com/android/server/NativeDaemonConnector.java3
1 files changed, 2 insertions, 1 deletions
diff --git a/services/java/com/android/server/NativeDaemonConnector.java b/services/java/com/android/server/NativeDaemonConnector.java
index 08d7ce6..7f0c4f2 100644
--- a/services/java/com/android/server/NativeDaemonConnector.java
+++ b/services/java/com/android/server/NativeDaemonConnector.java
@@ -97,11 +97,12 @@ final class NativeDaemonConnector implements Runnable {
LocalSocketAddress.Namespace.RESERVED);
socket.connect(address);
- mCallbacks.onDaemonConnected();
InputStream inputStream = socket.getInputStream();
mOutputStream = socket.getOutputStream();
+ mCallbacks.onDaemonConnected();
+
byte[] buffer = new byte[BUFFER_SIZE];
int start = 0;