Author: se
Date: Wed Jan 23 10:05:27 2019
New Revision: 343339
URL: https://svnweb.freebsd.org/changeset/base/343339

Log:
  Silence Clang Scan warning about use of unitialized variable.
  
  While the warning is a false positive, it is possible to clarify the code by
  always initializing the variable. This does also allow to make the sending
  of the "beep" control sequence depend on the validity of its parameters.
  
  I have left the redundant assignment of 0 to the now initialized variables
  in place since this makes the code simpler to understand and does not add
  any run-time overhead (the compiler completely removes the "else if" test
  and the assignments).
  
  There was an embedded literal escape character in a string, which messes up
  diplaying the source code on a terminal that interprets ANSI sequences. The
  literal escape has been replaced by \e (non-standard, but supported by all
  relevant compilers, and already used in other source files in base).
  
  MFC after:    2 weeks

Modified:
  head/usr.sbin/kbdcontrol/kbdcontrol.c

Modified: head/usr.sbin/kbdcontrol/kbdcontrol.c
==============================================================================
--- head/usr.sbin/kbdcontrol/kbdcontrol.c       Wed Jan 23 02:46:35 2019        
(r343338)
+++ head/usr.sbin/kbdcontrol/kbdcontrol.c       Wed Jan 23 10:05:27 2019        
(r343339)
@@ -961,6 +961,8 @@ set_bell_values(char *opt)
        int bell, duration, pitch;
 
        bell = 0;
+       duration = 0;
+       pitch = 0;
        if (!strncmp(opt, "quiet.", 6)) {
                bell = CONS_QUIET_BELL;
                opt += 6;
@@ -991,8 +993,8 @@ badopt:
        }
 
        ioctl(0, CONS_BELLTYPE, &bell);
-       if (!(bell & CONS_VISUAL_BELL))
-               fprintf(stderr, "[=%d;%dB", pitch, duration);
+       if (duration > 0 && pitch > 0)
+               fprintf(stderr, "\e[=%d;%dB", pitch, duration);
 }
 
 static void
_______________________________________________
svn-src-all@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-all
To unsubscribe, send any mail to "svn-src-all-unsubscr...@freebsd.org"

Reply via email to