staging: speakup: Add __printf format/arg verification, fix fallout
authorJoe Perches <joe@perches.com>
Sat, 4 Mar 2017 16:13:11 +0000 (08:13 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 9 Mar 2017 13:25:57 +0000 (14:25 +0100)
Using __printf allows the compiler to verify formats and arguments.
Use it and fix the single misuse found.

Signed-off-by: Joe Perches <joe@perches.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/speakup/main.c
drivers/staging/speakup/spk_priv.h

index c2f70ef..5c174c9 100644 (file)
@@ -775,7 +775,7 @@ static void say_line(struct vc_data *vc)
                cp = buf;
                while (*cp == SPACE)
                        cp++;
-               synth_printf("%d, ", (cp - buf) + 1);
+               synth_printf("%zd, ", (cp - buf) + 1);
        }
        spk_punc_mask = spk_punc_masks[spk_reading_punc];
        spkup_write(buf, i);
index d5aa41d..c78c2b6 100644 (file)
@@ -63,6 +63,7 @@ void spk_do_catch_up(struct spk_synth *synth);
 void spk_synth_flush(struct spk_synth *synth);
 int spk_synth_is_alive_nop(struct spk_synth *synth);
 int spk_synth_is_alive_restart(struct spk_synth *synth);
+__printf(1, 2)
 void synth_printf(const char *buf, ...);
 int synth_request_region(unsigned long start, unsigned long n);
 int synth_release_region(unsigned long start, unsigned long n);