diff options
author | Shawn Pearce <spearce@spearce.org> | 2016-11-12 17:06:39 -0800 |
---|---|---|
committer | Shawn Pearce <spearce@spearce.org> | 2016-11-13 11:02:29 -0800 |
commit | 659cd813a98b5a203a21419e58a7dc6de3f40e56 (patch) | |
tree | 35f04625aeb8a82fbcdc11c4684c0be9dd3e8607 /org.eclipse.jgit/resources | |
parent | 8adbfe4da6723768febbb86c22ac118e233c2154 (diff) | |
download | jgit-659cd813a98b5a203a21419e58a7dc6de3f40e56.tar.gz jgit-659cd813a98b5a203a21419e58a7dc6de3f40e56.zip |
Switch JSchSession to simple isolated OutputStream
Work around issues with JSch not handling interrupts by
isolating the JSch interactions onto another thread.
Run write and flush on a single threaded Executor using
simple Callable operations wrapping the method calls,
waiting on the future to determine the outcome before
allowing the caller to continue.
If any operation was interrupted the state of the stream
becomes fuzzy at close time. The implementation tries to
interrupt the pending write or flush, but this is very
likely to corrupt the stream object, so exceptions are
ignored during such a dirty close.
Change-Id: I42e3ba3d8c35a2e40aad340580037ebefbb99b53
Diffstat (limited to 'org.eclipse.jgit/resources')
-rw-r--r-- | org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties index aa73b44848..0f2c8b3d1d 100644 --- a/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties +++ b/org.eclipse.jgit/resources/org/eclipse/jgit/internal/JGitText.properties @@ -116,6 +116,7 @@ checkoutConflictWithFiles=Checkout conflict with files: {0} checkoutUnexpectedResult=Checkout returned unexpected result {0} classCastNotA=Not a {0} cloneNonEmptyDirectory=Destination path "{0}" already exists and is not an empty directory +closed=closed collisionOn=Collision on {0} commandRejectedByHook=Rejected by "{0}" hook.\n{1} commandWasCalledInTheWrongState=Command {0} was called in the wrong state |