diff options
| author | Eli Zaretskii | 2014-03-19 19:43:18 +0200 |
|---|---|---|
| committer | Eli Zaretskii | 2014-03-19 19:43:18 +0200 |
| commit | 722493d794101ebabceb63bac72d94c4cae6e965 (patch) | |
| tree | bdcd1e25391dc950fd5e6ddb98a1c1dbc9831ea5 /src | |
| parent | f88bdc45e02c8d6418b55102ec66cd446c956d93 (diff) | |
| download | emacs-722493d794101ebabceb63bac72d94c4cae6e965.tar.gz emacs-722493d794101ebabceb63bac72d94c4cae6e965.zip | |
Fix minor memory-related problems on MS-Windows revealed by Dr. Memory.
src/w32fns.c (reset_modifiers): Zero out keystate[] before using it.
(w32_wnd_proc): Initialize the dwHoverTime member of
TRACKMOUSEEVENT structure.
Diffstat (limited to 'src')
| -rw-r--r-- | src/ChangeLog | 6 | ||||
| -rw-r--r-- | src/w32fns.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 1330e5ed132..94859f1f8fd 100644 --- a/src/ChangeLog +++ b/src/ChangeLog | |||
| @@ -1,3 +1,9 @@ | |||
| 1 | 2014-03-19 Eli Zaretskii <eliz@gnu.org> | ||
| 2 | |||
| 3 | * w32fns.c (reset_modifiers): Zero out keystate[] before using it. | ||
| 4 | (w32_wnd_proc): Initialize the dwHoverTime member of | ||
| 5 | TRACKMOUSEEVENT structure. | ||
| 6 | |||
| 1 | 2014-03-17 Teodor Zlatanov <tzz@lifelogs.com> | 7 | 2014-03-17 Teodor Zlatanov <tzz@lifelogs.com> |
| 2 | 8 | ||
| 3 | * gnutls.c (Fgnutls_boot): Fix case of :verify-error = t. | 9 | * gnutls.c (Fgnutls_boot): Fix case of :verify-error = t. |
diff --git a/src/w32fns.c b/src/w32fns.c index 66f532c3721..a5b8abfa6b1 100644 --- a/src/w32fns.c +++ b/src/w32fns.c | |||
| @@ -2099,6 +2099,7 @@ reset_modifiers (void) | |||
| 2099 | 2099 | ||
| 2100 | #define CURRENT_STATE(key) ((GetAsyncKeyState (key) & 0x8000) >> 8) | 2100 | #define CURRENT_STATE(key) ((GetAsyncKeyState (key) & 0x8000) >> 8) |
| 2101 | 2101 | ||
| 2102 | memset (keystate, 0, sizeof (keystate)); | ||
| 2102 | GetKeyboardState (keystate); | 2103 | GetKeyboardState (keystate); |
| 2103 | keystate[VK_SHIFT] = CURRENT_STATE (VK_SHIFT); | 2104 | keystate[VK_SHIFT] = CURRENT_STATE (VK_SHIFT); |
| 2104 | keystate[VK_CONTROL] = CURRENT_STATE (VK_CONTROL); | 2105 | keystate[VK_CONTROL] = CURRENT_STATE (VK_CONTROL); |
| @@ -3444,6 +3445,7 @@ w32_wnd_proc (HWND hwnd, UINT msg, WPARAM wParam, LPARAM lParam) | |||
| 3444 | tme.cbSize = sizeof (tme); | 3445 | tme.cbSize = sizeof (tme); |
| 3445 | tme.dwFlags = TME_LEAVE; | 3446 | tme.dwFlags = TME_LEAVE; |
| 3446 | tme.hwndTrack = hwnd; | 3447 | tme.hwndTrack = hwnd; |
| 3448 | tme.dwHoverTime = HOVER_DEFAULT; | ||
| 3447 | 3449 | ||
| 3448 | track_mouse_event_fn (&tme); | 3450 | track_mouse_event_fn (&tme); |
| 3449 | track_mouse_window = hwnd; | 3451 | track_mouse_window = hwnd; |