svn commit: r199418 - head/sys/dev/syscons

Jung-uk Kim jkim at FreeBSD.org
Tue Nov 17 19:35:11 UTC 2009


On Tuesday 17 November 2009 02:24 pm, Konstantin Belousov wrote:
> Author: kib
> Date: Tue Nov 17 19:24:26 2009
> New Revision: 199418
> URL: http://svn.freebsd.org/changeset/base/199418
>
> Log:
>   Fix pgsignal() call after signature change in r199355.
>
>   Reported and tested by:	bf1783 googlemail com
>   MFC after:	1 month
>
> Modified:
>   head/sys/dev/syscons/scvidctl.c
>
> Modified: head/sys/dev/syscons/scvidctl.c
> ===================================================================
>=========== --- head/sys/dev/syscons/scvidctl.c	Tue Nov 17 18:57:44
> 2009	(r199417) +++ head/sys/dev/syscons/scvidctl.c	Tue Nov 17
> 19:24:26 2009	(r199418) @@ -321,6 +321,7 @@
> sc_set_pixel_mode(scr_stat *scp, struct return ENODEV;
>  #else
>      video_info_t info;
> +    ksiginfo_t ksi;
>      u_char *font;
>      int prev_ysize;
>      int error;
> @@ -458,8 +459,11 @@ sc_set_pixel_mode(scr_stat *scp, struct
>  	tp->t_winsize.ws_col = scp->xsize;
>  	tp->t_winsize.ws_row = scp->ysize;
>  	if (tp->t_pgrp != NULL) {
> +	    ksiginfo_init(&ksi);
> +	    ksi.ksi_signo = SIGWINCH;
> +	    ksi.ksi_code = SI_KERNEL;
>  	    PGRP_LOCK(tp->t_pgrp);
> -	    pgsignal(tp->t_pgrp, SIGWINCH, 1);
> +	    pgsignal(tp->t_pgrp, SIGWINCH, 1, &ksi);
>  	    PGRP_UNLOCK(tp->t_pgrp);
>  	}
>      }

Probably you wanted this:

--- sys/dev/syscons/scvidctl.c
+++ sys/dev/syscons/scvidctl.c
@@ -321,7 +321,6 @@ sc_set_pixel_mode(scr_stat *scp, struct tty *tp, i
     return ENODEV;
 #else
     video_info_t info;
-    ksiginfo_t ksi;
     u_char *font;
     int prev_ysize;
     int error;
@@ -458,14 +457,8 @@ sc_set_pixel_mode(scr_stat *scp, struct tty *tp, i
        || tp->t_winsize.ws_row != scp->ysize) {
        tp->t_winsize.ws_col = scp->xsize;
        tp->t_winsize.ws_row = scp->ysize;
-       if (tp->t_pgrp != NULL) {
-           ksiginfo_init(&ksi);
-           ksi.ksi_signo = SIGWINCH;
-           ksi.ksi_code = SI_KERNEL;
-           PGRP_LOCK(tp->t_pgrp);
-           pgsignal(tp->t_pgrp, SIGWINCH, 1, &ksi);
-           PGRP_UNLOCK(tp->t_pgrp);
-       }
+
+       tty_signal_pgrp(tp, SIGWINCH);
     }
 
     return 0;
------------------------------------------------------------------

In fact, it seems it was missed in r181905.

Jung-uk Kim
-------------- next part --------------
A non-text attachment was scrubbed...
Name: scvidctl.c.diff
Type: text/x-diff
Size: 739 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/svn-src-all/attachments/20091117/45980811/scvidctl.c.bin


More information about the svn-src-all mailing list