tmux send-keys command cant press enter in MultiAdmin
agent188 opened this issue · comments
- Start the game server via MA in tmux session
- Wait for the game server to load
- We send the command with pressing enter via the tmux command:
tmux send-keys -t SCPSL:0 "/pm reload" Enter
- Result: the command cannot be sent without forcibly pressing Enter via ssh
Tmux version: tmux 3.0a
MA Version: 3.4.0.0-alpha
use_new_input_system: false
cant fix problem
Did this happen in the earlier versions?
On the release version of MultiAdmin, this was not the case
On version 3.3.1.1-alpha is not playable bug
Alright, I'll look into this later today, thanks for reporting 👍
Unhandled Exception:
System.ArgumentOutOfRangeException: Value must be positive and below the buffer height.
Parameter name: top
at System.TermInfoDriver.SetCursorPosition (System.Int32 left, System.Int32 top) [0x0003e] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.TermInfoDriver.WriteSpecialKey (System.ConsoleKeyInfo key) [0x00062] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.TermInfoDriver.Echo (System.ConsoleKeyInfo key) [0x0001d] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.TermInfoDriver.ReadKey (System.Boolean intercept) [0x00011] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.ConsoleDriver.ReadKey (System.Boolean intercept) [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Console.ReadKey (System.Boolean intercept) [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at MultiAdmin.ServerIO.InputHandler.GetInputLineOld (MultiAdmin.Server server, System.Threading.CancellationToken cancellationToken) [0x0008a] in <3f42baba8ce0450ea0673582420ebb59>:0
at MultiAdmin.ServerIO.InputHandler.Write (MultiAdmin.Server server, System.Threading.CancellationToken cancellationToken) [0x0014b] in <3f42baba8ce0450ea0673582420ebb59>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_1 (System.Object state) [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context (System.Object state) [0x00007] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserve
SyncCtx) [0x00071] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx)
[0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00021] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00074] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
[ERROR] FATAL UNHANDLED EXCEPTION: System.ArgumentOutOfRangeException: Value must be positive and below the buffer height.
Parameter name: top
at System.TermInfoDriver.SetCursorPosition (System.Int32 left, System.Int32 top) [0x0003e] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.TermInfoDriver.WriteSpecialKey (System.ConsoleKeyInfo key) [0x00062] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.TermInfoDriver.Echo (System.ConsoleKeyInfo key) [0x0001d] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.TermInfoDriver.ReadKey (System.Boolean intercept) [0x00011] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.ConsoleDriver.ReadKey (System.Boolean intercept) [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Console.ReadKey (System.Boolean intercept) [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at MultiAdmin.ServerIO.InputHandler.GetInputLineOld (MultiAdmin.Server server, System.Threading.CancellationToken cancellationToken) [0x0008a] in <3f42baba8ce0450ea0673582420ebb59>:0
at MultiAdmin.ServerIO.InputHandler.Write (MultiAdmin.Server server, System.Threading.CancellationToken cancellationToken) [0x0014b] in <3f42baba8ce0450ea0673582420ebb59>:0
at System.Runtime.CompilerServices.AsyncMethodBuilderCore+<>c.<ThrowAsync>b__7_1 (System.Object state) [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.QueueUserWorkItemCallback.WaitCallback_Context (System.Object state) [0x00007] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.ExecutionContext.RunInternal (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserve
SyncCtx) [0x00071] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.ExecutionContext.Run (System.Threading.ExecutionContext executionContext, System.Threading.ContextCallback callback, System.Object state, System.Boolean preserveSyncCtx)
[0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem () [0x00021] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading.ThreadPoolWorkQueue.Dispatch () [0x00074] in <d13c8b563008422a8c5aaec0a74089cc>:0
at System.Threading._ThreadPoolWaitCallback.PerformWaitCallback () [0x00000] in <d13c8b563008422a8c5aaec0a74089cc>:0
st
Okay, so a temporary workaround to this issue should be setting hide_input
to true
, I'll continue to look into the cause of this issue and see if I can implement a more proper workaround into MultiAdmin. Thank you for the stacktrace.
Actually, you mentioned that use_new_input_system: false
doesn't work, does use_new_input_system: true
work at all?
Yes, it works, but the problem persists
Hmmm... I'm wondering if this might actually be an issue with Mono itself? I'll look into it further and let you know.
use_new_input_system: true
hide_input: true
cant send command via tmux
use_new_input_system: false
hide_input: true
I also can't send a command via tmux
This issue should be resolved at this point by using console_input_system: Original
on MultiAdmin v3.4.0.1 and up. Please re-open this if the issue persists.