ReactOS.org
Sign In
Sign Up
Sign In
Sign Up
Manage this list
×
Keyboard Shortcuts
Thread View
j
: Next unread message
k
: Previous unread message
j a
: Jump to all threads
j l
: Jump to MailingList overview
2024
December
November
October
September
August
July
June
May
April
March
February
January
2023
December
November
October
September
August
July
June
May
April
March
February
January
2022
December
November
October
September
August
July
June
May
April
March
February
January
2021
December
November
October
September
August
July
June
May
April
March
February
January
2020
December
November
October
September
August
July
June
May
April
March
February
January
2019
December
November
October
September
August
July
June
May
April
March
February
January
2018
December
November
October
September
August
July
June
May
April
March
February
January
2017
December
November
October
September
August
July
June
May
April
March
February
January
2016
December
November
October
September
August
July
June
May
April
March
February
January
2015
December
November
October
September
August
July
June
May
April
March
February
January
2014
December
November
October
September
August
July
June
May
April
March
February
January
2013
December
November
October
September
August
July
June
May
April
March
February
January
2012
December
November
October
September
August
July
June
May
April
March
February
January
2011
December
November
October
September
August
July
June
May
April
March
February
January
2010
December
November
October
September
August
July
June
May
April
March
February
January
2009
December
November
October
September
August
July
June
May
April
March
February
January
2008
December
November
October
September
August
July
June
May
April
March
February
January
2007
December
November
October
September
August
July
June
May
April
March
February
January
2006
December
November
October
September
August
July
June
May
April
March
February
January
2005
December
November
October
September
August
July
June
May
April
March
February
January
2004
December
November
October
September
August
July
June
May
April
March
February
List overview
Download
Ros-diffs
April 2019
----- 2024 -----
December 2024
November 2024
October 2024
September 2024
August 2024
July 2024
June 2024
May 2024
April 2024
March 2024
February 2024
January 2024
----- 2023 -----
December 2023
November 2023
October 2023
September 2023
August 2023
July 2023
June 2023
May 2023
April 2023
March 2023
February 2023
January 2023
----- 2022 -----
December 2022
November 2022
October 2022
September 2022
August 2022
July 2022
June 2022
May 2022
April 2022
March 2022
February 2022
January 2022
----- 2021 -----
December 2021
November 2021
October 2021
September 2021
August 2021
July 2021
June 2021
May 2021
April 2021
March 2021
February 2021
January 2021
----- 2020 -----
December 2020
November 2020
October 2020
September 2020
August 2020
July 2020
June 2020
May 2020
April 2020
March 2020
February 2020
January 2020
----- 2019 -----
December 2019
November 2019
October 2019
September 2019
August 2019
July 2019
June 2019
May 2019
April 2019
March 2019
February 2019
January 2019
----- 2018 -----
December 2018
November 2018
October 2018
September 2018
August 2018
July 2018
June 2018
May 2018
April 2018
March 2018
February 2018
January 2018
----- 2017 -----
December 2017
November 2017
October 2017
September 2017
August 2017
July 2017
June 2017
May 2017
April 2017
March 2017
February 2017
January 2017
----- 2016 -----
December 2016
November 2016
October 2016
September 2016
August 2016
July 2016
June 2016
May 2016
April 2016
March 2016
February 2016
January 2016
----- 2015 -----
December 2015
November 2015
October 2015
September 2015
August 2015
July 2015
June 2015
May 2015
April 2015
March 2015
February 2015
January 2015
----- 2014 -----
December 2014
November 2014
October 2014
September 2014
August 2014
July 2014
June 2014
May 2014
April 2014
March 2014
February 2014
January 2014
----- 2013 -----
December 2013
November 2013
October 2013
September 2013
August 2013
July 2013
June 2013
May 2013
April 2013
March 2013
February 2013
January 2013
----- 2012 -----
December 2012
November 2012
October 2012
September 2012
August 2012
July 2012
June 2012
May 2012
April 2012
March 2012
February 2012
January 2012
----- 2011 -----
December 2011
November 2011
October 2011
September 2011
August 2011
July 2011
June 2011
May 2011
April 2011
March 2011
February 2011
January 2011
----- 2010 -----
December 2010
November 2010
October 2010
September 2010
August 2010
July 2010
June 2010
May 2010
April 2010
March 2010
February 2010
January 2010
----- 2009 -----
December 2009
November 2009
October 2009
September 2009
August 2009
July 2009
June 2009
May 2009
April 2009
March 2009
February 2009
January 2009
----- 2008 -----
December 2008
November 2008
October 2008
September 2008
August 2008
July 2008
June 2008
May 2008
April 2008
March 2008
February 2008
January 2008
----- 2007 -----
December 2007
November 2007
October 2007
September 2007
August 2007
July 2007
June 2007
May 2007
April 2007
March 2007
February 2007
January 2007
----- 2006 -----
December 2006
November 2006
October 2006
September 2006
August 2006
July 2006
June 2006
May 2006
April 2006
March 2006
February 2006
January 2006
----- 2005 -----
December 2005
November 2005
October 2005
September 2005
August 2005
July 2005
June 2005
May 2005
April 2005
March 2005
February 2005
January 2005
----- 2004 -----
December 2004
November 2004
October 2004
September 2004
August 2004
July 2004
June 2004
May 2004
April 2004
March 2004
February 2004
ros-diffs@reactos.org
32 participants
240 discussions
Start a n
N
ew thread
[reactos] 01/01: [WIN32SS][NTUSER] Fix message time (#1259)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=94a42d43b59e59aa39952…
commit 94a42d43b59e59aa3995248577e74588af6727ea Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Fri Apr 12 07:56:04 2019 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Fri Apr 12 07:56:04 2019 +0900 [WIN32SS][NTUSER] Fix message time (#1259) Fix CORE-15565 and make #1245 GetMessageTime testcase successful. CORE-15565 - Erase MsqCalculateMessageTime function. - Use (DWORD)EngGetTickCount() instead. - Ghosting is temporarily disabled. --- win32ss/gdi/eng/eng.h | 2 ++ win32ss/user/ntuser/event.c | 4 ++-- win32ss/user/ntuser/input.c | 8 ++------ win32ss/user/ntuser/keyboard.c | 8 ++------ win32ss/user/ntuser/main.c | 5 +---- win32ss/user/ntuser/message.c | 24 +++++++----------------- win32ss/user/ntuser/misc.c | 6 ++---- win32ss/user/ntuser/mouse.c | 4 +--- win32ss/user/ntuser/msgqueue.c | 14 +++----------- win32ss/user/ntuser/msgqueue.h | 6 ------ win32ss/user/ntuser/timer.c | 10 +++------- 11 files changed, 25 insertions(+), 66 deletions(-) diff --git a/win32ss/gdi/eng/eng.h b/win32ss/gdi/eng/eng.h index 2a467b15115..213e2733671 100644 --- a/win32ss/gdi/eng/eng.h +++ b/win32ss/gdi/eng/eng.h @@ -40,6 +40,8 @@ APIENTRY EngGetTickCount( VOID); +#define EngGetTickCount32() (ULONG)EngGetTickCount() + HANDLE APIENTRY EngSecureMemForRead( diff --git a/win32ss/user/ntuser/event.c b/win32ss/user/ntuser/event.c index a82516cdcf0..f5a3a65c3bc 100644 --- a/win32ss/user/ntuser/event.c +++ b/win32ss/user/ntuser/event.c @@ -165,7 +165,7 @@ co_EVENT_CallEvents( DWORD event, pEP->idObject, pEP->idChild, pEP->idThread, - (DWORD)EngGetTickCount(), + EngGetTickCount32(), pEH->Proc, pEH->ihmod, pEH->offPfn); @@ -229,7 +229,7 @@ IntNotifyWinEvent( idObject, idChild, PtrToUint(NtCurrentTeb()->ClientId.UniqueThread), - (DWORD)EngGetTickCount(), + EngGetTickCount32(), pEH->Proc, pEH->ihmod, pEH->offPfn); diff --git a/win32ss/user/ntuser/input.c b/win32ss/user/ntuser/input.c index 520ccca9ebb..2cc63634e7e 100644 --- a/win32ss/user/ntuser/input.c +++ b/win32ss/user/ntuser/input.c @@ -33,9 +33,7 @@ IntLastInputTick(BOOL bUpdate) { if (bUpdate) { - LARGE_INTEGER TickCount; - KeQueryTickCount(&TickCount); - LastInputTick = MsqCalculateMessageTime(&TickCount); + LastInputTick = EngGetTickCount32(); if (gpsi) gpsi->dwLastRITEventTickCount = LastInputTick; } return LastInputTick; @@ -49,13 +47,11 @@ IntLastInputTick(BOOL bUpdate) VOID FASTCALL DoTheScreenSaver(VOID) { - LARGE_INTEGER TickCount; DWORD Test, TO; if (gspv.iScrSaverTimeout > 0) // Zero means Off. { - KeQueryTickCount(&TickCount); - Test = MsqCalculateMessageTime(&TickCount); + Test = EngGetTickCount32(); Test = Test - LastInputTick; TO = 1000 * gspv.iScrSaverTimeout; if (Test > TO) diff --git a/win32ss/user/ntuser/keyboard.c b/win32ss/user/ntuser/keyboard.c index f72e275cf2d..33cf53e491c 100644 --- a/win32ss/user/ntuser/keyboard.c +++ b/win32ss/user/ntuser/keyboard.c @@ -976,7 +976,6 @@ UserSendKeyboardInput(KEYBDINPUT *pKbdInput, BOOL bInjected) PKL pKl = NULL; PKBDTABLES pKbdTbl; PUSER_MESSAGE_QUEUE pFocusQueue; - LARGE_INTEGER LargeTickCount; DWORD dwTime; BOOL bExt = (pKbdInput->dwFlags & KEYEVENTF_EXTENDEDKEY) ? TRUE : FALSE; @@ -1030,8 +1029,7 @@ UserSendKeyboardInput(KEYBDINPUT *pKbdInput, BOOL bInjected) dwTime = pKbdInput->time; else { - KeQueryTickCount(&LargeTickCount); - dwTime = MsqCalculateMessageTime(&LargeTickCount); + dwTime = EngGetTickCount32(); } if (wVk == VK_RMENU && (pKbdTbl->fLocaleFlags & KLLF_ALTGR)) @@ -1143,7 +1141,6 @@ IntTranslateKbdMessage(LPMSG lpMsg, WCHAR wch[3] = { 0 }; MSG NewMsg = { 0 }; PKBDTABLES pKbdTbl; - LARGE_INTEGER LargeTickCount; BOOL bResult = FALSE; switch(lpMsg->message) @@ -1176,8 +1173,7 @@ IntTranslateKbdMessage(LPMSG lpMsg, /* Init pt, hwnd and time msg fields */ NewMsg.pt = gpsi->ptCursor; NewMsg.hwnd = lpMsg->hwnd; - KeQueryTickCount(&LargeTickCount); - NewMsg.time = MsqCalculateMessageTime(&LargeTickCount); + NewMsg.time = EngGetTickCount32(); TRACE("Enter IntTranslateKbdMessage msg %s, vk %x\n", lpMsg->message == WM_SYSKEYDOWN ? "WM_SYSKEYDOWN" : "WM_KEYDOWN", lpMsg->wParam); diff --git a/win32ss/user/ntuser/main.c b/win32ss/user/ntuser/main.c index b790fd84ef5..9e63ce8f22e 100644 --- a/win32ss/user/ntuser/main.c +++ b/win32ss/user/ntuser/main.c @@ -443,7 +443,6 @@ InitThreadCallback(PETHREAD Thread) int i; NTSTATUS Status = STATUS_SUCCESS; PTEB pTeb; - LARGE_INTEGER LargeTickCount; PRTL_USER_PROCESS_PARAMETERS ProcessParams; Process = Thread->ThreadsProcess; @@ -504,9 +503,7 @@ InitThreadCallback(PETHREAD Thread) goto error; } - KeQueryTickCount(&LargeTickCount); - ptiCurrent->timeLast = LargeTickCount.u.LowPart; - + ptiCurrent->timeLast = EngGetTickCount32(); ptiCurrent->MessageQueue = MsqCreateMessageQueue(ptiCurrent); if (ptiCurrent->MessageQueue == NULL) { diff --git a/win32ss/user/ntuser/message.c b/win32ss/user/ntuser/message.c index 7564109c47d..2fd47c4fd8d 100644 --- a/win32ss/user/ntuser/message.c +++ b/win32ss/user/ntuser/message.c @@ -681,7 +681,6 @@ static LRESULT handle_internal_events( PTHREADINFO pti, PWND pWnd, DWORD dwQEven LRESULT FASTCALL IntDispatchMessage(PMSG pMsg) { - LARGE_INTEGER TickCount; LONG Time; LRESULT retval = 0; PTHREADINFO pti; @@ -710,8 +709,7 @@ IntDispatchMessage(PMSG pMsg) { if (ValidateTimerCallback(pti,pMsg->lParam)) { - KeQueryTickCount(&TickCount); - Time = MsqCalculateMessageTime(&TickCount); + Time = EngGetTickCount32(); retval = co_IntCallWindowProc((WNDPROC)pMsg->lParam, TRUE, pMsg->hwnd, @@ -727,8 +725,7 @@ IntDispatchMessage(PMSG pMsg) PTIMER pTimer = FindSystemTimer(pMsg); if (pTimer && pTimer->pfn) { - KeQueryTickCount(&TickCount); - Time = MsqCalculateMessageTime(&TickCount); + Time = EngGetTickCount32(); pTimer->pfn(pMsg->hwnd, WM_SYSTIMER, (UINT)pMsg->wParam, Time); } return 0; @@ -815,7 +812,6 @@ co_IntPeekMessage( PMSG Msg, BOOL bGMSG ) { PTHREADINFO pti; - LARGE_INTEGER LargeTickCount; BOOL RemoveMessages; UINT ProcessMask; BOOL Hit = FALSE; @@ -833,9 +829,8 @@ co_IntPeekMessage( PMSG Msg, do { - KeQueryTickCount(&LargeTickCount); - pti->timeLast = LargeTickCount.u.LowPart; - pti->pcti->tickLastMsgChecked = LargeTickCount.u.LowPart; + pti->timeLast = EngGetTickCount32(); + pti->pcti->tickLastMsgChecked = pti->timeLast; // Post mouse moves while looping through peek messages. if (pti->MessageQueue->QF_flags & QF_MOUSEMOVED) @@ -1152,7 +1147,6 @@ UserPostThreadMessage( PTHREADINFO pti, LPARAM lParam ) { MSG Message; - LARGE_INTEGER LargeTickCount; if (is_pointer_message(Msg)) { @@ -1164,9 +1158,7 @@ UserPostThreadMessage( PTHREADINFO pti, Message.wParam = wParam; Message.lParam = lParam; Message.pt = gpsi->ptCursor; - - KeQueryTickCount(&LargeTickCount); - Message.time = MsqCalculateMessageTime(&LargeTickCount); + Message.time = EngGetTickCount32(); MsqPostMessage(pti, &Message, FALSE, QS_POSTMESSAGE, 0, 0); return TRUE; } @@ -1193,7 +1185,6 @@ UserPostMessage( HWND Wnd, { PTHREADINFO pti; MSG Message; - LARGE_INTEGER LargeTickCount; LONG_PTR ExtraInfo = 0; Message.hwnd = Wnd; @@ -1201,8 +1192,7 @@ UserPostMessage( HWND Wnd, Message.wParam = wParam; Message.lParam = lParam; Message.pt = gpsi->ptCursor; - KeQueryTickCount(&LargeTickCount); - Message.time = MsqCalculateMessageTime(&LargeTickCount); + Message.time = EngGetTickCount32(); if (is_pointer_message(Message.message)) { @@ -1468,7 +1458,7 @@ co_IntSendMessageTimeoutSingle( HWND hWnd, if (Status == STATUS_TIMEOUT) { - if (MsqIsHung(ptiSendTo)) + if (0 && MsqIsHung(ptiSendTo)) { TRACE("Let's go Ghost!\n"); IntMakeHungWindowGhosted(hWnd); diff --git a/win32ss/user/ntuser/misc.c b/win32ss/user/ntuser/misc.c index 83d0ad1fe58..78408cac7a7 100644 --- a/win32ss/user/ntuser/misc.c +++ b/win32ss/user/ntuser/misc.c @@ -295,11 +295,9 @@ NtUserGetThreadState( case THREADSTATE_UPTIMELASTREAD: { PTHREADINFO pti; - LARGE_INTEGER LargeTickCount; pti = PsGetCurrentThreadWin32Thread(); - KeQueryTickCount(&LargeTickCount); - pti->timeLast = LargeTickCount.u.LowPart; - pti->pcti->tickLastMsgChecked = LargeTickCount.u.LowPart; + pti->timeLast = EngGetTickCount32(); + pti->pcti->tickLastMsgChecked = pti->timeLast; } break; diff --git a/win32ss/user/ntuser/mouse.c b/win32ss/user/ntuser/mouse.c index 46dfcfdd4ff..df8d7a6cc70 100644 --- a/win32ss/user/ntuser/mouse.c +++ b/win32ss/user/ntuser/mouse.c @@ -210,9 +210,7 @@ UserSendMouseInput(MOUSEINPUT *pmi, BOOL bInjected) Msg.time = pmi->time; if (!Msg.time) { - LARGE_INTEGER LargeTickCount; - KeQueryTickCount(&LargeTickCount); - Msg.time = MsqCalculateMessageTime(&LargeTickCount); + Msg.time = EngGetTickCount32(); } /* Do GetMouseMovePointsEx FIFO. */ diff --git a/win32ss/user/ntuser/msgqueue.c b/win32ss/user/ntuser/msgqueue.c index 446895915c4..2baa5a5ae49 100644 --- a/win32ss/user/ntuser/msgqueue.c +++ b/win32ss/user/ntuser/msgqueue.c @@ -551,13 +551,11 @@ VOID FASTCALL IntCoalesceMouseMove(PTHREADINFO pti) { MSG Msg; - LARGE_INTEGER LargeTickCount; // Force time stamp to update, keeping message time in sync. if (gdwMouseMoveTimeStamp == 0) { - KeQueryTickCount(&LargeTickCount); - gdwMouseMoveTimeStamp = MsqCalculateMessageTime(&LargeTickCount); + gdwMouseMoveTimeStamp = EngGetTickCount32(); } // Build mouse move message. @@ -581,7 +579,6 @@ IntCoalesceMouseMove(PTHREADINFO pti) VOID FASTCALL co_MsqInsertMouseMessage(MSG* Msg, DWORD flags, ULONG_PTR dwExtraInfo, BOOL Hook) { - LARGE_INTEGER LargeTickCount; MSLLHOOKSTRUCT MouseHookData; // PDESKTOP pDesk; PWND pwnd, pwndDesktop; @@ -590,8 +587,7 @@ co_MsqInsertMouseMessage(MSG* Msg, DWORD flags, ULONG_PTR dwExtraInfo, BOOL Hook PUSER_MESSAGE_QUEUE MessageQueue; PSYSTEM_CURSORINFO CurInfo; - KeQueryTickCount(&LargeTickCount); - Msg->time = MsqCalculateMessageTime(&LargeTickCount); + Msg->time = EngGetTickCount32(); MouseHookData.pt.x = LOWORD(Msg->lParam); MouseHookData.pt.y = HIWORD(Msg->lParam); @@ -2197,11 +2193,7 @@ co_MsqWaitForNewMessages(PTHREADINFO pti, PWND WndFilter, BOOL FASTCALL MsqIsHung(PTHREADINFO pti) { - LARGE_INTEGER LargeTickCount; - - KeQueryTickCount(&LargeTickCount); - - if ((LargeTickCount.u.LowPart - pti->timeLast) > MSQ_HUNG && + if (EngGetTickCount32() - pti->timeLast > MSQ_HUNG && !(pti->pcti->fsWakeMask & QS_INPUT) && !PsGetThreadFreezeCount(pti->pEThread) && !(pti->ppi->W32PF_flags & W32PF_APPSTARTING)) diff --git a/win32ss/user/ntuser/msgqueue.h b/win32ss/user/ntuser/msgqueue.h index 8b9d486675e..0927354165b 100644 --- a/win32ss/user/ntuser/msgqueue.h +++ b/win32ss/user/ntuser/msgqueue.h @@ -249,12 +249,6 @@ VOID APIENTRY MsqRemoveWindowMessagesFromQueue(PWND pWindow); HANDLE FASTCALL IntMsqSetWakeMask(DWORD WakeMask); BOOL FASTCALL IntMsqClearWakeMask(VOID); -static __inline LONG -MsqCalculateMessageTime(IN PLARGE_INTEGER TickCount) -{ - return (LONG)(TickCount->QuadPart * (KeQueryTimeIncrement() / 10000)); -} - VOID FASTCALL IdlePing(VOID); VOID FASTCALL IdlePong(VOID); BOOL FASTCALL co_MsqReplyMessage(LRESULT); diff --git a/win32ss/user/ntuser/timer.c b/win32ss/user/ntuser/timer.c index fc348eeba17..9a7789d9aec 100644 --- a/win32ss/user/ntuser/timer.c +++ b/win32ss/user/ntuser/timer.c @@ -399,7 +399,6 @@ PostTimerMessages(PWND Window) PTHREADINFO pti; BOOL Hit = FALSE; PTIMER pTmr; - LARGE_INTEGER TickCount; pti = PsGetCurrentThreadWin32Thread(); @@ -412,13 +411,11 @@ PostTimerMessages(PWND Window) (pTmr->pti == pti) && ((pTmr->pWnd == Window) || (Window == NULL)) ) { - KeQueryTickCount(&TickCount); - Msg.hwnd = (pTmr->pWnd) ? pTmr->pWnd->head.h : 0; Msg.message = (pTmr->flags & TMRF_SYSTEM) ? WM_SYSTIMER : WM_TIMER; Msg.wParam = (WPARAM) pTmr->nID; Msg.lParam = (LPARAM) pTmr->pfn; - Msg.time = MsqCalculateMessageTime(&TickCount); + Msg.time = EngGetTickCount32(); // Fix all wine win:test_GetMessagePos WM_TIMER tests. See CORE-10867. Msg.pt = gpsi->ptCursor; @@ -448,7 +445,7 @@ VOID FASTCALL ProcessTimers(VOID) { - LARGE_INTEGER TickCount, DueTime; + LARGE_INTEGER DueTime; LONG Time; PLIST_ENTRY pLE; PTIMER pTmr; @@ -456,8 +453,7 @@ ProcessTimers(VOID) TimerEnterExclusive(); pLE = TimersListHead.Flink; - KeQueryTickCount(&TickCount); - Time = MsqCalculateMessageTime(&TickCount); + Time = EngGetTickCount32(); DueTime.QuadPart = (LONGLONG)(-97656); // 1024hz .9765625 ms set to 10.0 ms
5 years, 8 months
1
0
0
0
[reactos] 01/01: [WIN32SS][NTGDI] Delete unnecessary (ULONG) cast CORE-15755
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=983cd57c1eaae41383f85…
commit 983cd57c1eaae41383f850d2372170bb0b4a5efb Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Thu Apr 11 18:23:32 2019 +0900 Commit: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> CommitDate: Thu Apr 11 18:23:32 2019 +0900 [WIN32SS][NTGDI] Delete unnecessary (ULONG) cast CORE-15755 --- win32ss/gdi/ntgdi/freetype.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index 2f699cdacbe..b5433d38441 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -5492,7 +5492,7 @@ NtGdiGetFontFamilyInfo(HDC Dc, /* Allocate space for a safe copy */ Status = RtlULongMult(SafeInfoCount, sizeof(FONTFAMILYINFO), &DataSize); - if (!NT_SUCCESS(Status) || (ULONG)DataSize > LONG_MAX) + if (!NT_SUCCESS(Status) || DataSize > LONG_MAX) { DPRINT1("Overflowed.\n"); EngSetLastError(ERROR_INVALID_PARAMETER);
5 years, 8 months
1
0
0
0
[reactos] 01/01: [GDI32][NTGDI] Avoid integer overflow (follow-up of #1492) (#1495)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=bc9f3ed887861dfcc935a…
commit bc9f3ed887861dfcc935ab077eaeea38b4cf1b1d Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Thu Apr 11 17:57:57 2019 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Thu Apr 11 17:57:57 2019 +0900 [GDI32][NTGDI] Avoid integer overflow (follow-up of #1492) (#1495) Follow up of #1492. CORE-15755 - Use RtlULongMult function to check integer overflows. --- win32ss/gdi/gdi32/include/precomp.h | 1 + win32ss/gdi/gdi32/objects/font.c | 12 ++++++++++-- win32ss/gdi/ntgdi/freetype.c | 13 ++++++++----- 3 files changed, 19 insertions(+), 7 deletions(-) diff --git a/win32ss/gdi/gdi32/include/precomp.h b/win32ss/gdi/gdi32/include/precomp.h index 5f8614b3a92..3d4b823c2fe 100644 --- a/win32ss/gdi/gdi32/include/precomp.h +++ b/win32ss/gdi/gdi32/include/precomp.h @@ -58,5 +58,6 @@ #include <ntgdibad.h> #include <undocgdi.h> +#include <ntintsafe.h> #endif /* _GDI32_PCH_ */ diff --git a/win32ss/gdi/gdi32/objects/font.c b/win32ss/gdi/gdi32/objects/font.c index e20c0702fb9..1b6cfa7296f 100644 --- a/win32ss/gdi/gdi32/objects/font.c +++ b/win32ss/gdi/gdi32/objects/font.c @@ -295,7 +295,9 @@ IntEnumFontFamilies(HDC Dc, const LOGFONTW *LogFont, PVOID EnumProc, LPARAM lPar ENUMLOGFONTEXA EnumLogFontExA; NEWTEXTMETRICEXA NewTextMetricExA; LOGFONTW lfW; - LONG DataSize, InfoCount; + LONG InfoCount; + ULONG DataSize; + NTSTATUS Status; DataSize = INITIAL_FAMILY_COUNT * sizeof(FONTFAMILYINFO); Info = RtlAllocateHeap(GetProcessHeap(), 0, DataSize); @@ -330,7 +332,13 @@ IntEnumFontFamilies(HDC Dc, const LOGFONTW *LogFont, PVOID EnumProc, LPARAM lPar if (INITIAL_FAMILY_COUNT < InfoCount) { RtlFreeHeap(GetProcessHeap(), 0, Info); - DataSize = InfoCount * sizeof(FONTFAMILYINFO); + + Status = RtlULongMult(InfoCount, sizeof(FONTFAMILYINFO), &DataSize); + if (!NT_SUCCESS(Status) || DataSize > LONG_MAX) + { + DPRINT1("Overflowed.\n"); + return 1; + } Info = RtlAllocateHeap(GetProcessHeap(), 0, DataSize); if (Info == NULL) { diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index 298c1fa12ca..2f699cdacbe 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -5456,7 +5456,8 @@ NtGdiGetFontFamilyInfo(HDC Dc, NTSTATUS Status; LOGFONTW LogFont; PFONTFAMILYINFO Info; - LONG GotCount, AvailCount, DataSize, SafeInfoCount; + LONG GotCount, AvailCount, SafeInfoCount; + ULONG DataSize; if (UnsafeLogFont == NULL || UnsafeInfo == NULL || UnsafeInfoCount == NULL) { @@ -5490,9 +5491,10 @@ NtGdiGetFontFamilyInfo(HDC Dc, } /* Allocate space for a safe copy */ - DataSize = SafeInfoCount * sizeof(FONTFAMILYINFO); - if (DataSize <= 0) + Status = RtlULongMult(SafeInfoCount, sizeof(FONTFAMILYINFO), &DataSize); + if (!NT_SUCCESS(Status) || (ULONG)DataSize > LONG_MAX) { + DPRINT1("Overflowed.\n"); EngSetLastError(ERROR_INVALID_PARAMETER); return -1; } @@ -5511,9 +5513,10 @@ NtGdiGetFontFamilyInfo(HDC Dc, /* Return data to caller */ if (GotCount > 0) { - DataSize = GotCount * sizeof(FONTFAMILYINFO); - if (DataSize <= 0) + Status = RtlULongMult(GotCount, sizeof(FONTFAMILYINFO), &DataSize); + if (!NT_SUCCESS(Status) || DataSize > LONG_MAX) { + DPRINT1("Overflowed.\n"); ExFreePoolWithTag(Info, GDITAG_TEXT); EngSetLastError(ERROR_INVALID_PARAMETER); return -1;
5 years, 8 months
1
0
0
0
[reactos] 01/01: [GDI32][NTGDI][SETUP] Fix font enumeration part 2 (#1492)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=811faed421a798659af3c…
commit 811faed421a798659af3cb3f09369af84fc4edf0 Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Thu Apr 11 11:46:52 2019 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Thu Apr 11 11:46:52 2019 +0900 [GDI32][NTGDI][SETUP] Fix font enumeration part 2 (#1492) Eliminate some bugs about font enumeration. CORE-15755 - Add "Microsoft Sans Serif" font substitution. - Fix and improve the treatment of the nominal font names. - Split IntGetFontFamilyInfo function from NtGdiGetFontFamilyInfo. - Add DoFontSystemUnittest function for font system unittest to GDI32. - Call DoFontSystemUnittest function at CreateFontIndirectW first call. --- base/setup/lib/muifonts.h | 10 +++ boot/bootdata/livecd.inf | 1 + win32ss/gdi/gdi32/objects/font.c | 140 +++++++++++++++++++++++------ win32ss/gdi/ntgdi/freetype.c | 186 +++++++++++++++++++++++++-------------- win32ss/include/ntgdibad.h | 7 +- 5 files changed, 250 insertions(+), 94 deletions(-) diff --git a/base/setup/lib/muifonts.h b/base/setup/lib/muifonts.h index 72292afc466..826d512bdc1 100644 --- a/base/setup/lib/muifonts.h +++ b/base/setup/lib/muifonts.h @@ -11,6 +11,7 @@ MUI_SUBFONT LatinFonts[] = { L"Helv", L"Tahoma" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"Tahoma" }, { L"MS Sans Serif", L"Tahoma" }, { L"MS Shell Dlg", L"Tahoma" }, { L"MS Shell Dlg 2", L"Tahoma" }, @@ -37,6 +38,7 @@ MUI_SUBFONT CyrillicFonts[] = { L"Helv", L"Tahoma" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"Tahoma" }, { L"MS Sans Serif", L"Tahoma" }, { L"MS Shell Dlg", L"Tahoma" }, { L"MS Shell Dlg 2", L"Tahoma" }, @@ -63,6 +65,7 @@ MUI_SUBFONT GreekFonts[] = { L"Helv", L"DejaVu Sans" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"DejaVu Sans" }, { L"MS Sans Serif", L"DejaVu Sans" }, { L"MS Shell Dlg", L"DejaVu Sans" }, { L"MS Shell Dlg 2", L"DejaVu Sans" }, @@ -89,6 +92,7 @@ MUI_SUBFONT HebrewFonts[] = { L"Helv", L"Tahoma" }, { L"Helvetica", L"Tahoma" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"Tahoma" }, { L"MS Sans Serif", L"Tahoma" }, { L"MS Shell Dlg", L"Tahoma" }, { L"MS Shell Dlg 2", L"Tahoma" }, @@ -121,6 +125,7 @@ MUI_SUBFONT ChineseSimplifiedFonts[] = { L"Helv", L"Droid Sans Fallback" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"Droid Sans Fallback" }, { L"MS Sans Serif", L"Droid Sans Fallback" }, { L"MS Shell Dlg", L"Droid Sans Fallback" }, { L"MS Shell Dlg 2", L"Droid Sans Fallback" }, @@ -163,6 +168,7 @@ MUI_SUBFONT ChineseTraditionalFonts[] = { L"Helv", L"Droid Sans Fallback" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"Droid Sans Fallback" }, { L"MS Sans Serif", L"Droid Sans Fallback" }, { L"MS Shell Dlg", L"Droid Sans Fallback" }, { L"MS Shell Dlg 2", L"Droid Sans Fallback" }, @@ -206,6 +212,7 @@ MUI_SUBFONT JapaneseFonts[] = { L"Helv", L"Droid Sans Fallback" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"Droid Sans Fallback" }, { L"MS Sans Serif", L"Droid Sans Fallback" }, { L"MS Shell Dlg", L"Droid Sans Fallback" }, { L"MS Shell Dlg 2", L"Droid Sans Fallback" }, @@ -250,6 +257,7 @@ MUI_SUBFONT KoreanFonts[] = { L"Helv", L"Droid Sans Fallback" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"Droid Sans Fallback" }, { L"MS Sans Serif", L"Droid Sans Fallback" }, { L"MS Shell Dlg", L"Droid Sans Fallback" }, { L"MS Shell Dlg 2", L"Droid Sans Fallback" }, @@ -293,6 +301,7 @@ MUI_SUBFONT UnicodeFonts[] = { L"Helv", L"DejaVu Sans" }, { L"Helvetica", L"DejaVu Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"DejaVu Sans" }, { L"MS Sans Serif", L"DejaVu Sans" }, { L"MS Shell Dlg", L"DejaVu Sans" }, { L"MS Shell Dlg 2", L"DejaVu Sans" }, @@ -320,6 +329,7 @@ MUI_SUBFONT HindiFonts[] = { L"Helv", L"Tahoma" }, { L"Helvetica", L"Liberation Sans" }, { L"Lucida Console", L"DejaVu Sans Mono" }, + { L"Microsoft Sans Serif", L"FreeSans" }, { L"MS Sans Serif", L"FreeSans" }, { L"MS Shell Dlg", L"FreeSans" }, { L"MS Shell Dlg 2", L"FreeSans" }, diff --git a/boot/bootdata/livecd.inf b/boot/bootdata/livecd.inf index fda2356a978..dd44f0ed533 100644 --- a/boot/bootdata/livecd.inf +++ b/boot/bootdata/livecd.inf @@ -50,6 +50,7 @@ HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","Fixedsys",0 HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","Helv",0x00000000,"Tahoma" HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","Helvetica",0x00000000,"Liberation Sans" HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","Lucida Console",0x00000000,"DejaVu Sans Mono" +HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","Microsoft Sans Serif",0x00000000,"Tahoma" HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","MS Sans Serif",0x00000000,"Tahoma" HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","MS Shell Dlg",0x00000000,"Tahoma" HKLM,"SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes","MS Shell Dlg 2",0x00000000,"Tahoma" diff --git a/win32ss/gdi/gdi32/objects/font.c b/win32ss/gdi/gdi32/objects/font.c index 2f187b0edbc..e20c0702fb9 100644 --- a/win32ss/gdi/gdi32/objects/font.c +++ b/win32ss/gdi/gdi32/objects/font.c @@ -218,6 +218,13 @@ IntFontFamilyCompareEx(const FONTFAMILYINFO *ffi1, int cmp = _wcsicmp(plf1->lfFaceName, plf2->lfFaceName); if (cmp) return cmp; + if (dwCompareFlags & IFFCX_CHARSET) + { + if (plf1->lfCharSet < plf2->lfCharSet) + return -1; + if (plf1->lfCharSet > plf2->lfCharSet) + return 1; + } if (dwCompareFlags & IFFCX_STYLE) { WeightDiff1 = labs(plf1->lfWeight - FW_NORMAL); @@ -231,13 +238,6 @@ IntFontFamilyCompareEx(const FONTFAMILYINFO *ffi1, if (plf1->lfItalic > plf2->lfItalic) return 1; } - if (dwCompareFlags & IFFCX_CHARSET) - { - if (plf1->lfCharSet < plf2->lfCharSet) - return -1; - if (plf1->lfCharSet > plf2->lfCharSet) - return 1; - } return 0; } @@ -267,7 +267,7 @@ IntFontFamilyListUnique(FONTFAMILYINFO *InfoList, INT nCount, first = InfoList; last = &InfoList[nCount]; - // std::unique(first, last, IntFontFamilyCompareEx); + /* std::unique(first, last, IntFontFamilyCompareEx); */ if (first == last) return 0; @@ -285,60 +285,70 @@ IntFontFamilyListUnique(FONTFAMILYINFO *InfoList, INT nCount, } static int FASTCALL -IntEnumFontFamilies(HDC Dc, LPLOGFONTW LogFont, PVOID EnumProc, LPARAM lParam, +IntEnumFontFamilies(HDC Dc, const LOGFONTW *LogFont, PVOID EnumProc, LPARAM lParam, DWORD dwFlags) { int FontFamilyCount; - int FontFamilySize; PFONTFAMILYINFO Info; int Ret = 1; int i; ENUMLOGFONTEXA EnumLogFontExA; NEWTEXTMETRICEXA NewTextMetricExA; LOGFONTW lfW; + LONG DataSize, InfoCount; - Info = RtlAllocateHeap(GetProcessHeap(), 0, - INITIAL_FAMILY_COUNT * sizeof(FONTFAMILYINFO)); - if (NULL == Info) + DataSize = INITIAL_FAMILY_COUNT * sizeof(FONTFAMILYINFO); + Info = RtlAllocateHeap(GetProcessHeap(), 0, DataSize); + if (Info == NULL) { return 1; } + /* Initialize the LOGFONT structure */ + ZeroMemory(&lfW, sizeof(lfW)); if (!LogFont) { lfW.lfCharSet = DEFAULT_CHARSET; - lfW.lfPitchAndFamily = 0; - lfW.lfFaceName[0] = 0; - LogFont = &lfW; + } + else + { + lfW.lfCharSet = LogFont->lfCharSet; + lfW.lfPitchAndFamily = LogFont->lfPitchAndFamily; + StringCbCopyW(lfW.lfFaceName, sizeof(lfW.lfFaceName), LogFont->lfFaceName); } - FontFamilyCount = NtGdiGetFontFamilyInfo(Dc, LogFont, Info, INITIAL_FAMILY_COUNT); + /* Retrieve the font information */ + InfoCount = INITIAL_FAMILY_COUNT; + FontFamilyCount = NtGdiGetFontFamilyInfo(Dc, &lfW, Info, &InfoCount); if (FontFamilyCount < 0) { RtlFreeHeap(GetProcessHeap(), 0, Info); return 1; } - if (INITIAL_FAMILY_COUNT < FontFamilyCount) + + /* Resize the buffer if the buffer is too small */ + if (INITIAL_FAMILY_COUNT < InfoCount) { - FontFamilySize = FontFamilyCount; RtlFreeHeap(GetProcessHeap(), 0, Info); - Info = RtlAllocateHeap(GetProcessHeap(), 0, - FontFamilyCount * sizeof(FONTFAMILYINFO)); - if (NULL == Info) + DataSize = InfoCount * sizeof(FONTFAMILYINFO); + Info = RtlAllocateHeap(GetProcessHeap(), 0, DataSize); + if (Info == NULL) { return 1; } - FontFamilyCount = NtGdiGetFontFamilyInfo(Dc, LogFont, Info, FontFamilySize); - if (FontFamilyCount < 0 || FontFamilySize < FontFamilyCount) + FontFamilyCount = NtGdiGetFontFamilyInfo(Dc, &lfW, Info, &InfoCount); + if (FontFamilyCount < 0 || FontFamilyCount < InfoCount) { RtlFreeHeap(GetProcessHeap(), 0, Info); return 1; } } + /* Sort and remove redundant information */ qsort(Info, FontFamilyCount, sizeof(*Info), IntFontFamilyCompare); - FontFamilyCount = IntFontFamilyListUnique(Info, FontFamilyCount, LogFont, dwFlags); + FontFamilyCount = IntFontFamilyListUnique(Info, FontFamilyCount, &lfW, dwFlags); + /* call the callback */ for (i = 0; i < FontFamilyCount; i++) { if (dwFlags & IEFF_UNICODE) @@ -1693,6 +1703,78 @@ CreateFontIndirectA( } +#if DBG +VOID DumpFamilyInfo(const FONTFAMILYINFO *Info, LONG Count) +{ + LONG i; + const LOGFONTW *plf; + + DPRINT1("---\n"); + DPRINT1("Count: %d\n", Count); + for (i = 0; i < Count; ++i) + { + plf = &Info[i].EnumLogFontEx.elfLogFont; + DPRINT1("%d: '%S',%u,'%S', %ld:%ld, %ld, %d, %d\n", i, + plf->lfFaceName, plf->lfCharSet, Info[i].EnumLogFontEx.elfFullName, + plf->lfHeight, plf->lfWidth, plf->lfWeight, plf->lfItalic, plf->lfPitchAndFamily); + } +} + +VOID DoFontSystemUnittest(VOID) +{ + LOGFONTW LogFont; + FONTFAMILYINFO Info[4]; + UNICODE_STRING Str1, Str2; + LONG ret, InfoCount; + + //DumpFontInfo(TRUE); + + /* L"" DEFAULT_CHARSET */ + RtlZeroMemory(&LogFont, sizeof(LogFont)); + LogFont.lfCharSet = DEFAULT_CHARSET; + InfoCount = RTL_NUMBER_OF(Info); + ret = NtGdiGetFontFamilyInfo(NULL, &LogFont, Info, &InfoCount); + DPRINT1("ret: %ld, InfoCount: %ld\n", ret, InfoCount); + DumpFamilyInfo(Info, ret); + ASSERT(ret == RTL_NUMBER_OF(Info)); + ASSERT(InfoCount > 32); + + /* L"Microsoft Sans Serif" ANSI_CHARSET */ + RtlZeroMemory(&LogFont, sizeof(LogFont)); + LogFont.lfCharSet = ANSI_CHARSET; + StringCbCopyW(LogFont.lfFaceName, sizeof(LogFont.lfFaceName), L"Microsoft Sans Serif"); + InfoCount = RTL_NUMBER_OF(Info); + ret = NtGdiGetFontFamilyInfo(NULL, &LogFont, Info, &InfoCount); + DPRINT1("ret: %ld, InfoCount: %ld\n", ret, InfoCount); + DumpFamilyInfo(Info, ret); + ASSERT(ret != -1); + ASSERT(InfoCount > 0); + ASSERT(InfoCount < 16); + + RtlInitUnicodeString(&Str1, Info[0].EnumLogFontEx.elfLogFont.lfFaceName); + RtlInitUnicodeString(&Str2, L"Microsoft Sans Serif"); + ret = RtlCompareUnicodeString(&Str1, &Str2, TRUE); + ASSERT(ret == 0); + + RtlInitUnicodeString(&Str1, Info[0].EnumLogFontEx.elfFullName); + RtlInitUnicodeString(&Str2, L"Tahoma"); + ret = RtlCompareUnicodeString(&Str1, &Str2, TRUE); + ASSERT(ret == 0); + + /* L"Non-Existent" DEFAULT_CHARSET */ + RtlZeroMemory(&LogFont, sizeof(LogFont)); + LogFont.lfCharSet = ANSI_CHARSET; + StringCbCopyW(LogFont.lfFaceName, sizeof(LogFont.lfFaceName), L"Non-Existent"); + InfoCount = RTL_NUMBER_OF(Info); + ret = NtGdiGetFontFamilyInfo(NULL, &LogFont, Info, &InfoCount); + DPRINT1("ret: %ld, InfoCount: %ld\n", ret, InfoCount); + DumpFamilyInfo(Info, ret); + ASSERT(ret == 0); + ASSERT(InfoCount == 0); +} +#endif + +/* EOF */ /* * @implemented */ @@ -1702,6 +1784,14 @@ CreateFontIndirectW( CONST LOGFONTW *lplf ) { +#if DBG + static BOOL bDidTest = FALSE; + if (!bDidTest) + { + DoFontSystemUnittest(); + bDidTest = TRUE; + } +#endif if (lplf) { ENUMLOGFONTEXDVW Logfont; diff --git a/win32ss/gdi/ntgdi/freetype.c b/win32ss/gdi/ntgdi/freetype.c index a5f93e92c8f..298c1fa12ca 100644 --- a/win32ss/gdi/ntgdi/freetype.c +++ b/win32ss/gdi/ntgdi/freetype.c @@ -2675,18 +2675,18 @@ FontFamilyFillInfo(PFONTFAMILYINFO Info, LPCWSTR FaceName, } static BOOLEAN FASTCALL -GetFontFamilyInfoForList(LPLOGFONTW LogFont, +GetFontFamilyInfoForList(const LOGFONTW *LogFont, PFONTFAMILYINFO Info, LPCWSTR NominalName, - DWORD *pCount, - DWORD MaxCount, + LONG *pCount, + LONG MaxCount, PLIST_ENTRY Head) { PLIST_ENTRY Entry; PFONT_ENTRY CurrentEntry; FONTGDI *FontGDI; FONTFAMILYINFO InfoEntry; - DWORD Count = *pCount; + LONG Count = *pCount; for (Entry = Head->Flink; Entry != Head; Entry = Entry->Flink) { @@ -2697,29 +2697,15 @@ GetFontFamilyInfoForList(LPLOGFONTW LogFont, if (LogFont->lfCharSet != DEFAULT_CHARSET && LogFont->lfCharSet != FontGDI->CharSet) { - continue; - } - - if (LogFont->lfFaceName[0] == UNICODE_NULL) - { - if (Count < MaxCount) - { - FontFamilyFillInfo(&Info[Count], NominalName, NULL, FontGDI); - } - Count++; - continue; + continue; /* charset mismatch */ } - FontFamilyFillInfo(&InfoEntry, NominalName, NULL, FontGDI); + /* get one info entry */ + FontFamilyFillInfo(&InfoEntry, NULL, NULL, FontGDI); - if (NominalName) - { - RtlStringCchCopyW(InfoEntry.EnumLogFontEx.elfLogFont.lfFaceName, - RTL_NUMBER_OF(InfoEntry.EnumLogFontEx.elfLogFont.lfFaceName), - NominalName); - } - else + if (LogFont->lfFaceName[0] != UNICODE_NULL) { + /* check name */ if (_wcsnicmp(LogFont->lfFaceName, InfoEntry.EnumLogFontEx.elfLogFont.lfFaceName, RTL_NUMBER_OF(LogFont->lfFaceName) - 1) != 0 && @@ -2731,7 +2717,16 @@ GetFontFamilyInfoForList(LPLOGFONTW LogFont, } } - if (Count < MaxCount) + if (NominalName) + { + /* store the nominal name */ + RtlStringCbCopyW(InfoEntry.EnumLogFontEx.elfLogFont.lfFaceName, + sizeof(InfoEntry.EnumLogFontEx.elfLogFont.lfFaceName), + NominalName); + } + + /* store one entry to Info */ + if (0 <= Count && Count < MaxCount) { RtlCopyMemory(&Info[Count], &InfoEntry, sizeof(InfoEntry)); } @@ -2744,10 +2739,10 @@ GetFontFamilyInfoForList(LPLOGFONTW LogFont, } static BOOLEAN FASTCALL -GetFontFamilyInfoForSubstitutes(LPLOGFONTW LogFont, +GetFontFamilyInfoForSubstitutes(const LOGFONTW *LogFont, PFONTFAMILYINFO Info, - DWORD *pCount, - DWORD MaxCount) + LONG *pCount, + LONG MaxCount) { PLIST_ENTRY pEntry, pHead = &g_FontSubstListHead; PFONTSUBST_ENTRY pCurrentEntry; @@ -2762,6 +2757,7 @@ GetFontFamilyInfoForSubstitutes(LPLOGFONTW LogFont, pFromW = &pCurrentEntry->FontNames[FONTSUBST_FROM]; if (LogFont->lfFaceName[0] != UNICODE_NULL) { + /* check name */ if (_wcsicmp(LogFont->lfFaceName, pFromW->Buffer) != 0) continue; /* mismatch */ } @@ -2771,18 +2767,22 @@ GetFontFamilyInfoForSubstitutes(LPLOGFONTW LogFont, pCurrentEntry->CharSets[FONTSUBST_FROM] == pCurrentEntry->CharSets[FONTSUBST_TO]) { + /* identical mapping */ continue; } + /* substitute and get the real name */ IntUnicodeStringToBuffer(lf.lfFaceName, sizeof(lf.lfFaceName), pFromW); SubstituteFontRecurse(&lf); if (LogFont->lfCharSet != DEFAULT_CHARSET && LogFont->lfCharSet != lf.lfCharSet) continue; + /* search in global fonts */ IntLockGlobalFonts(); GetFontFamilyInfoForList(&lf, Info, pFromW->Buffer, pCount, MaxCount, &g_FontListHead); IntUnLockGlobalFonts(); + /* search in private fonts */ IntLockProcessPrivateFonts(Win32Process); GetFontFamilyInfoForList(&lf, Info, pFromW->Buffer, pCount, MaxCount, &Win32Process->PrivateFontListHead); @@ -5407,70 +5407,126 @@ ftGdiGetKerningPairs( PFONTGDI Font, // Functions needing sorting. // /////////////////////////////////////////////////////////////////////////// -int APIENTRY + +LONG FASTCALL +IntGetFontFamilyInfo(HDC Dc, + const LOGFONTW *SafeLogFont, + PFONTFAMILYINFO SafeInfo, + LONG InfoCount) +{ + LONG AvailCount = 0; + PPROCESSINFO Win32Process; + + /* Enumerate font families in the global list */ + IntLockGlobalFonts(); + if (!GetFontFamilyInfoForList(SafeLogFont, SafeInfo, NULL, &AvailCount, + InfoCount, &g_FontListHead)) + { + IntUnLockGlobalFonts(); + return -1; + } + IntUnLockGlobalFonts(); + + /* Enumerate font families in the process local list */ + Win32Process = PsGetCurrentProcessWin32Process(); + IntLockProcessPrivateFonts(Win32Process); + if (!GetFontFamilyInfoForList(SafeLogFont, SafeInfo, NULL, &AvailCount, InfoCount, + &Win32Process->PrivateFontListHead)) + { + IntUnLockProcessPrivateFonts(Win32Process); + return -1; + } + IntUnLockProcessPrivateFonts(Win32Process); + + /* Enumerate font families in the registry */ + if (!GetFontFamilyInfoForSubstitutes(SafeLogFont, SafeInfo, &AvailCount, InfoCount)) + { + return -1; + } + + return AvailCount; +} + +LONG NTAPI NtGdiGetFontFamilyInfo(HDC Dc, - LPLOGFONTW UnsafeLogFont, + const LOGFONTW *UnsafeLogFont, PFONTFAMILYINFO UnsafeInfo, - DWORD Size) + LPLONG UnsafeInfoCount) { NTSTATUS Status; LOGFONTW LogFont; PFONTFAMILYINFO Info; - DWORD Count; - PPROCESSINFO Win32Process; + LONG GotCount, AvailCount, DataSize, SafeInfoCount; - /* Make a safe copy */ - Status = MmCopyFromCaller(&LogFont, UnsafeLogFont, sizeof(LOGFONTW)); - if (! NT_SUCCESS(Status)) + if (UnsafeLogFont == NULL || UnsafeInfo == NULL || UnsafeInfoCount == NULL) { EngSetLastError(ERROR_INVALID_PARAMETER); return -1; } - /* Allocate space for a safe copy */ - Info = ExAllocatePoolWithTag(PagedPool, Size * sizeof(FONTFAMILYINFO), GDITAG_TEXT); - if (NULL == Info) + Status = MmCopyFromCaller(&SafeInfoCount, UnsafeInfoCount, sizeof(SafeInfoCount)); + if (!NT_SUCCESS(Status)) { - EngSetLastError(ERROR_NOT_ENOUGH_MEMORY); + EngSetLastError(ERROR_INVALID_PARAMETER); return -1; } - - /* Enumerate font families in the global list */ - IntLockGlobalFonts(); - Count = 0; - if (! GetFontFamilyInfoForList(&LogFont, Info, NULL, &Count, Size, &g_FontListHead) ) + GotCount = 0; + Status = MmCopyToCaller(UnsafeInfoCount, &GotCount, sizeof(*UnsafeInfoCount)); + if (!NT_SUCCESS(Status)) { - IntUnLockGlobalFonts(); - ExFreePoolWithTag(Info, GDITAG_TEXT); + EngSetLastError(ERROR_INVALID_PARAMETER); return -1; } - IntUnLockGlobalFonts(); - - /* Enumerate font families in the process local list */ - Win32Process = PsGetCurrentProcessWin32Process(); - IntLockProcessPrivateFonts(Win32Process); - if (! GetFontFamilyInfoForList(&LogFont, Info, NULL, &Count, Size, - &Win32Process->PrivateFontListHead)) + Status = MmCopyFromCaller(&LogFont, UnsafeLogFont, sizeof(LOGFONTW)); + if (!NT_SUCCESS(Status)) { - IntUnLockProcessPrivateFonts(Win32Process); - ExFreePoolWithTag(Info, GDITAG_TEXT); + EngSetLastError(ERROR_INVALID_PARAMETER); + return -1; + } + if (SafeInfoCount <= 0) + { + EngSetLastError(ERROR_INVALID_PARAMETER); return -1; } - IntUnLockProcessPrivateFonts(Win32Process); - /* Enumerate font families in the registry */ - if (! GetFontFamilyInfoForSubstitutes(&LogFont, Info, &Count, Size)) + /* Allocate space for a safe copy */ + DataSize = SafeInfoCount * sizeof(FONTFAMILYINFO); + if (DataSize <= 0) + { + EngSetLastError(ERROR_INVALID_PARAMETER); + return -1; + } + Info = ExAllocatePoolWithTag(PagedPool, DataSize, GDITAG_TEXT); + if (Info == NULL) { - ExFreePoolWithTag(Info, GDITAG_TEXT); + EngSetLastError(ERROR_NOT_ENOUGH_MEMORY); return -1; } + /* Retrieve the information */ + AvailCount = IntGetFontFamilyInfo(Dc, &LogFont, Info, SafeInfoCount); + GotCount = min(AvailCount, SafeInfoCount); + SafeInfoCount = AvailCount; + /* Return data to caller */ - if (0 != Count) + if (GotCount > 0) { - Status = MmCopyToCaller(UnsafeInfo, Info, - (Count < Size ? Count : Size) * sizeof(FONTFAMILYINFO)); - if (! NT_SUCCESS(Status)) + DataSize = GotCount * sizeof(FONTFAMILYINFO); + if (DataSize <= 0) + { + ExFreePoolWithTag(Info, GDITAG_TEXT); + EngSetLastError(ERROR_INVALID_PARAMETER); + return -1; + } + Status = MmCopyToCaller(UnsafeInfo, Info, DataSize); + if (!NT_SUCCESS(Status)) + { + ExFreePoolWithTag(Info, GDITAG_TEXT); + EngSetLastError(ERROR_INVALID_PARAMETER); + return -1; + } + Status = MmCopyToCaller(UnsafeInfoCount, &SafeInfoCount, sizeof(*UnsafeInfoCount)); + if (!NT_SUCCESS(Status)) { ExFreePoolWithTag(Info, GDITAG_TEXT); EngSetLastError(ERROR_INVALID_PARAMETER); @@ -5480,7 +5536,7 @@ NtGdiGetFontFamilyInfo(HDC Dc, ExFreePoolWithTag(Info, GDITAG_TEXT); - return Count; + return GotCount; } FORCEINLINE @@ -6618,7 +6674,7 @@ NtGdiGetCharABCWidthsW( if(Safepwch) ExFreePoolWithTag(Safepwch , GDITAG_TEXT); - if (! NT_SUCCESS(Status)) + if (!NT_SUCCESS(Status)) { SetLastNtError(Status); return FALSE; diff --git a/win32ss/include/ntgdibad.h b/win32ss/include/ntgdibad.h index ba8588f2f96..58d644e68e9 100644 --- a/win32ss/include/ntgdibad.h +++ b/win32ss/include/ntgdibad.h @@ -50,14 +50,13 @@ typedef struct tagFONTFAMILYINFO } FONTFAMILYINFO, *PFONTFAMILYINFO; /* Should be using NtGdiEnumFontChunk */ -INT +LONG NTAPI NtGdiGetFontFamilyInfo( HDC Dc, - LPLOGFONTW LogFont, + const LOGFONTW *LogFont, PFONTFAMILYINFO Info, - DWORD Size -); + LPLONG UnsafeInfoCount); /* Use NtGdiGetDCPoint with GdiGetViewPortExt */ BOOL APIENTRY NtGdiGetViewportExtEx(HDC hDC, LPSIZE viewportExt);
5 years, 8 months
1
0
0
0
[reactos] 01/01: [NtUser] Fix Theme Non Client Painting.
by jimtabor
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=cfdf36e44250048b3377f…
commit cfdf36e44250048b3377f333c93bc311e424ac3d Author: jimtabor <james.tabor(a)reactos.org> AuthorDate: Wed Apr 10 20:52:01 2019 -0500 Commit: jimtabor <james.tabor(a)reactos.org> CommitDate: Wed Apr 10 20:52:01 2019 -0500 [NtUser] Fix Theme Non Client Painting. See CORE-7166 & CORE-15934. --- win32ss/user/ntuser/painting.h | 1 + win32ss/user/ntuser/winpos.c | 78 +++++++++++++++--------------------------- 2 files changed, 28 insertions(+), 51 deletions(-) diff --git a/win32ss/user/ntuser/painting.h b/win32ss/user/ntuser/painting.h index e885028d303..8ab6a66c1ae 100644 --- a/win32ss/user/ntuser/painting.h +++ b/win32ss/user/ntuser/painting.h @@ -41,3 +41,4 @@ BOOL UserDrawCaption(PWND,HDC,RECTL*,HFONT,HICON,const PUNICODE_STRING,UINT); VOID FASTCALL UpdateThreadWindows(PWND,PTHREADINFO,HRGN); VOID FASTCALL UserSyncAndPaintWindows(PWND pWnd, ULONG Flags); VOID FASTCALL IntPaintWindow(PWND); +VOID FASTCALL IntSendNCPaint(PWND,HRGN); diff --git a/win32ss/user/ntuser/winpos.c b/win32ss/user/ntuser/winpos.c index d7f5ad6a639..6c54f3c2662 100644 --- a/win32ss/user/ntuser/winpos.c +++ b/win32ss/user/ntuser/winpos.c @@ -1053,16 +1053,8 @@ static BOOL IntValidateParent(PWND Child, PREGION ValidateRgn) { - PWND ParentWnd = Child; + PWND ParentWnd = Child->spwndParent; - if (ParentWnd->style & WS_CHILD) - { - do - ParentWnd = ParentWnd->spwndParent; - while (ParentWnd->style & WS_CHILD); - } - - ParentWnd = Child->spwndParent; while (ParentWnd) { if (ParentWnd->style & WS_CLIPCHILDREN) @@ -1898,8 +1890,7 @@ co_WinPosSetWindowPos( VisAfter != NULL && !(WinPos.flags & SWP_NOCOPYBITS) && ((WinPos.flags & SWP_NOSIZE) || !(WvrFlags & WVR_REDRAW)) && - !(Window->ExStyle & WS_EX_TRANSPARENT) ) || - ( !PosChanged && (WinPos.flags & SWP_FRAMECHANGED) && VisBefore) ) + !(Window->ExStyle & WS_EX_TRANSPARENT) ) ) { /* @@ -1987,43 +1978,7 @@ co_WinPosSetWindowPos( CopyRgn = NULL; } - if ( !PosChanged && (WinPos.flags & SWP_FRAMECHANGED) && VisBefore ) - { - PWND pwnd = Window; - PWND Parent = pwnd->spwndParent; - - TRACE("SWP_FRAMECHANGED no chg\n"); - - if ( pwnd->style & WS_CHILD ) // Fix ProgMan menu bar drawing. - { - TRACE("SWP_FRAMECHANGED win child %p Parent %p\n",pwnd,Parent); - pwnd = Parent ? Parent : pwnd; - } - - if ( !(pwnd->style & WS_CHILD) ) - { - HDC hdc; - HRGN DcRgn = NtGdiCreateRectRgn(0, 0, 0, 0); - PREGION DcRgnObj = REGION_LockRgn(DcRgn); - - TRACE("SWP_FRAMECHANGED Draw\n"); - - IntGdiCombineRgn(DcRgnObj, VisBefore, NULL, RGN_COPY); - REGION_UnlockRgn(DcRgnObj); - - hdc = UserGetDCEx( pwnd, - DcRgn, - DCX_WINDOW|DCX_CACHE|DCX_INTERSECTRGN|DCX_CLIPSIBLINGS|DCX_KEEPCLIPRGN); // DCX_WINDOW, see note above.... - - NC_DoNCPaint(pwnd, hdc, -1); // Force full redraw of nonclient area. - - UserReleaseDC(pwnd, hdc, FALSE); - IntValidateParent(pwnd, DcRgnObj); - GreDeleteObject(DcRgn); - } - } - - /* We need to redraw what wasn't visible before */ + /* We need to redraw what wasn't visible before or force a redraw */ if (VisAfter != NULL) { PREGION DirtyRgn = IntSysCreateRectpRgn(0, 0, 0, 0); @@ -2038,7 +1993,7 @@ co_WinPosSetWindowPos( RgnType = IntGdiCombineRgn(DirtyRgn, VisAfter, 0, RGN_COPY); } - if (RgnType != ERROR && RgnType != NULLREGION) + if (RgnType != ERROR && RgnType != NULLREGION) // Regions moved. { /* old code NtGdiOffsetRgn(DirtyRgn, Window->rcWindow.left, Window->rcWindow.top); @@ -2063,6 +2018,27 @@ co_WinPosSetWindowPos( IntInvalidateWindows( Window, DirtyRgn, RDW_ERASE | RDW_FRAME | RDW_INVALIDATE | RDW_ALLCHILDREN); } } + else if ( RgnType != ERROR && RgnType == NULLREGION ) // Must be the same. See CORE-7166 & CORE-15934 + { + if ( !PosChanged && + !(WinPos.flags & SWP_DEFERERASE) && + (WinPos.flags & SWP_FRAMECHANGED) ) + { + PWND pwnd = Window; + PWND Parent = Window->spwndParent; + + if ( pwnd->style & WS_CHILD ) // Fix ProgMan menu bar drawing. + { + TRACE("SWP_FRAMECHANGED win child %p Parent %p\n",pwnd,Parent); + pwnd = Parent ? Parent : pwnd; + } + + if ( !(pwnd->style & WS_CHILD) ) + { + IntSendNCPaint(pwnd, HRGN_WINDOW); // Paint the whole frame. + } + } + } REGION_Delete(DirtyRgn); } } @@ -2073,7 +2049,7 @@ co_WinPosSetWindowPos( } /* Expose what was covered before but not covered anymore */ - if (VisBefore != NULL) + if ( VisBefore != NULL ) { PREGION ExposedRgn = IntSysCreateRectpRgn(0, 0, 0, 0); if (ExposedRgn) @@ -2083,7 +2059,7 @@ co_WinPosSetWindowPos( OldWindowRect.left - NewWindowRect.left, OldWindowRect.top - NewWindowRect.top); - if (VisAfter != NULL) + if ( VisAfter != NULL ) RgnType = IntGdiCombineRgn(ExposedRgn, ExposedRgn, VisAfter, RGN_DIFF); if (RgnType != ERROR && RgnType != NULLREGION)
5 years, 8 months
1
0
0
0
[reactos] 01/01: [DDraw] Fix DxDiag tests.
by jimtabor
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=84d518b19089c04f0423a…
commit 84d518b19089c04f0423a7e99dda2728fc7670a7 Author: jimtabor <james.tabor(a)reactos.org> AuthorDate: Wed Apr 10 19:24:50 2019 -0500 Commit: jimtabor <james.tabor(a)reactos.org> CommitDate: Wed Apr 10 19:24:50 2019 -0500 [DDraw] Fix DxDiag tests. After the DC work is done while before releasing the DC flush the GDI batch. See CORE-15905. Someone may need to notify wine about this change. --- dll/directx/wine/ddraw/surface.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/dll/directx/wine/ddraw/surface.c b/dll/directx/wine/ddraw/surface.c index e188396eb3f..df8d0380093 100644 --- a/dll/directx/wine/ddraw/surface.c +++ b/dll/directx/wine/ddraw/surface.c @@ -2346,7 +2346,9 @@ static HRESULT WINAPI ddraw_surface7_ReleaseDC(IDirectDrawSurface7 *iface, HDC h HRESULT hr; TRACE("iface %p, dc %p.\n", iface, hdc); - +#ifdef __REACTOS__ + GdiFlush(); +#endif wined3d_mutex_lock(); if (!surface->dc) {
5 years, 8 months
1
0
0
0
[reactos] 01/01: [NET][MC] Move remaining generic strings from net.exe to netmsg.dll.
by Eric Kohl
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=29bf209767e0bac0695df…
commit 29bf209767e0bac0695dfb1769e72f2082d01f83 Author: Eric Kohl <eric.kohl(a)reactos.org> AuthorDate: Tue Apr 9 21:44:03 2019 +0200 Commit: Eric Kohl <eric.kohl(a)reactos.org> CommitDate: Tue Apr 9 21:44:03 2019 +0200 [NET][MC] Move remaining generic strings from net.exe to netmsg.dll. Translators, please check the translations! --- base/applications/network/net/cmdAccounts.c | 20 ++++++++------ base/applications/network/net/cmdComputer.c | 9 ++++-- base/applications/network/net/cmdConfig.c | 21 ++++++++------ base/applications/network/net/cmdContinue.c | 6 ++-- base/applications/network/net/cmdGroup.c | 8 ++++-- base/applications/network/net/cmdHelp.c | 6 ++-- base/applications/network/net/cmdHelpMsg.c | 9 ++++-- base/applications/network/net/cmdLocalGroup.c | 8 ++++-- base/applications/network/net/cmdPause.c | 6 ++-- base/applications/network/net/cmdStart.c | 3 +- base/applications/network/net/cmdStatistics.c | 6 ++-- base/applications/network/net/cmdStop.c | 6 ++-- base/applications/network/net/cmdUse.c | 16 ++++++----- base/applications/network/net/cmdUser.c | 17 ++++++------ base/applications/network/net/lang/en-US.rc | 7 ----- base/applications/network/net/lang/es-ES.rc | 7 ----- base/applications/network/net/lang/pl-PL.rc | 7 ----- base/applications/network/net/lang/ro-RO.rc | 7 ----- base/applications/network/net/lang/ru-RU.rc | 7 ----- base/applications/network/net/lang/tr-TR.rc | 7 ----- base/applications/network/net/lang/zh-CN.rc | 7 ----- base/applications/network/net/lang/zh-TW.rc | 7 ----- base/applications/network/net/main.c | 3 +- base/applications/network/net/resource.h | 5 ---- sdk/include/reactos/mc/netmsgmsg.mc | 40 +++++++++++++-------------- 25 files changed, 108 insertions(+), 137 deletions(-) diff --git a/base/applications/network/net/cmdAccounts.c b/base/applications/network/net/cmdAccounts.c index db1f1cd98be..55586c4962f 100644 --- a/base/applications/network/net/cmdAccounts.c +++ b/base/applications/network/net/cmdAccounts.c @@ -36,7 +36,8 @@ cmdAccounts( if (_wcsicmp(argv[i], L"help") == 0) { /* Print short syntax help */ - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_ACCOUNTS_SYNTAX); return 0; } @@ -44,7 +45,8 @@ cmdAccounts( if (_wcsicmp(argv[i], L"/help") == 0) { /* Print full help text*/ - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_ACCOUNTS_SYNTAX); PrintNetMessage(MSG_ACCOUNTS_HELP); return 0; @@ -52,7 +54,7 @@ cmdAccounts( if (_wcsicmp(argv[i], L"/domain") == 0) { - ConResPrintf(StdErr, IDS_ERROR_OPTION_NOT_SUPPORTED, L"/DOMAIN"); + ConPuts(StdErr, L"The /DOMAIN option is not supported yet.\n"); #if 0 Domain = TRUE; #endif @@ -68,7 +70,7 @@ cmdAccounts( if (_wcsnicmp(argv[i], L"/forcelogoff:", 13) == 0) { p = &argv[i][13]; - if (wcsicmp(p, L"no")) + if (wcsicmp(p, L"no") == 0) { Info0->usrmod0_force_logoff = TIMEQ_FOREVER; Modified = TRUE; @@ -78,7 +80,7 @@ cmdAccounts( value = wcstoul(p, &endptr, 10); if (*endptr != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/FORCELOGOFF"); + PrintMessageStringV(3952, L"/FORCELOGOFF"); result = 1; goto done; } @@ -93,7 +95,7 @@ cmdAccounts( value = wcstoul(p, &endptr, 10); if (*endptr != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/MINPWLEN"); + PrintMessageStringV(3952, L"/MINPWLEN"); result = 1; goto done; } @@ -115,7 +117,7 @@ cmdAccounts( value = wcstoul(p, &endptr, 10); if (*endptr != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/MAXPWLEN"); + PrintMessageStringV(3952, L"/MAXPWLEN"); result = 1; goto done; } @@ -130,7 +132,7 @@ cmdAccounts( value = wcstoul(p, &endptr, 10); if (*endptr != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/MINPWAGE"); + PrintMessageStringV(3952, L"/MINPWAGE"); result = 1; goto done; } @@ -144,7 +146,7 @@ cmdAccounts( value = wcstoul(p, &endptr, 10); if (*endptr != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/UNIQUEPW"); + PrintMessageStringV(3952, L"/UNIQUEPW"); result = 1; goto done; } diff --git a/base/applications/network/net/cmdComputer.c b/base/applications/network/net/cmdComputer.c index f6ddf3c0377..5ca22a40dc0 100644 --- a/base/applications/network/net/cmdComputer.c +++ b/base/applications/network/net/cmdComputer.c @@ -49,7 +49,8 @@ cmdComputer( if (_wcsicmp(argv[i], L"help") == 0) { /* Print short syntax help */ - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_COMPUTER_SYNTAX); return 0; } @@ -57,7 +58,8 @@ cmdComputer( if (_wcsicmp(argv[i], L"/help") == 0) { /* Print full help text*/ - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_COMPUTER_SYNTAX); PrintNetMessage(MSG_COMPUTER_HELP); return 0; @@ -84,7 +86,8 @@ cmdComputer( (bAdd == FALSE && bDelete == FALSE) || (bAdd == TRUE && bDelete == TRUE)) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_COMPUTER_SYNTAX); return 1; } diff --git a/base/applications/network/net/cmdConfig.c b/base/applications/network/net/cmdConfig.c index c26281718d5..59245279b3f 100644 --- a/base/applications/network/net/cmdConfig.c +++ b/base/applications/network/net/cmdConfig.c @@ -196,12 +196,14 @@ cmdConfig( /* Print short syntax help */ if (bServer == TRUE) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_CONFIG_SERVER_SYNTAX); } else { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_CONFIG_SYNTAX); } return 0; @@ -212,13 +214,15 @@ cmdConfig( /* Print full help text*/ if (bServer == TRUE) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_CONFIG_SERVER_SYNTAX); PrintNetMessage(MSG_CONFIG_SERVER_HELP); } else { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_CONFIG_SYNTAX); PrintNetMessage(MSG_CONFIG_HELP); } @@ -243,14 +247,14 @@ cmdConfig( lValue = wcstol(p, &endptr, 10); if (*endptr != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/AUTODISCONNECT"); + PrintMessageStringV(3952, L"/AUTODISCONNECT"); result = 1; goto done; } if (lValue < -1 || lValue > 65535) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/AUTODISCONNECT"); + PrintMessageStringV(3952, L"/AUTODISCONNECT"); result = 1; goto done; } @@ -268,7 +272,7 @@ cmdConfig( p = &argv[i][8]; if (_wcsicmp(p, L"yes") != 0 && _wcsicmp(p, L"no") != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/HIDDEN"); + PrintMessageStringV(3952, L"/HIDDEN"); result = 1; goto done; } @@ -278,7 +282,8 @@ cmdConfig( } else { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_CONFIG_SERVER_SYNTAX); result = 1; goto done; diff --git a/base/applications/network/net/cmdContinue.c b/base/applications/network/net/cmdContinue.c index 8b4716a411b..9721a6c1e0a 100644 --- a/base/applications/network/net/cmdContinue.c +++ b/base/applications/network/net/cmdContinue.c @@ -19,7 +19,8 @@ INT cmdContinue(INT argc, WCHAR **argv) if (argc != 3) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_CONTINUE_SYNTAX); return 1; } @@ -28,7 +29,8 @@ INT cmdContinue(INT argc, WCHAR **argv) { if (_wcsicmp(argv[i], L"/help") == 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_CONTINUE_SYNTAX); PrintNetMessage(MSG_CONTINUE_HELP); return 1; diff --git a/base/applications/network/net/cmdGroup.c b/base/applications/network/net/cmdGroup.c index b5bf316f229..087665d7d59 100644 --- a/base/applications/network/net/cmdGroup.c +++ b/base/applications/network/net/cmdGroup.c @@ -222,7 +222,8 @@ cmdGroup( { if (_wcsicmp(argv[i], L"/help") == 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_GROUP_SYNTAX); PrintNetMessage(MSG_GROUP_HELP); return 0; @@ -241,7 +242,7 @@ cmdGroup( } else if (_wcsicmp(argv[i], L"/domain") == 0) { - ConResPrintf(StdErr, IDS_ERROR_OPTION_NOT_SUPPORTED, L"/DOMAIN"); + ConPuts(StdErr, L"The /DOMAIN option is not supported yet.\n"); #if 0 bDomain = TRUE; #endif @@ -350,7 +351,8 @@ done: if (result != 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_GROUP_SYNTAX); } diff --git a/base/applications/network/net/cmdHelp.c b/base/applications/network/net/cmdHelp.c index 449a2a00ef8..dc668db1b59 100644 --- a/base/applications/network/net/cmdHelp.c +++ b/base/applications/network/net/cmdHelp.c @@ -11,7 +11,8 @@ INT cmdHelp(INT argc, WCHAR **argv) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); if (argc != 3) { @@ -199,7 +200,8 @@ INT cmdHelp(INT argc, WCHAR **argv) INT cmdSyntax(INT argc, WCHAR **argv) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_SYNTAX_HELP); return 0; } diff --git a/base/applications/network/net/cmdHelpMsg.c b/base/applications/network/net/cmdHelpMsg.c index c2250ef9efc..85349c14221 100644 --- a/base/applications/network/net/cmdHelpMsg.c +++ b/base/applications/network/net/cmdHelpMsg.c @@ -23,7 +23,8 @@ INT cmdHelpMsg(INT argc, WCHAR **argv) if (argc < 3) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_HELPMSG_SYNTAX); return 1; } @@ -32,7 +33,8 @@ INT cmdHelpMsg(INT argc, WCHAR **argv) { if (_wcsicmp(argv[i], L"/help") == 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_HELPMSG_SYNTAX); PrintNetMessage(MSG_HELPMSG_HELP); return 1; @@ -42,7 +44,8 @@ INT cmdHelpMsg(INT argc, WCHAR **argv) errNum = wcstol(argv[2], &endptr, 10); if (*endptr != 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_HELPMSG_SYNTAX); return 1; } diff --git a/base/applications/network/net/cmdLocalGroup.c b/base/applications/network/net/cmdLocalGroup.c index bd6647c63ad..53f813d065f 100644 --- a/base/applications/network/net/cmdLocalGroup.c +++ b/base/applications/network/net/cmdLocalGroup.c @@ -242,7 +242,8 @@ cmdLocalGroup( { if (_wcsicmp(argv[i], L"/help") == 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_LOCALGROUP_SYNTAX); PrintNetMessage(MSG_LOCALGROUP_HELP); return 0; @@ -261,7 +262,7 @@ cmdLocalGroup( } else if (_wcsicmp(argv[i], L"/domain") == 0) { - ConResPrintf(StdErr, IDS_ERROR_OPTION_NOT_SUPPORTED, L"/DOMAIN"); + ConPuts(StdErr, L"The /DOMAIN option is not supported yet.\n"); #if 0 bDomain = TRUE; #endif @@ -380,7 +381,8 @@ done: if (result != 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_LOCALGROUP_SYNTAX); } diff --git a/base/applications/network/net/cmdPause.c b/base/applications/network/net/cmdPause.c index afd583595cd..8f3ee8273ba 100644 --- a/base/applications/network/net/cmdPause.c +++ b/base/applications/network/net/cmdPause.c @@ -19,7 +19,8 @@ INT cmdPause(INT argc, WCHAR **argv) if (argc != 3) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_PAUSE_SYNTAX); return 1; } @@ -28,7 +29,8 @@ INT cmdPause(INT argc, WCHAR **argv) { if (_wcsicmp(argv[i], L"/help") == 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_PAUSE_SYNTAX); PrintNetMessage(MSG_PAUSE_HELP); return 1; diff --git a/base/applications/network/net/cmdStart.c b/base/applications/network/net/cmdStart.c index 082fa79d1dc..50029b129d9 100644 --- a/base/applications/network/net/cmdStart.c +++ b/base/applications/network/net/cmdStart.c @@ -173,7 +173,8 @@ cmdStart(INT argc, WCHAR **argv) { if (_wcsicmp(argv[i], L"/help") == 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_START_SYNTAX); PrintNetMessage(MSG_START_HELP); return 1; diff --git a/base/applications/network/net/cmdStatistics.c b/base/applications/network/net/cmdStatistics.c index 8d4f68db865..db51641c6c1 100644 --- a/base/applications/network/net/cmdStatistics.c +++ b/base/applications/network/net/cmdStatistics.c @@ -272,7 +272,8 @@ cmdStatistics( if (_wcsicmp(argv[i], L"help") == 0) { /* Print short syntax help */ - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_STATISTICS_SYNTAX); return 0; } @@ -280,7 +281,8 @@ cmdStatistics( if (_wcsicmp(argv[i], L"/help") == 0) { /* Print full help text*/ - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_STATISTICS_SYNTAX); PrintNetMessage(MSG_STATISTICS_HELP); return 0; diff --git a/base/applications/network/net/cmdStop.c b/base/applications/network/net/cmdStop.c index dbb0cdd023b..b23ce7cd398 100644 --- a/base/applications/network/net/cmdStop.c +++ b/base/applications/network/net/cmdStop.c @@ -20,7 +20,8 @@ INT cmdStop(INT argc, WCHAR **argv) if (argc != 3) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_STOP_SYNTAX); return 1; } @@ -29,7 +30,8 @@ INT cmdStop(INT argc, WCHAR **argv) { if (_wcsicmp(argv[i], L"/help") == 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_STOP_SYNTAX); PrintNetMessage(MSG_STOP_HELP); return 1; diff --git a/base/applications/network/net/cmdUse.c b/base/applications/network/net/cmdUse.c index 1c1c479eff6..71c03803c7a 100644 --- a/base/applications/network/net/cmdUse.c +++ b/base/applications/network/net/cmdUse.c @@ -67,9 +67,11 @@ static VOID PrintError(DWORD Status) { + WCHAR szStatusBuffer[16]; LPWSTR Buffer; - ConResPrintf(StdErr, IDS_ERROR_SYSTEM_ERROR, Status); + swprintf(szStatusBuffer, L"%lu", Status); + PrintMessageStringV(3502, szStatusBuffer); if (FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS, NULL, Status, 0, (LPWSTR)&Buffer, 0, NULL)) { @@ -119,7 +121,7 @@ cmdUse( { if (!ValidateDeviceName(argv[2])) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"DeviceName"); + PrintMessageStringV(3952, L"DeviceName"); return 1; } @@ -142,7 +144,7 @@ cmdUse( if ((argv[2][0] != '*' && argv[2][1] != 0) && !ValidateDeviceName(argv[2])) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"DeviceName"); + PrintMessageStringV(3952, L"DeviceName"); return 1; } } @@ -156,7 +158,7 @@ cmdUse( { if (!ValidateDeviceName(argv[Delete]) || argv[Delete][0] == L'*') { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"DeviceName"); + PrintMessageStringV(3952, L"DeviceName"); return 1; } @@ -176,13 +178,13 @@ cmdUse( Len = wcslen(argv[3]); if (Len < 4) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"Name"); + PrintMessageStringV(3952, L"Name"); return 1; } if (argv[3][0] != L'\\' || argv[3][1] != L'\\') { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"Name"); + PrintMessageStringV(3952, L"Name"); return 1; } @@ -213,7 +215,7 @@ cmdUse( else { HeapFree(GetProcessHeap(), 0, Cpy); - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"Persistent"); + PrintMessageStringV(3952, L"Persistent"); return 1; } } diff --git a/base/applications/network/net/cmdUser.c b/base/applications/network/net/cmdUser.c index e64094b011c..50cdbf7aee7 100644 --- a/base/applications/network/net/cmdUser.c +++ b/base/applications/network/net/cmdUser.c @@ -736,7 +736,7 @@ cmdUser( } else if (_wcsicmp(argv[j], L"/domain") == 0) { - ConResPrintf(StdErr, IDS_ERROR_OPTION_NOT_SUPPORTED, L"/DOMAIN"); + ConPuts(StdErr, L"The /DOMAIN option is not supported yet.\n"); #if 0 bDomain = TRUE; #endif @@ -818,7 +818,7 @@ cmdUser( } else { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/ACTIVE"); + PrintMessageStringV(3952, L"/ACTIVE"); result = 1; goto done; } @@ -833,7 +833,7 @@ cmdUser( value = wcstoul(p, &endptr, 10); if (*endptr != 0) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/COUNTRYCODE"); + PrintMessageStringV(3952, L"/COUNTRYCODE"); result = 1; goto done; } @@ -851,7 +851,7 @@ cmdUser( } else if (!ParseDate(p, &pUserInfo->usri4_acct_expires)) { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/EXPIRES"); + PrintMessageStringV(3952, L"/EXPIRES"); result = 1; goto done; } @@ -877,7 +877,7 @@ cmdUser( } else { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/PASSWORDCHG"); + PrintMessageStringV(3952, L"/PASSWORDCHG"); result = 1; goto done; } @@ -895,7 +895,7 @@ cmdUser( } else { - ConResPrintf(StdErr, IDS_ERROR_INVALID_OPTION_VALUE, L"/PASSWORDREQ"); + PrintMessageStringV(3952, L"/PASSWORDREQ"); result = 1; goto done; } @@ -911,7 +911,7 @@ cmdUser( else if (_wcsnicmp(argv[j], L"/times:", 7) == 0) { /* FIXME */ - ConResPrintf(StdErr, IDS_ERROR_OPTION_NOT_SUPPORTED, L"/TIMES"); + ConPuts(StdErr, L"The /TIMES option is not supported yet.\n"); } else if (_wcsnicmp(argv[j], L"/usercomment:", 13) == 0) { @@ -987,7 +987,8 @@ done: if (result != 0) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_USER_SYNTAX); } diff --git a/base/applications/network/net/lang/en-US.rc b/base/applications/network/net/lang/en-US.rc index 2b22b11b1af..11b0a59e8c6 100644 --- a/base/applications/network/net/lang/en-US.rc +++ b/base/applications/network/net/lang/en-US.rc @@ -10,11 +10,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "Workstation" IDS_USE_NOW_CONNECTED "%s is now connected to %s\n" - - IDS_GENERIC_SYNTAX "The syntax of this command is:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "The %s option is not supported yet.\n" - IDS_ERROR_INVALID_OPTION_VALUE "You entered an invalid value for the %s option.\n" - IDS_ERROR_SYSTEM_ERROR "The system error %d happened.\n" - IDS_ERROR_NO_ERROR "The command completed successfully.\n\n" END diff --git a/base/applications/network/net/lang/es-ES.rc b/base/applications/network/net/lang/es-ES.rc index 6daeda790f2..1e6c9cb4c55 100644 --- a/base/applications/network/net/lang/es-ES.rc +++ b/base/applications/network/net/lang/es-ES.rc @@ -13,11 +13,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "Estación de trabajo" IDS_USE_NOW_CONNECTED "%s is now connected to %s\n" - - IDS_GENERIC_SYNTAX "The syntax of this command is:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "La opción %s todavía no está disponible.\n" - IDS_ERROR_INVALID_OPTION_VALUE "El valor para la opción %s no es válido.\n" - IDS_ERROR_SYSTEM_ERROR "The system error %d happened.\n" - IDS_ERROR_NO_ERROR "The command completed successfully.\n\n" END diff --git a/base/applications/network/net/lang/pl-PL.rc b/base/applications/network/net/lang/pl-PL.rc index fab498e45bd..31ce03a7062 100644 --- a/base/applications/network/net/lang/pl-PL.rc +++ b/base/applications/network/net/lang/pl-PL.rc @@ -9,11 +9,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "Stacja robocza" IDS_USE_NOW_CONNECTED "%s jest obecnie podłączony do %s\n" - - IDS_GENERIC_SYNTAX "Składnia tego polecenia jest następująca:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "Opcja %s nie jest jeszcze obsługiwana.\n" - IDS_ERROR_INVALID_OPTION_VALUE "Wprowadzono nieprawidłową wartość dla opcji %s.\n" - IDS_ERROR_SYSTEM_ERROR "Wystąpił błąd systemu %d.\n" - IDS_ERROR_NO_ERROR "Polecenie zostało wykonane pomyślnie.\n\n" END diff --git a/base/applications/network/net/lang/ro-RO.rc b/base/applications/network/net/lang/ro-RO.rc index 5f7eb64ae83..7379b9175ec 100644 --- a/base/applications/network/net/lang/ro-RO.rc +++ b/base/applications/network/net/lang/ro-RO.rc @@ -16,11 +16,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "Stație de lucru" IDS_USE_NOW_CONNECTED "Conectarea %s la %s a fost realizată.\n" - - IDS_GENERIC_SYNTAX "Sintaxa acestei comenzi:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "Opțiunea %s încă nu este admisă.\n" - IDS_ERROR_INVALID_OPTION_VALUE "Ați introdus o valoare nevalidă pentru opțiunea %s.\n" - IDS_ERROR_SYSTEM_ERROR "A survenit eroarea de sistem %d.\n" - IDS_ERROR_NO_ERROR "Comanda a fost executată cu succes.\n\n" END diff --git a/base/applications/network/net/lang/ru-RU.rc b/base/applications/network/net/lang/ru-RU.rc index 8e680f05344..cc81e5a17e5 100644 --- a/base/applications/network/net/lang/ru-RU.rc +++ b/base/applications/network/net/lang/ru-RU.rc @@ -12,11 +12,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "Рабочая станция" IDS_USE_NOW_CONNECTED "%s сейчас подключен к %s\n" - - IDS_GENERIC_SYNTAX "Синтаксис данной команды:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "Опция %s в данный момент не поддерживается.\n" - IDS_ERROR_INVALID_OPTION_VALUE "Вы ввели неверный данные для данной опции %s.\n" - IDS_ERROR_SYSTEM_ERROR "Произошла системная ошибка: %d.\n" - IDS_ERROR_NO_ERROR "Команда успешно выполнена.\n\n" END diff --git a/base/applications/network/net/lang/tr-TR.rc b/base/applications/network/net/lang/tr-TR.rc index 7e2a04224cb..e0a083033f9 100644 --- a/base/applications/network/net/lang/tr-TR.rc +++ b/base/applications/network/net/lang/tr-TR.rc @@ -12,11 +12,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "İş istasyonu" IDS_USE_NOW_CONNECTED "%s şuna bağlandı: %s\n" - - IDS_GENERIC_SYNTAX "The syntax of this command is:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "%s seçeneği daha desteklenmiyor.\n" - IDS_ERROR_INVALID_OPTION_VALUE "%s seçeneği için geçersiz bir değer girdiniz.\n" - IDS_ERROR_SYSTEM_ERROR "%d dizge hatâsı oldu.\n" - IDS_ERROR_NO_ERROR "Komut başarılı bir şekilde çalıştırıldı.\n\n" END diff --git a/base/applications/network/net/lang/zh-CN.rc b/base/applications/network/net/lang/zh-CN.rc index 0874b2c4e58..4f6ab0ea000 100644 --- a/base/applications/network/net/lang/zh-CN.rc +++ b/base/applications/network/net/lang/zh-CN.rc @@ -12,11 +12,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "工作站" IDS_USE_NOW_CONNECTED "%s 现在连接到 %s\n" - - IDS_GENERIC_SYNTAX "The syntax of this command is:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "尚不支持 %s 选项。\n" - IDS_ERROR_INVALID_OPTION_VALUE "您输入了 %s 选项的无效的值。\n" - IDS_ERROR_SYSTEM_ERROR "发生了系统错误 %d。\n" - IDS_ERROR_NO_ERROR "命令执行成功。\n\n" END diff --git a/base/applications/network/net/lang/zh-TW.rc b/base/applications/network/net/lang/zh-TW.rc index 202a8e733c1..648d849efb4 100644 --- a/base/applications/network/net/lang/zh-TW.rc +++ b/base/applications/network/net/lang/zh-TW.rc @@ -12,11 +12,4 @@ BEGIN IDS_ACCOUNTS_WORKSTATION "工作站" IDS_USE_NOW_CONNECTED "%s is now connected to %s\n" - - IDS_GENERIC_SYNTAX "The syntax of this command is:\n\n" - - IDS_ERROR_OPTION_NOT_SUPPORTED "尚不支援 %s 選項。\n" - IDS_ERROR_INVALID_OPTION_VALUE "您輸入了無效的值為 %s 選項。\n" - IDS_ERROR_SYSTEM_ERROR "The system error %d happened.\n" - IDS_ERROR_NO_ERROR "The command completed successfully.\n\n" END diff --git a/base/applications/network/net/main.c b/base/applications/network/net/main.c index 75baf1b1109..964ccceddcd 100644 --- a/base/applications/network/net/main.c +++ b/base/applications/network/net/main.c @@ -327,7 +327,8 @@ int wmain(int argc, WCHAR **argv) done: if (bRun == FALSE) { - ConResPuts(StdOut, IDS_GENERIC_SYNTAX); + PrintMessageString(4381); + ConPuts(StdOut, L"\n"); PrintNetMessage(MSG_NET_SYNTAX); } diff --git a/base/applications/network/net/resource.h b/base/applications/network/net/resource.h index 1c418c1b61c..fc178baa3b9 100644 --- a/base/applications/network/net/resource.h +++ b/base/applications/network/net/resource.h @@ -9,9 +9,4 @@ #define IDS_USE_NOW_CONNECTED 500 -#define IDS_GENERIC_SYNTAX 607 -#define IDS_ERROR_OPTION_NOT_SUPPORTED 700 -#define IDS_ERROR_INVALID_OPTION_VALUE 701 -#define IDS_ERROR_SYSTEM_ERROR 702 -#define IDS_ERROR_NO_ERROR 703 diff --git a/sdk/include/reactos/mc/netmsgmsg.mc b/sdk/include/reactos/mc/netmsgmsg.mc index 39630f6e1a2..907db0989c8 100644 --- a/sdk/include/reactos/mc/netmsgmsg.mc +++ b/sdk/include/reactos/mc/netmsgmsg.mc @@ -15823,22 +15823,22 @@ Language=English The command completed successfully. . Language=Polish -The command completed successfully. +Polecenie zostało wykonane pomyślnie. . Language=Romanian -The command completed successfully. +Comanda a fost executată cu succes. . Language=Russian -The command completed successfully. +Команда успешно выполнена. . Language=Spanish The command completed successfully. . Language=Turkish -The command completed successfully. +Komut başarılı bir şekilde çalıştırıldı. . Language=Chinese -The command completed successfully. +命令执行成功。 . Language=Taiwanese The command completed successfully. @@ -15881,22 +15881,22 @@ Language=English System error %1 has occurred. . Language=Polish -System error %1 has occurred. +Wystąpił błąd systemu %1. . Language=Romanian -System error %1 has occurred. +A survenit eroarea de sistem %1. . Language=Russian -System error %1 has occurred. +Произошла системная ошибка: %1. . Language=Spanish System error %1 has occurred. . Language=Turkish -System error %1 has occurred. +%1 dizge hatâsı oldu. . Language=Chinese -System error %1 has occurred. +发生了系统错误 %1。 . Language=Taiwanese System error %1 has occurred. @@ -20475,25 +20475,25 @@ Language=English You entered an invalid value for the %1 option. . Language=Polish -You entered an invalid value for the %1 option. +Wprowadzono nieprawidłową wartość dla opcji %1. . Language=Romanian -You entered an invalid value for the %1 option. +Ați introdus o valoare nevalidă pentru opțiunea %1. . Language=Russian -You entered an invalid value for the %1 option. +Вы ввели неверный данные для данной опции %1. . Language=Spanish -You entered an invalid value for the %1 option. +El valor para la opción %1 no es válido. . Language=Turkish -You entered an invalid value for the %1 option. +%1 seçeneği için geçersiz bir değer girdiniz. . Language=Chinese -You entered an invalid value for the %1 option. +您输入了 %1 选项的无效的值。 . Language=Taiwanese -You entered an invalid value for the %1 option. +您輸入了無效的值為 %1 選項。 . MessageId=3953 @@ -23135,13 +23135,13 @@ Language=English The syntax of this command is: . Language=Polish -The syntax of this command is: +Składnia tego polecenia jest następująca: . Language=Romanian -The syntax of this command is: +Sintaxa acestei comenzi: . Language=Russian -The syntax of this command is: +Синтаксис данной команды: . Language=Spanish The syntax of this command is:
5 years, 8 months
1
0
0
0
[reactos] 01/01: [GDI32] Improve IntFontFamilyListUnique function (#1491)
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ae80eb824e882f7ed2f6f…
commit ae80eb824e882f7ed2f6f163922bee30c63284ad Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Tue Apr 9 17:39:42 2019 +0900 Commit: GitHub <noreply(a)github.com> CommitDate: Tue Apr 9 17:39:42 2019 +0900 [GDI32] Improve IntFontFamilyListUnique function (#1491) Make gdi32!IntFontFamilyListUnique function std::unique compatible. Previous code didn't set the first entry correctly. CORE-15785 --- win32ss/gdi/gdi32/objects/font.c | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/win32ss/gdi/gdi32/objects/font.c b/win32ss/gdi/gdi32/objects/font.c index a42b02c043d..2f187b0edbc 100644 --- a/win32ss/gdi/gdi32/objects/font.c +++ b/win32ss/gdi/gdi32/objects/font.c @@ -264,18 +264,19 @@ IntFontFamilyListUnique(FONTFAMILYINFO *InfoList, INT nCount, if ((dwFlags & IEFF_EXTENDED) && plf->lfCharSet == DEFAULT_CHARSET) dwCompareFlags |= IFFCX_CHARSET; + first = InfoList; + last = &InfoList[nCount]; + // std::unique(first, last, IntFontFamilyCompareEx); - if (nCount == 0) + if (first == last) return 0; - result = first = InfoList; - last = &InfoList[nCount]; + result = first; while (++first != last) { - if (IntFontFamilyCompareEx(result, first, dwCompareFlags) != 0 && - ++result != first) + if (IntFontFamilyCompareEx(result, first, dwCompareFlags) != 0) { - *result = *first; + *(++result) = *first; } } nCount = (int)(++result - InfoList);
5 years, 8 months
1
0
0
0
[reactos] 01/01: [GDI32] add some DPRINT's for font enum functions
by Katayama Hirofumi MZ
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=672ac75033dc3832167c0…
commit 672ac75033dc3832167c0538257a3025546ec1d3 Author: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> AuthorDate: Tue Apr 9 16:44:44 2019 +0900 Commit: Katayama Hirofumi MZ <katayama.hirofumi.mz(a)gmail.com> CommitDate: Tue Apr 9 16:44:57 2019 +0900 [GDI32] add some DPRINT's for font enum functions --- win32ss/gdi/gdi32/objects/font.c | 32 +++++++++++++++++++++++++++++--- 1 file changed, 29 insertions(+), 3 deletions(-) diff --git a/win32ss/gdi/gdi32/objects/font.c b/win32ss/gdi/gdi32/objects/font.c index 566d703ccb5..a42b02c043d 100644 --- a/win32ss/gdi/gdi32/objects/font.c +++ b/win32ss/gdi/gdi32/objects/font.c @@ -335,11 +335,8 @@ IntEnumFontFamilies(HDC Dc, LPLOGFONTW LogFont, PVOID EnumProc, LPARAM lParam, } } - DPRINT("qsort\n"); qsort(Info, FontFamilyCount, sizeof(*Info), IntFontFamilyCompare); - DPRINT("qsort done\n"); FontFamilyCount = IntFontFamilyListUnique(Info, FontFamilyCount, LogFont, dwFlags); - DPRINT("unique done\n"); for (i = 0; i < FontFamilyCount; i++) { @@ -384,6 +381,17 @@ int WINAPI EnumFontFamiliesExW(HDC hdc, LPLOGFONTW lpLogfont, FONTENUMPROCW lpEnumFontFamExProc, LPARAM lParam, DWORD dwFlags) { + if (lpLogfont) + { + DPRINT("EnumFontFamiliesExW(%p, %p(%S, %u, %u), %p, %p, 0x%08lX)\n", + hdc, lpLogfont, lpLogfont->lfFaceName, lpLogfont->lfCharSet, + lpLogfont->lfPitchAndFamily, lpEnumFontFamExProc, lParam, dwFlags); + } + else + { + DPRINT("EnumFontFamiliesExW(%p, NULL, %p, %p, 0x%08lX)\n", + hdc, lpEnumFontFamExProc, lParam, dwFlags); + } return IntEnumFontFamilies(hdc, lpLogfont, lpEnumFontFamExProc, lParam, IEFF_UNICODE | IEFF_EXTENDED); } @@ -398,6 +406,9 @@ EnumFontFamiliesW(HDC hdc, LPCWSTR lpszFamily, FONTENUMPROCW lpEnumFontFamProc, { LOGFONTW LogFont; + DPRINT("EnumFontFamiliesW(%p, %S, %p, %p)\n", + hdc, lpszFamily, lpEnumFontFamProc, lParam); + ZeroMemory(&LogFont, sizeof(LOGFONTW)); LogFont.lfCharSet = DEFAULT_CHARSET; if (NULL != lpszFamily) @@ -419,6 +430,18 @@ EnumFontFamiliesExA (HDC hdc, LPLOGFONTA lpLogfont, FONTENUMPROCA lpEnumFontFamE { LOGFONTW LogFontW, *pLogFontW; + if (lpLogfont) + { + DPRINT("EnumFontFamiliesExA(%p, %p(%s, %u, %u), %p, %p, 0x%08lX)\n", + hdc, lpLogfont, lpLogfont->lfFaceName, lpLogfont->lfCharSet, + lpLogfont->lfPitchAndFamily, lpEnumFontFamExProc, lParam, dwFlags); + } + else + { + DPRINT("EnumFontFamiliesExA(%p, NULL, %p, %p, 0x%08lX)\n", + hdc, lpEnumFontFamExProc, lParam, dwFlags); + } + if (lpLogfont) { LogFontA2W(&LogFontW,lpLogfont); @@ -440,6 +463,9 @@ EnumFontFamiliesA(HDC hdc, LPCSTR lpszFamily, FONTENUMPROCA lpEnumFontFamProc, { LOGFONTW LogFont; + DPRINT("EnumFontFamiliesA(%p, %s, %p, %p)\n", + hdc, lpszFamily, lpEnumFontFamProc, lParam); + ZeroMemory(&LogFont, sizeof(LOGFONTW)); LogFont.lfCharSet = DEFAULT_CHARSET; if (NULL != lpszFamily)
5 years, 8 months
1
0
0
0
[reactos] 01/01: [THEMES] Mizu Bitmap Updates. CORE-15936 (#1490)
by Foxlet
https://git.reactos.org/?p=reactos.git;a=commitdiff;h=f50d58b36701d8fd1770c…
commit f50d58b36701d8fd1770c1241ad1e8c28ed67b01 Author: Foxlet <foxlet(a)furcode.co> AuthorDate: Mon Apr 8 18:04:54 2019 -0400 Commit: Hermès Bélusca-Maïto <hermes.belusca-maito(a)reactos.org> CommitDate: Tue Apr 9 02:00:41 2019 +0200 [THEMES] Mizu Bitmap Updates. CORE-15936 (#1490) - Add compatibility with XP and fix some bugs with its rendering engine. - New Help and Slider bitmaps. Co-authored-by: Stanislav Motylkov <x86corez(a)gmail.com> --- .../mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.bmp | Bin 18954 -> 14166 bytes .../mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.xcf | Bin 5687 -> 5671 bytes .../mizu.msstyles/bitmaps/NORMAL_FRAMECAPTION.bmp | Bin 53882 -> 53814 bytes .../bitmaps/NORMAL_FRAMECAPTIONMIN.bmp | Bin 38330 -> 28742 bytes .../mizu.msstyles/bitmaps/NORMAL_HELPBUTTON.bmp | Bin 3578 -> 7350 bytes .../mizu.msstyles/bitmaps/NORMAL_MAXBUTTON.bmp | Bin 9866 -> 7350 bytes .../mizu.msstyles/bitmaps/NORMAL_MINBUTTON.bmp | Bin 9866 -> 7350 bytes .../bitmaps/NORMAL_NORMALGROUPBACKGROUND.bmp | Bin 3482 -> 3414 bytes .../mizu.msstyles/bitmaps/NORMAL_PROGRESSCHUNK.bmp | Bin 3862 -> 2866 bytes .../mizu.msstyles/bitmaps/NORMAL_RESTOREBUTTON.bmp | Bin 9866 -> 7350 bytes .../mizu.msstyles/bitmaps/NORMAL_SCROLLARROWS.bmp | Bin 14538 -> 11574 bytes .../bitmaps/NORMAL_SCROLLSHAFTHORIZONTAL.bmp | Bin 4218 -> 3174 bytes .../bitmaps/NORMAL_SCROLLTHUMBGRIPPERHORIZONTAL.bmp | Bin 1018 -> 950 bytes .../bitmaps/NORMAL_SCROLLTHUMBHORIZONTAL.bmp | Bin 4202 -> 4134 bytes .../bitmaps/NORMAL_SCROLLTHUMBVERTICAL.bmp | Bin 4346 -> 4278 bytes .../mizu.msstyles/bitmaps/NORMAL_SLIDERTRACK.bmp | Bin 134 -> 134 bytes .../bitmaps/NORMAL_SLIDERTRACKVERT.bmp | Bin 134 -> 134 bytes .../themes/mizu.msstyles/bitmaps/NORMAL_TABITEM.bmp | Bin 5162 -> 5094 bytes .../mizu.msstyles/bitmaps/NORMAL_TABITEMBOTH.bmp | Bin 5162 -> 5094 bytes .../mizu.msstyles/bitmaps/NORMAL_TABITEMLEFT.bmp | Bin 5162 -> 5094 bytes .../mizu.msstyles/bitmaps/NORMAL_TABITEMRIGHT.bmp | Bin 5162 -> 5094 bytes .../mizu.msstyles/bitmaps/NORMAL_TABITEMTOP.bmp | Bin 5162 -> 5094 bytes .../mizu.msstyles/bitmaps/NORMAL_TABITEMTOPLEFT.bmp | Bin 5162 -> 5094 bytes .../mizu.msstyles/bitmaps/NORMAL_TABPANEEDGE.bmp | Bin 7034 -> 6966 bytes .../bitmaps/NORMAL_TASKBANDBUTTON-Darker.bmp | Bin 11642 -> 11574 bytes .../mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON.bmp | Bin 11642 -> 11574 bytes .../mizu.msstyles/textfiles/ExtraLargeNormal.INI | 11 ++++++----- .../mizu.msstyles/textfiles/LargeFontsNormal.INI | 11 ++++++----- .../themes/mizu.msstyles/textfiles/NormalNormal.INI | 5 +++-- 29 files changed, 15 insertions(+), 12 deletions(-) diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.bmp index fe418402f2c..f63f14ca622 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.xcf b/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.xcf index da4e5810018..1f46ed4e336 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.xcf and b/media/themes/mizu.msstyles/bitmaps/NORMAL_CLOSEBUTTON.xcf differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTION.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTION.bmp index cb267314bf8..3a70c315a00 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTION.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTION.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTIONMIN.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTIONMIN.bmp index 1746ba4dca8..73ab855a05d 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTIONMIN.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_FRAMECAPTIONMIN.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_HELPBUTTON.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_HELPBUTTON.bmp index 346880eb3e4..332ce4011f8 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_HELPBUTTON.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_HELPBUTTON.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_MAXBUTTON.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_MAXBUTTON.bmp index e367b59c074..f1e877335d9 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_MAXBUTTON.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_MAXBUTTON.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_MINBUTTON.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_MINBUTTON.bmp index 0dfd4857689..3b2f466b205 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_MINBUTTON.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_MINBUTTON.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_NORMALGROUPBACKGROUND.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_NORMALGROUPBACKGROUND.bmp index 4c6e58a0dcf..c3082d8c488 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_NORMALGROUPBACKGROUND.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_NORMALGROUPBACKGROUND.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_PROGRESSCHUNK.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_PROGRESSCHUNK.bmp index b26f1d88a22..02514d0321a 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_PROGRESSCHUNK.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_PROGRESSCHUNK.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_RESTOREBUTTON.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_RESTOREBUTTON.bmp index e367b59c074..f1e877335d9 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_RESTOREBUTTON.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_RESTOREBUTTON.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLARROWS.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLARROWS.bmp index fed2f9c30f4..db7f7f96e53 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLARROWS.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLARROWS.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLSHAFTHORIZONTAL.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLSHAFTHORIZONTAL.bmp index 682f43cbebd..7704ab03eca 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLSHAFTHORIZONTAL.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLSHAFTHORIZONTAL.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBGRIPPERHORIZONTAL.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBGRIPPERHORIZONTAL.bmp index 92070dfaf79..812687622b8 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBGRIPPERHORIZONTAL.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBGRIPPERHORIZONTAL.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBHORIZONTAL.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBHORIZONTAL.bmp index 116f4e70d9e..111b8a385d5 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBHORIZONTAL.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBHORIZONTAL.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBVERTICAL.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBVERTICAL.bmp index 0b0c9f2ef57..bdec93270b6 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBVERTICAL.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_SCROLLTHUMBVERTICAL.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACK.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACK.bmp index d7427fe8202..d6d5d6f1cef 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACK.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACK.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACKVERT.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACKVERT.bmp index d7427fe8202..d6d5d6f1cef 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACKVERT.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_SLIDERTRACKVERT.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEM.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEM.bmp index 336b00eed53..9e039c70b4c 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEM.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEM.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMBOTH.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMBOTH.bmp index ccbe08a6bb2..9fe7a5f77f2 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMBOTH.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMBOTH.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMLEFT.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMLEFT.bmp index e1a44cdf5e6..4fa99935b35 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMLEFT.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMLEFT.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMRIGHT.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMRIGHT.bmp index fede7c29515..f7b4a015466 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMRIGHT.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMRIGHT.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOP.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOP.bmp index dde9b485290..4a6d4049298 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOP.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOP.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOPLEFT.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOPLEFT.bmp index fd924291442..b038a795a8d 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOPLEFT.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABITEMTOPLEFT.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABPANEEDGE.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABPANEEDGE.bmp index 78fa017f36b..07f9eb101b5 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TABPANEEDGE.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TABPANEEDGE.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON-Darker.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON-Darker.bmp index 3c36b4764cd..a79ef47cc44 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON-Darker.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON-Darker.bmp differ diff --git a/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON.bmp b/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON.bmp index 4d9fa9293ec..b9c1c34909f 100644 Binary files a/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON.bmp and b/media/themes/mizu.msstyles/bitmaps/NORMAL_TASKBANDBUTTON.bmp differ diff --git a/media/themes/mizu.msstyles/textfiles/ExtraLargeNormal.INI b/media/themes/mizu.msstyles/textfiles/ExtraLargeNormal.INI index 96ce5cf3e9b..af4b129ca02 100644 --- a/media/themes/mizu.msstyles/textfiles/ExtraLargeNormal.INI +++ b/media/themes/mizu.msstyles/textfiles/ExtraLargeNormal.INI @@ -1301,7 +1301,7 @@ BorderColorHint = 157 156 153 FillColorHint = 242 241 233 Imagecount = 1 ImageFile = Normal\SliderTrack.bmp -SizingMargins = 3, 3, 2, 2 +SizingMargins = 2, 2, 2, 2 Sizingtype = stretch [TrackBar.TrackVert] @@ -1310,7 +1310,7 @@ BorderColorHint = 157 156 153 FillColorHint = 242 241 233 Imagecount = 1 ImageFile = Normal\SliderTrackVert.bmp -SizingMargins = 2, 2, 3, 3 +SizingMargins = 2, 2, 2, 2 Sizingtype = stretch [TreeView] @@ -1346,15 +1346,16 @@ Transparent = True [Window.Caption(Active)] TextColor = 0 0 0 +TextShadowType = None [Window.Caption(Disabled)] IconEffect = Glow -TextShadowType = Continuous +TextShadowType = None TEXTCOLOR = 235 235 235 [Window.Caption(Inactive)] IconEffect = Alpha -TextShadowType = Continuous +TextShadowType = None [Window.CaptionSizingTemplate] ContentMargins = 18, 18, 26, 0 @@ -1385,7 +1386,7 @@ ImageSelectType = size MinDpi1 = 96 MinDpi2 = 126 MinDpi3 = 170 -Offset = 40, 4 +Offset = 25, 5 OffsetType = TopRight SizingMargins = 2, 2, 2, 2 SizingType = Stretch diff --git a/media/themes/mizu.msstyles/textfiles/LargeFontsNormal.INI b/media/themes/mizu.msstyles/textfiles/LargeFontsNormal.INI index 96ce5cf3e9b..af4b129ca02 100644 --- a/media/themes/mizu.msstyles/textfiles/LargeFontsNormal.INI +++ b/media/themes/mizu.msstyles/textfiles/LargeFontsNormal.INI @@ -1301,7 +1301,7 @@ BorderColorHint = 157 156 153 FillColorHint = 242 241 233 Imagecount = 1 ImageFile = Normal\SliderTrack.bmp -SizingMargins = 3, 3, 2, 2 +SizingMargins = 2, 2, 2, 2 Sizingtype = stretch [TrackBar.TrackVert] @@ -1310,7 +1310,7 @@ BorderColorHint = 157 156 153 FillColorHint = 242 241 233 Imagecount = 1 ImageFile = Normal\SliderTrackVert.bmp -SizingMargins = 2, 2, 3, 3 +SizingMargins = 2, 2, 2, 2 Sizingtype = stretch [TreeView] @@ -1346,15 +1346,16 @@ Transparent = True [Window.Caption(Active)] TextColor = 0 0 0 +TextShadowType = None [Window.Caption(Disabled)] IconEffect = Glow -TextShadowType = Continuous +TextShadowType = None TEXTCOLOR = 235 235 235 [Window.Caption(Inactive)] IconEffect = Alpha -TextShadowType = Continuous +TextShadowType = None [Window.CaptionSizingTemplate] ContentMargins = 18, 18, 26, 0 @@ -1385,7 +1386,7 @@ ImageSelectType = size MinDpi1 = 96 MinDpi2 = 126 MinDpi3 = 170 -Offset = 40, 4 +Offset = 25, 5 OffsetType = TopRight SizingMargins = 2, 2, 2, 2 SizingType = Stretch diff --git a/media/themes/mizu.msstyles/textfiles/NormalNormal.INI b/media/themes/mizu.msstyles/textfiles/NormalNormal.INI index 912e60d4562..af4b129ca02 100644 --- a/media/themes/mizu.msstyles/textfiles/NormalNormal.INI +++ b/media/themes/mizu.msstyles/textfiles/NormalNormal.INI @@ -1346,15 +1346,16 @@ Transparent = True [Window.Caption(Active)] TextColor = 0 0 0 +TextShadowType = None [Window.Caption(Disabled)] IconEffect = Glow -TextShadowType = Continuous +TextShadowType = None TEXTCOLOR = 235 235 235 [Window.Caption(Inactive)] IconEffect = Alpha -TextShadowType = Continuous +TextShadowType = None [Window.CaptionSizingTemplate] ContentMargins = 18, 18, 26, 0
5 years, 8 months
1
0
0
0
← Newer
1
...
11
12
13
14
15
16
17
...
24
Older →
Jump to page:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Results per page:
10
25
50
100
200