Zhiyi Zhang (@zhiyi) commented about dlls/comctl32/tests/propsheet.c:
- {
- case WM_NOTIFY:
lpnmhdr = (NMHDR *)lParam;switch (lpnmhdr->code){case PSN_QUERYINITIALFOCUS:{if (!query_initial_focus){SetWindowLongPtrA(hdlg, DWLP_MSGRESULT, (LONG_PTR)GetDlgItem(hdlg, IDC_PS_EDIT2));query_initial_focus = 1;return 1;}else{query_initial_focus = 0;
Let's reset query_initial_focus to zero in test_QueryInitialFocus() before each test case. Setting query_initial_focus to 0 when PSN_QUERYINITIALFOCUS is received and query_initial_focus is non-zero makes its value alternate when multiple PSN_QUERYINITIALFOCUS messages are received. To ensure that's not the case, let's change query_initial_focus into query_initial_focus_count and increase its value when PSN_QUERYINITIALFOCUS is received and reset it before each test case.