Skip to content
Snippets Groups Projects
Commit 8014dbe9 authored by Shawn Pearce's avatar Shawn Pearce
Browse files

Merge branch 'stable-0.7'

* stable-0.7:
  Fix EGit deadlock listing branches of SSH remote
parents 9285240d 0dc93a2f
No related branches found
No related tags found
No related merge requests found
......@@ -282,8 +282,10 @@ private PackProtocolException duplicateAdvertisement(final String name) {
public void close() {
if (out != null) {
try {
if (outNeedsEnd)
if (outNeedsEnd) {
outNeedsEnd = false;
pckOut.end();
}
out.close();
} catch (IOException err) {
// Ignore any close errors.
......@@ -314,4 +316,23 @@ public void close() {
}
}
}
/** Tell the peer we are disconnecting, if it cares to know. */
protected void endOut() {
if (outNeedsEnd && out != null) {
try {
outNeedsEnd = false;
pckOut.end();
} catch (IOException e) {
try {
out.close();
} catch (IOException err) {
// Ignore any close errors.
} finally {
out = null;
pckOut = null;
}
}
}
}
}
......@@ -264,6 +264,8 @@ class SshFetchConnection extends BasePackFetchConnection {
@Override
public void close() {
endOut();
if (errorThread != null) {
try {
errorThread.join();
......@@ -331,6 +333,8 @@ class SshPushConnection extends BasePackPushConnection {
@Override
public void close() {
endOut();
if (errorThread != null) {
try {
errorThread.join();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment