26 lines
1.2 KiB
Text
26 lines
1.2 KiB
Text
Do not use sprintf(3) %n.
|
|
|
|
Index: editor/editoptions.c
|
|
--- editor/editoptions.c.orig
|
|
+++ editor/editoptions.c
|
|
@@ -378,15 +378,15 @@ int save_user_defined_keys (struct key_list k_list[],
|
|
|
|
for (i = 0; k_list[i].key_name[0]; i++) {
|
|
if (k_list[i].keycode2) {
|
|
- sprintf (p, "%s\t%x %x %x %x %x %x\n%n", k_list[i].key_name, k_list[i].state0, k_list[i].keycode0,
|
|
- k_list[i].state1, k_list[i].keycode1, k_list[i].state2, k_list[i].keycode2, &n);
|
|
+ n = sprintf (p, "%s\t%x %x %x %x %x %x\n", k_list[i].key_name, k_list[i].state0, k_list[i].keycode0,
|
|
+ k_list[i].state1, k_list[i].keycode1, k_list[i].state2, k_list[i].keycode2);
|
|
p += n;
|
|
} else if (k_list[i].keycode1) {
|
|
- sprintf (p, "%s\t%x %x %x %x\n%n", k_list[i].key_name, k_list[i].state0, k_list[i].keycode0,
|
|
- k_list[i].state1, k_list[i].keycode1, &n);
|
|
+ n = sprintf (p, "%s\t%x %x %x %x\n", k_list[i].key_name, k_list[i].state0, k_list[i].keycode0,
|
|
+ k_list[i].state1, k_list[i].keycode1);
|
|
p += n;
|
|
} else if (k_list[i].keycode0) {
|
|
- sprintf (p, "%s\t%x %x\n%n", k_list[i].key_name, k_list[i].state0, k_list[i].keycode0, &n);
|
|
+ n = sprintf (p, "%s\t%x %x\n", k_list[i].key_name, k_list[i].state0, k_list[i].keycode0);
|
|
p += n;
|
|
}
|
|
}
|