mirror of
https://github.com/swaywm/sway.git
synced 2026-05-02 06:46:23 -04:00
Fix memory errors
- `swaylock` does not free the password buffer on ENTER - read_line: OOB write when a line in /proc/modules contains a terminating character at `size` position.
This commit is contained in:
parent
7c3b0ffc32
commit
397592adf1
2 changed files with 2 additions and 1 deletions
|
|
@ -36,7 +36,7 @@ char *read_line(FILE *file) {
|
||||||
}
|
}
|
||||||
string[length++] = c;
|
string[length++] = c;
|
||||||
}
|
}
|
||||||
if (length + 1 == size) {
|
if (length + 1 >= size) {
|
||||||
char *new_string = realloc(string, length + 1);
|
char *new_string = realloc(string, length + 1);
|
||||||
if (!new_string) {
|
if (!new_string) {
|
||||||
free(string);
|
free(string);
|
||||||
|
|
|
||||||
|
|
@ -172,6 +172,7 @@ void notify_key(enum wl_keyboard_key_state state, xkb_keysym_t sym, uint32_t cod
|
||||||
redraw_screen = 1;
|
redraw_screen = 1;
|
||||||
|
|
||||||
password_size = 1024;
|
password_size = 1024;
|
||||||
|
free(password);
|
||||||
password = malloc(password_size);
|
password = malloc(password_size);
|
||||||
password[0] = '\0';
|
password[0] = '\0';
|
||||||
break;
|
break;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue