diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/org/connectbot/service/Relay.java | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/org/connectbot/service/Relay.java b/src/org/connectbot/service/Relay.java index c15f3f4..cd1c227 100644 --- a/src/org/connectbot/service/Relay.java +++ b/src/org/connectbot/service/Relay.java @@ -78,7 +78,9 @@ public class Relay implements Runnable { newCd.onMalformedInput(CodingErrorAction.REPLACE); currentCharset = charset; - decoder = newCd; + synchronized (this) { + decoder = newCd; + } } public void run() { @@ -97,7 +99,9 @@ public class Relay implements Runnable { if (bytesRead > 0) { byteBuffer.position(0); byteBuffer.limit(bytesRead); - decoder.decode(byteBuffer, charBuffer, false); + synchronized (this) { + decoder.decode(byteBuffer, charBuffer, false); + } buffer.putString(charArray, 0, charBuffer.position()); charBuffer.clear(); bridge.redraw(); |