diff --git a/CHANGELOG.md b/CHANGELOG.md index 70ae0ef..ddb55ba 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,9 @@ # Changelog +## [5.3.2] 2024-07-02 +### Fixed +- Server list would sometimes be missing some expected servers due to truncation being caused when a server erroneously set an incomplete gametype + ## [5.3.1] 2024-06-15 ### Added - Uninstall routine: invoke via dzgui.sh -u or dzgui.sh --uninstall and choose from full or partial uninstall diff --git a/dzgui.sh b/dzgui.sh index 99747d0..5e59ad9 100755 --- a/dzgui.sh +++ b/dzgui.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash set -o pipefail -version=5.3.1 +version=5.3.2 #CONSTANTS aid=221100 @@ -538,7 +538,7 @@ fetch_helpers_by_sum(){ ["ui.py"]="f14772424461ec438579dec567db0634" ["query_v2.py"]="1822bd1769ce7d7cb0d686a60f9fa197" ["vdf2json.py"]="2f49f6f5d3af919bebaab2e9c220f397" - ["funcs"]="37ae407ac397f6775f3a412e7adb7840" + ["funcs"]="718c3060b88041f5b99a1ce52b12642f" ) local author="aclist" local repo="dztui" @@ -655,7 +655,9 @@ find_default_path(){ debian_path="$HOME/.steam/debian-installation" flatpak_path="$HOME/.var/app/com.valvesoftware.Steam/data/Steam" - for i in "$def_path" "$ubuntu_path" "$debian_path" "$flatpak_path"; do + #ubuntu path must precede default path because + #both exist on ubuntu systems, but only ubuntu path contains library data + for i in "$ubuntu_path" "$def_path" "$debian_path" "$flatpak_path"; do if [[ -d "$i" ]]; then default_steam_path="$i" return 0 diff --git a/helpers/funcs b/helpers/funcs index 8146bd7..b36a30b 100755 --- a/helpers/funcs +++ b/helpers/funcs @@ -521,7 +521,7 @@ parse_server_json(){ "\(if .gametype == null then "null" else (.gametype as $time|$time|test("[0-9]{2}:[0-9]{2}$") as $match|(if $match == true then ($time|scan("[0-9]{2}:[0-9]{2}$")) else "XXXX" end)) end)␞" + "\(.players)␞" + "\(.max_players)␞" + - "\(if .gametype == null then "0" else .gametype|split("lqs")[1]|split(",")[0] end)␞" + + "\(if .gametype == null then "0" elif .gametype|split("lqs")[1] == null then "0" else .gametype|split("lqs")[1]|split(",")[0] end)␞" + "\(.addr|split(":")[0]):\(if .gameport == null then "XXXX" else .gameport end)␞" + "\(.addr|split(":")[1])" ' | sort -k1