Jak przechwycić sygnał SIGWINCH innego procesu (child)?

0

Użyłem ncurses do zbudowania interfejsu użytkownika w nowym oknie pseudoterminala.
W tym celu wywołuję openpty i forkuję nowy proces, w którym uruchamiam okno terminala. Tak jak tutaj.
Niestety przy zmianie rozmiaru okna terminala nie otrzymuję z get_wch KEY_RESIZE. Sprawdzałem dla tego samego okna terminala i wtedy otrzymuję KEY_RESIZE.
Przeczytałem, że KEY_RESIZE jest wysyłane w reakcji na otrzymanie przez proces sygnału SIGWINCH. Niestety w tym przypadku ten sygnał otrzymuje inny proces utworzony przez fork dla nowego okna terminala.
Jak w tym przypadku otrzymać informację, że zmienił się rozmiar okna terminala?

0

Przechwycić rodzicem i wysłać do dzieciaków.

0

Tylko że okno terminala otwieram właśnie jako child i później jeszcze jest exec.
Ale podsunąłeś mi pewien pomysł: można do programu terminala dodać wysyłanie SIGWINCH do parenta, jeśli został uruchomiony z argumentem, który nakazuje przejąć otrzymany pty, a nie tworzyć własny.

Dla terminala rxvt-unicode uzupełniłem kod i działa.

1 użytkowników online, w tym zalogowanych: 0, gości: 1