Cygwin doesn't handle SIGWINCH properly #12508

Open
opened 2026-01-31 03:17:30 +00:00 by claunia · 0 comments
Owner

Originally created by @EmilyGraceSeville7cf on GitHub (Feb 11, 2021).

Environment

Windows build number: Win32NT 10.0.19042.0 Microsoft Windows NT 10.0.19042.0
Windows Terminal version (if applicable): 1.5.10271.0

Steps to reproduce

Execute this Bash script and try resize Windows Terminal window:

#!/usr/bin/env bash
function outputText()
{
  local text=$1
  local -i textLength=${#text}

  local -i line="$(tput lines) / 2"
  local -i col="$(tput cols) / 2 - $textLength / 2"

  clear
  echo -en "\e[$line;${col}H$text"
}

trap "outputText 'Hello world!'" SIGWINCH

outputText 'Hello world!'
while true
do
    :
done

As you see Windows Terminal doesn't handles SIGWINCH properly. However everything works fine when I execute my script directly from Cygwin Terminal without Windows Terminal.

Expected behavior

Centered text is drawn on the screen after window resize.

Actual behavior

Text isn't centered after window resize.

Originally created by @EmilyGraceSeville7cf on GitHub (Feb 11, 2021). <!-- 🚨🚨🚨🚨🚨🚨🚨🚨🚨🚨 I ACKNOWLEDGE THE FOLLOWING BEFORE PROCEEDING: 1. If I delete this entire template and go my own path, the core team may close my issue without further explanation or engagement. 2. If I list multiple bugs/concerns in this one issue, the core team may close my issue without further explanation or engagement. 3. If I write an issue that has many duplicates, the core team may close my issue without further explanation or engagement (and without necessarily spending time to find the exact duplicate ID number). 4. If I leave the title incomplete when filing the issue, the core team may close my issue without further explanation or engagement. 5. If I file something completely blank in the body, the core team may close my issue without further explanation or engagement. All good? Then proceed! --> <!-- This bug tracker is monitored by Windows Terminal development team and other technical folks. **Important: When reporting BSODs or security issues, DO NOT attach memory dumps, logs, or traces to Github issues**. Instead, send dumps/traces to secure@microsoft.com, referencing this GitHub issue. If this is an application crash, please also provide a Feedback Hub submission link so we can find your diagnostic data on the backend. Use the category "Apps > Windows Terminal (Preview)" and choose "Share My Feedback" after submission to get the link. Please use this form and describe your issue, concisely but precisely, with as much detail as possible. --> # Environment ```none Windows build number: Win32NT 10.0.19042.0 Microsoft Windows NT 10.0.19042.0 Windows Terminal version (if applicable): 1.5.10271.0 ``` # Steps to reproduce Execute this Bash script and try resize Windows Terminal window: ```bash #!/usr/bin/env bash function outputText() { local text=$1 local -i textLength=${#text} local -i line="$(tput lines) / 2" local -i col="$(tput cols) / 2 - $textLength / 2" clear echo -en "\e[$line;${col}H$text" } trap "outputText 'Hello world!'" SIGWINCH outputText 'Hello world!' while true do : done ``` As you see Windows Terminal doesn't handles [SIGWINCH](https://man7.org/linux/man-pages/man7/signal.7.html) properly. However everything works fine when I execute my script directly from Cygwin Terminal without Windows Terminal. # Expected behavior Centered text is drawn on the screen after window resize. # Actual behavior Text isn't centered after window resize.
claunia added the Needs-TriageResolution-ExternalNeeds-Tag-FixNeeds-Attention labels 2026-01-31 03:17:31 +00:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#12508