[PR #1699] [MERGED] Changed the target-session of all tmux commands to use exact matching. #3392

Closed
opened 2026-02-27 03:54:20 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/GameServerManagers/LinuxGSM/pull/1699
Author: @CasperAlant
Created: 11/19/2017
Status: Merged
Merged: 11/25/2017
Merged by: @dgibbs64

Base: developHead: master


📝 Commits (2)

  • 94cbcaf Merge branch 'hotfix/171014.1'
  • 14efacb Changed the target-session of all tmux commands to use exact matching.

📊 Changes

3 files changed (+7 additions, -7 deletions)

View changed files

📝 lgsm/functions/command_console.sh (+1 -1)
📝 lgsm/functions/command_start.sh (+2 -2)
📝 lgsm/functions/command_stop.sh (+4 -4)

📄 Description

If tmux does not find target-session with an exact match, it will try to match the target-session parameter with the start of current session names. This pull-request simply forces tmux to use exact matching.

Source: http://manpages.ubuntu.com/manpages/zesty/man1/tmux.1.html

The problem manifests when running multiple servers (CS:GO in this example). The first session is named csgoserver and the second is named csgoserver-2. When using tmux ... -t "csgoserver", it will match csgoserver-2 if csgoserver is not running.

To recreate the problem:

wget -N --no-check-certificate https://gameservermanagers.com/dl/linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csgoserver
./csgoserver install
./linuxgsm.sh csgoserver
./csgoserver-2 install
./csgoserver start
./csgoserver-2 start
./csgoserver stop

Result:
This will stop both servers. csgoserver is stopped by fn_stop_graceful_cmd and csgoserver-2 is stopped by fn_stop_tmux.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/GameServerManagers/LinuxGSM/pull/1699 **Author:** [@CasperAlant](https://github.com/CasperAlant) **Created:** 11/19/2017 **Status:** ✅ Merged **Merged:** 11/25/2017 **Merged by:** [@dgibbs64](https://github.com/dgibbs64) **Base:** `develop` ← **Head:** `master` --- ### 📝 Commits (2) - [`94cbcaf`](https://github.com/GameServerManagers/LinuxGSM/commit/94cbcaf8498d75aa98bbda38d1b089e99076afe3) Merge branch 'hotfix/171014.1' - [`14efacb`](https://github.com/GameServerManagers/LinuxGSM/commit/14efacbdaca024630331468164fe57097cb46497) Changed the target-session of all tmux commands to use exact matching. ### 📊 Changes **3 files changed** (+7 additions, -7 deletions) <details> <summary>View changed files</summary> 📝 `lgsm/functions/command_console.sh` (+1 -1) 📝 `lgsm/functions/command_start.sh` (+2 -2) 📝 `lgsm/functions/command_stop.sh` (+4 -4) </details> ### 📄 Description If tmux does not find target-session with an exact match, it will try to match the target-session parameter with the start of current session names. This pull-request simply forces tmux to use exact matching. Source: http://manpages.ubuntu.com/manpages/zesty/man1/tmux.1.html The problem manifests when running multiple servers (CS:GO in this example). The first session is named csgoserver and the second is named csgoserver-2. When using tmux ... -t "csgoserver", it will match csgoserver-2 if csgoserver is not running. To recreate the problem: ``` wget -N --no-check-certificate https://gameservermanagers.com/dl/linuxgsm.sh && chmod +x linuxgsm.sh && bash linuxgsm.sh csgoserver ./csgoserver install ./linuxgsm.sh csgoserver ./csgoserver-2 install ./csgoserver start ./csgoserver-2 start ./csgoserver stop ``` Result: This will stop **both** servers. csgoserver is stopped by fn_stop_graceful_cmd and csgoserver-2 is stopped by fn_stop_tmux. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 03:54:20 +03:00
Sign in to join this conversation.
No labels
Atomic
Epic
cannot reproduce
command: backup
command: console
command: debug
command: details
command: fast-dl
command: install
command: mods
command: monitor
command: post-details
command: restart
command: send
command: start
command: stop
command: update
command: update-lgsm
command: validate
command: wipe
distro: AlmaLinux
distro: Arch Linux
distro: CentOS
distro: Debian
distro: Fedora
distro: RedHat
distro: Rocky Linux
distro: Ubuntu
distro: openSUSE
engine: goldsrc
engine: source
game: 7 Days to Die
game: ARMA 3
game: Ark: Survival Evolved
game: Assetto Corsa
game: Avorion
game: BATTALION: Legacy
game: Barotrauma
game: Battalion 1944
game: Battlefield 1942
game: Black Mesa: Deathmatch
game: Blade Symphony
game: Call of Duty 2
game: Call of Duty 4
game: Call of Duty: United Offensive
game: Counter-Strike 1.6
game: Counter-Strike 2
game: Counter-Strike: Global Offensive
game: Counter-Strike: Source
game: Day of Infamy
game: Dayz
game: Death Match Classic
game: Don't Starve Together
game: ET: Legacy
game: Eco
game: Factorio
game: Factorio
game: Garry's Mod
game: Half-Life
game: Hurtword
game: Insurgecy
game: Insurgecy
game: Insurgency: Sandstorm
game: Just Cause 3
game: Killing Floor
game: Killing Floor 2
game: Left 4 Dead 2
game: Minecraft
game: Minecraft Bedrock
game: Mordhau
game: Multi Theft Auto
game: Mumble
game: Natural Selection 2
game: No More Room in Hell
game: Pavlov VR
game: Post Scriptum
game: Project Zomboid
game: Quake 3
game: QuakeWorld
game: Red Orchestra: Ostfront 41-45
game: Return to Castle Wolfenstein
game: Rising World
game: Rust
game: San Andreas Multiplayer
game: Satisfactory
game: Soldat
game: Soldier of Fortune 2
game: Squad
game: Squad 44
game: Starbound
game: Stationeers
game: Sven Co-op
game: Team Fortress 2
game: Teamspeak 3
game: Teeworlds
game: Terraria
game: The Front
game: Unreal Tournament 2004
game: Unreal Tournament 3
game: Unreal Tournament 99
game: Unturned
game: Valheim
game: Wurm Unlimited
game: Zombie Master Reborn
game: label missing
good first issue
help wanted
info: alerts
info: dependency
info: docker
info: docs
info: email
info: query
info: steamcmd
info: systemd
info: tmux
info: website
info: website
needs more info
outcome: duplicate
outcome: issue resolved
outcome: issue resolved
outcome: issue unresolved
outcome: pr accepted
outcome: pr rejected
outcome: unconfirmed
outcome: wontfix
outcome: wrong forum
potential-duplicate
priority
pull-request
type: bug
type: feature
type: feature
type: feature request
type: game server request
type: refactor
waiting response
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/LinuxGSM#3392
No description provided.