Merge pull request #5903 from eatkins/virtual-terminal-fix

Fix getter and setter for virtual terminal attributes
This commit is contained in:
eugene yokota 2020-09-27 20:42:18 -04:00 committed by GitHub
commit 691dc0a90d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 4 deletions

View File

@ -871,7 +871,7 @@ final class NetworkChannel(
lflag = attributes.getOrElse("lflag", ""),
cchars = attributes.getOrElse("cchars", ""),
)
val queue = VirtualTerminal.setTerminalAttributes(name, jsonRpcRequest, attrs)
val queue = VirtualTerminal.setTerminalAttributesCommand(name, jsonRpcRequest, attrs)
try queue.take
catch { case _: InterruptedException => }
}

View File

@ -19,6 +19,8 @@ import sbt.internal.protocol.{
import sbt.protocol.Serialization.{
attach,
systemIn,
getTerminalAttributes,
setTerminalAttributes,
terminalCapabilities,
terminalGetSize,
terminalPropertiesQuery,
@ -103,10 +105,10 @@ object VirtualTerminal {
val id = UUID.randomUUID.toString
val queue = new ArrayBlockingQueue[TerminalAttributesResponse](1)
pendingTerminalAttributes.put((channelName, id), queue)
jsonRpcRequest(id, terminalCapabilities, TerminalAttributesQuery())
jsonRpcRequest(id, getTerminalAttributes, TerminalAttributesQuery())
queue
}
private[sbt] def setTerminalAttributes(
private[sbt] def setTerminalAttributesCommand(
channelName: String,
jsonRpcRequest: (String, String, TerminalSetAttributesCommand) => Unit,
query: TerminalSetAttributesCommand
@ -114,7 +116,7 @@ object VirtualTerminal {
val id = UUID.randomUUID.toString
val queue = new ArrayBlockingQueue[Unit](1)
pendingTerminalSetAttributes.put((channelName, id), queue)
jsonRpcRequest(id, terminalCapabilities, query)
jsonRpcRequest(id, setTerminalAttributes, query)
queue
}