Giannis Adamopoulos [Sun, 28 Jan 2018 17:20:12 +0000 (19:20 +0200)]
[EXPLORER] CTaskSwitchWnd: Implement getting the setting for grouping tasks. This doesn't work yet but the setting does get stored in m_IsGroupingEnabled. TSWM_ENABLEGROUPING is not needed.
Giannis Adamopoulos [Sun, 28 Jan 2018 16:59:18 +0000 (18:59 +0200)]
[EXPLORER] CTrayClockWnd: Implement showing and hiding seconds or the whole clock from the properties window.
Giannis Adamopoulos [Sun, 28 Jan 2018 12:21:45 +0000 (14:21 +0200)]
[EXPLORER] -Make CSysPagerWnd, CTaskSwitchWnd, CTrayClockWnd and CTrayNotifyWnd proper com objects so that their lifetime is managed properly.
Alex Ionescu [Sun, 28 Jan 2018 15:29:43 +0000 (16:29 +0100)]
[ROSLOAD]: Fix NX enabling
[ROSLOAD]: The IA32_MISC_ENABLE MSR bit actually _disables_ NX, so
diabling the bit _enables_ NX.
[ROSLOAD]: The MSR_XD_ENABLE_MASK is for the _high_ DWORD of the MSR
(bit 34), not the low.
[ROSLOAD]: Fix printf.
[ENVIRON/ROSLOAD]: Switch to CPU_INFO structure instead of blindly using
INT[4]. Revealed a bug in the PAE detection which was reading out of
bounds.
Alex Ionescu [Sun, 28 Jan 2018 12:24:20 +0000 (13:24 +0100)]
[ROSLOAD] Initial support for launching OS Loader Entrypoint and returning from it
[ENVIRON]: Implement BlArchGetCpuVendor
[ROSLOAD]: Stub OslPrepareTarget, OslExecuteTransition
[ROSLOAD]: Implement OslpMain
Pierre Schweitzer [Sun, 28 Jan 2018 10:55:40 +0000 (11:55 +0100)]
[NTOSKRNL] Drop ROS_DEFERRED_WRITE_CONTEXT in favor of DEFERRED_WRITE
that was introduced in
d3e0eb2.
CORE-14235
Pierre Schweitzer [Sun, 28 Jan 2018 10:09:21 +0000 (11:09 +0100)]
[NTOSKRNL] Misc fixes to Cc:
- CcUnpinDataForThread() only release VACB when the last BCB reference is gone. This avoids having a valid BCB with an invalid VACB
- CcRosMarkDirtyVacb() will only accept non-dirty VACB now. This avoids a major bug where a an already dirty VACB was over-dereferenced
- Thanks to previous point, simplify CcRosUnmapVacb(), CcRosReleaseVacb() implementation
- And only set VACB dirty once in CcSetDirtyPinnedData()
- Add a few sanity checks
With that I can again install ReactOS with 128MB RAM :-).
CORE-14263
CORE-14268
Thomas Faber [Sun, 28 Jan 2018 09:34:21 +0000 (10:34 +0100)]
[NDK] Add DEFERRED_WRITE structure for Cc. CORE-14235
Consistently use CSHORT for NodeTypeCode/NodeByteSize while we're at it.
Thomas Faber [Fri, 26 Jan 2018 12:56:06 +0000 (13:56 +0100)]
[NTOS:MM] Assert MmLocateMemoryAreaByAddress return value to satisfy Coverity. CID 701289
Thomas Faber [Fri, 26 Jan 2018 12:45:53 +0000 (13:45 +0100)]
[NTOS:PS] Check for rundown success in PsReferenceProcessFilePointer. CID 514553
Eric Kohl [Sat, 27 Jan 2018 23:57:58 +0000 (00:57 +0100)]
[SERVICES] Do not delete running services.
CORE-14260
Pierre Schweitzer [Sat, 27 Jan 2018 21:02:01 +0000 (22:02 +0100)]
[NTOSKRNL] Fix MSVC build?
Pierre Schweitzer [Sat, 27 Jan 2018 20:51:33 +0000 (21:51 +0100)]
[NTOSKRNL] Hello CcIdleDelay :-)
(Good link for the interested reader: https://msdn.microsoft.com/en-us/library/
bb742613.aspx)
Serge Gautherie [Sat, 27 Jan 2018 19:54:26 +0000 (20:54 +0100)]
[SC] print.c: Minor code improvements. (#324)
- Plus: Update license header.
- Re-use PrintServiceStatus(), as SERVICE_STATUS_PROCESS is in fact an extension of SERVICE_STATUS.
- Use the "SERVICE_*" defines, not magic numbers.
Giannis Adamopoulos [Fri, 26 Jan 2018 23:27:24 +0000 (01:27 +0200)]
[EXPLORER] CTrayNotifyWnd: Simplify how it interacts with its parent and children. Clean up.
Pierre Schweitzer [Sat, 27 Jan 2018 17:37:34 +0000 (18:37 +0100)]
[NTOSKRNL] On file cache deletion, only manipulate VACB once locked.
Should help avoiding race conditions with lazy write.
CORE-14263
Mark Jansen [Sat, 27 Jan 2018 17:10:50 +0000 (18:10 +0100)]
[ACPPAGE] Improve the compatibility tab (#332)
- Use the tab title from the corresponding dialog resource caption string.
- Fix some translations, and complete the french one.
- Use DialogBoxParamW and MAKEINTRESOURCEW (with W).
Stanislav Motylkov [Sat, 27 Jan 2018 15:25:51 +0000 (18:25 +0300)]
[TRANSLATION] Add and fix translations for ping and tracert (#331)
Hermès Bélusca-Maïto [Sat, 27 Jan 2018 15:07:17 +0000 (16:07 +0100)]
[EVTLIB] Make the header C++ compatible.
Hermès Bélusca-Maïto [Sat, 27 Jan 2018 15:00:44 +0000 (16:00 +0100)]
[CONUTILS] Fix macro definition.
Hermès Bélusca-Maïto [Sat, 27 Jan 2018 14:48:59 +0000 (15:48 +0100)]
[CONUTILS] Make the headers C++ compatible.
Mark Jansen [Wed, 24 Jan 2018 21:43:35 +0000 (22:43 +0100)]
[SDB] Define the layers GetShortPathNameNT4 and GetDiskFreeSpace2GB
Mark Jansen [Wed, 24 Jan 2018 21:41:56 +0000 (22:41 +0100)]
[SHIMENG] Parse and apply [AppCompat] Flags.
Mark Jansen [Wed, 24 Jan 2018 21:35:12 +0000 (22:35 +0100)]
[XML2SDB] Parse Flags.
Mark Jansen [Thu, 25 Jan 2018 20:39:01 +0000 (21:39 +0100)]
[SHIMENG] Change SE_InstallBeforeInit loglevel.
Ercan Ersoy [Sun, 14 Jan 2018 15:14:25 +0000 (18:14 +0300)]
[STOBJECT] Change Turkish translation.
Ercan Ersoy [Sun, 14 Jan 2018 15:11:06 +0000 (18:11 +0300)]
[NTOBJSHEX] Change Turkish translation.
Ercan Ersoy [Sun, 14 Jan 2018 15:09:15 +0000 (18:09 +0300)]
[NETSHELL] Change Turkish translation.
Ercan Ersoy [Sun, 14 Jan 2018 15:07:24 +0000 (18:07 +0300)]
[NETSHELL] Change Turkish translation.
Ercan Ersoy [Sun, 14 Jan 2018 14:59:35 +0000 (17:59 +0300)]
[DESKADP] Change Turkish translation.
Ercan Ersoy [Sun, 14 Jan 2018 14:57:29 +0000 (17:57 +0300)]
[ACPPAGE] Change Turkish translation.
Ercan Ersoy [Sun, 14 Jan 2018 14:52:22 +0000 (17:52 +0300)]
[DESKMON] Change Turkish translation.
Ercan Ersoy [Sun, 14 Jan 2018 14:43:04 +0000 (17:43 +0300)]
[FONTEXT] Translate to Turkish.
Change fontext.rc file and add lang/tr-TR.rc file
Pierre Schweitzer [Sat, 27 Jan 2018 13:30:05 +0000 (14:30 +0100)]
[TRANSLATION] Fix a few bits in shortcuts French translation.
Adam Słaboń [Sat, 27 Jan 2018 12:21:22 +0000 (13:21 +0100)]
[TRANSLATION] Polish translation update (#328)
Pierre Schweitzer [Sat, 27 Jan 2018 12:01:45 +0000 (13:01 +0100)]
[TRACERT] Add French translation
Pierre Schweitzer [Sat, 27 Jan 2018 11:49:14 +0000 (12:49 +0100)]
[PING] Complete French translation
Pierre Schweitzer [Sat, 27 Jan 2018 09:57:50 +0000 (10:57 +0100)]
[NTOSKRNL] When marking a VACB dirty on unmap/unpin, use CcRosMarkDirtyVacb().
This should help reducing race conditions with lazy writer, and thus reduce random BSODs.
CORE-14263
Serge Gautherie [Sat, 27 Jan 2018 09:50:10 +0000 (10:50 +0100)]
[KMTEST] TcpIpConnect: Fix harmless typos (#299)
- 1 s/ok_bool_true/ok/, overkill though harmless.
- 1 s/ntohs/htons/, typo though harmless.
ROSTESTS-274
Dmitry Bagdanov [Fri, 26 Jan 2018 15:46:35 +0000 (22:46 +0700)]
[CABMAN] Move CCFDATAStorage class to a separate file
Dmitry Bagdanov [Fri, 26 Jan 2018 15:44:14 +0000 (22:44 +0700)]
[CABMAN] Remove _WIN32 ifdef's
Giannis Adamopoulos [Thu, 18 Jan 2018 17:01:35 +0000 (19:01 +0200)]
[GDIPLUS] Add it to winsxs.
[NTDLL_APITEST] Remove a hack for gdiplus
Giannis Adamopoulos [Thu, 18 Jan 2018 14:56:16 +0000 (16:56 +0200)]
[NTDLL_APITEST] Remove one of the hacks for the implicit activation context.
Giannis Adamopoulos [Thu, 18 Jan 2018 14:53:59 +0000 (16:53 +0200)]
[RTL] actctx: Implement the implicit activation context
Serge Gautherie [Fri, 26 Jan 2018 23:34:21 +0000 (00:34 +0100)]
[FREELDR] FreeLdr debug.h does not care about NDEBUG. (#201)
- Remove all "#define NDEBUG".
toehead2001 [Fri, 26 Jan 2018 21:30:15 +0000 (21:30 +0000)]
[SNDVOL32] Fix controls' offset (#280)
CORE-9108
Katayama Hirofumi MZ [Fri, 26 Jan 2018 21:23:00 +0000 (06:23 +0900)]
[GDI32_APITEST] Add GetTextMetrics tests to gdi32_apitest (#307)
CORE-13840
Serge Gautherie [Sat, 13 Jan 2018 14:41:49 +0000 (15:41 +0100)]
[FREELDR] i386vid.c: Downgrade/Improve 3 false ERR() to WARN(). CORE-13496
Silence harmless errors, which can be reported at every boot.
Joann Mõndresku [Fri, 26 Jan 2018 18:14:17 +0000 (20:14 +0200)]
[TRANSLATION] Estonian translation for Notepad & Paint
Added Estonian translation for the common base applications Notepad and MS Paint. These are the initial translations, and are subject to change, as they may not be the most perfect.
Stanislav Motylkov [Fri, 26 Jan 2018 18:38:47 +0000 (21:38 +0300)]
[PING] Fix error handling and response address decoding (#318)
- Host/net unreachable error should be obtained from EchoReply->Status
- Use GetNameInfoW to decode actual response addresses (borrowed from tracert code)
CORE-14241 #resolve
Stanislav Motylkov [Fri, 26 Jan 2018 18:37:43 +0000 (21:37 +0300)]
[TRACERT] Improve error handling and output (#319)
- Correctly interpret network error codes
- Add output for generic transmit failure
CORE-14242 #resolve
Pierre Schweitzer [Fri, 26 Jan 2018 09:50:13 +0000 (10:50 +0100)]
[NTOSKRNL] Simplify (and speedup!) CcCanIWrite() using the dirty pages count in cache map.
Pierre Schweitzer [Fri, 26 Jan 2018 09:40:05 +0000 (10:40 +0100)]
[NTOSKRNL] Store the total dirty pages per shared cache map in it.
Pierre Schweitzer [Thu, 25 Jan 2018 20:56:19 +0000 (21:56 +0100)]
[NTOSKRNL] Allow pinned dirty VACB to be lazy written.
This is an addition to
07e6e9c.
Also, fix a cppcheck warning (so minor!).
CORE-14249
Pierre Schweitzer [Thu, 25 Jan 2018 12:47:00 +0000 (13:47 +0100)]
[NTOSKRNL] Contrary to WinDBG !filecache, we don't display CONTROL_AREA but shared cache map
Pierre Schweitzer [Wed, 24 Jan 2018 21:03:23 +0000 (22:03 +0100)]
[NTOSKRNL] Fix MSVC build?
Pierre Schweitzer [Wed, 24 Jan 2018 20:45:37 +0000 (21:45 +0100)]
[NTOSKRNL] Implement (it's a bit raw for now!) the !filecache command in KDBG
Pierre Schweitzer [Wed, 24 Jan 2018 20:24:05 +0000 (21:24 +0100)]
[NTOSKRNL] Link all the shared cache map together.
Serge Gautherie [Fri, 22 Dec 2017 22:52:47 +0000 (23:52 +0100)]
[ATL_APITEST] CComObject.cpp: Fix output test name copypasta.
Stanislav Motylkov [Wed, 24 Jan 2018 15:13:51 +0000 (18:13 +0300)]
[TRANSLATION] [DESK] Update russian translation (#323)
Baruch Rutman [Wed, 24 Jan 2018 15:00:43 +0000 (17:00 +0200)]
[BASE/APPLICATIONS] Hebrew translation updates (#321)
Translation updates + mirroring support.
Pierre Schweitzer [Wed, 24 Jan 2018 14:55:38 +0000 (15:55 +0100)]
[WINHTTP_WINETEST] Properly re-add the ROS diff removed during last winesync.
This avoids timeouts in the winhttp:notification test.
ROSTESTS-295
CORE-14248
David Quintana [Wed, 24 Jan 2018 13:41:06 +0000 (14:41 +0100)]
[EXPLORER] Split up the notification area into a few more manageable pieces.
Pierre Schweitzer [Wed, 24 Jan 2018 09:09:19 +0000 (10:09 +0100)]
[NTOSKRNL] Make lazy writer thread run with higher priority.
CORE-14248
Pierre Schweitzer [Tue, 23 Jan 2018 22:23:32 +0000 (23:23 +0100)]
[NTOSKRNL] Implement per-file dirty page threshold.
Namely, implement CcSetDirtyPageThreshold() and add support for it
in CcCanIWrite().
Also added my name in the headers of the few files I touched tonight.
CORE-14235
Pierre Schweitzer [Tue, 23 Jan 2018 22:01:07 +0000 (23:01 +0100)]
[NTOSKRNL] Unexpected cleanup
Pierre Schweitzer [Tue, 23 Jan 2018 21:56:23 +0000 (22:56 +0100)]
[NTOSKRNL] Implement support for deferred writes in Cc.
Namely, implement CcCanIWrite() (very basic, and likely wrong).
And implement CcDeferWrite() which will queue the write operation.
In CciLazyWriter() (which may be renamed CcWorkerThread() ;-)),
handle the queued write operations one by one. This is likely
not to be accurate, but, given we have only on FS supporting
this for now (NFS / RDBSS / Shares), this is OK.
CORE-14235
Pierre Schweitzer [Tue, 23 Jan 2018 20:48:29 +0000 (21:48 +0100)]
[NTOSKRNL] When marking a BCB dirty, also mark the underlying VACB dirty.
Experiment and MSDN tend to show that a dirty BCB is queued for lazy write.
This will do the job here!
Also, renamed CcRosMarkDirtyFile() which is more accurate, and added a new
function CcRosMarkDirtyVacb() which just takes a VACB as arg (expected locked)
and marks it dirty (using previous implementation). Make CcRosMarkDirtyFile()
use it.
CORE-14235
Pierre Schweitzer [Tue, 23 Jan 2018 20:36:19 +0000 (21:36 +0100)]
[NTOSKRNL] Bug fix: lazy write more often.
CcDirtyPageThreshold is not here to compute when you have to write,
but to know where you have to deny writes.
More commits to come in that direction!
CORE-14235
David Quintana [Tue, 23 Jan 2018 22:10:44 +0000 (23:10 +0100)]
[EXPLORER] Workaround for something that may or may not be an "unintended feature" of the comctl toolbar.
Apparently the indices provided in NMTBGETINFOTIP (TBN_GETINFOTIP data struct), are not reliable,
but since the lParam values are, and it saves us a lookup, we will be using those instead. Win-Win!
David Quintana [Mon, 22 Jan 2018 19:27:32 +0000 (20:27 +0100)]
[EXPLORER] Implement balloon queueing.
David Quintana [Fri, 19 Jan 2018 15:39:46 +0000 (16:39 +0100)]
[EXPLORER] Implement rudimentary uVersion management, and notification balloons.
- uVersion will only be truly useful when Vista+'s V4 style notification icons are implemented.
- Balloon notifications do not yet support queuing and auto-closing.
- Force the notification icon tooltips to always show even if the taskbar isn't foreground.
[ROSCTRLS.H] Implement CTooltips class which manages a comctl32 tooltips window.
Pierre Schweitzer [Tue, 23 Jan 2018 18:07:25 +0000 (19:07 +0100)]
[NTOSKRNL] Reimplement the lazy writer in Cc and remove the "basic" one in Mm.
This removes the "modified page writer" thread in Mm that was regularly blindly
attempting to flush dirty pages to the disk.
Instead, this commit introduces a lazy writer that will monitor dirty pages count
and will flush them to disk when this count is above a threshold. The threshold is
computed on Cc init.
Compared to what was done previously, this lazy writer will only write down files
that are not marked as temporary.
The mechanisms involved in this lazy writer worker are well described in Windows
Internals 4th editions (constants are coming from it ;-)).
Also fixed a bad (and old!) bug in CcRosFlushDirtyPages() where target count could
be overflow and the function would spin forever while holding the VACBs lock. This is
mandatory as now lazy writer will call it with "random" values.
This also allows implementing CcWaitForCurrentLazyWriterActivity() :-).
Also renamed DirtyPageCount to its MS equivalent.
CORE-14235
Joachim Henze [Tue, 23 Jan 2018 18:29:28 +0000 (19:29 +0100)]
[DESK.CPL] Update de-DE.rc for flat menus option
Stanislav Motylkov [Tue, 23 Jan 2018 11:05:09 +0000 (14:05 +0300)]
[UXTHEME] Add missing THEME_BUTTON_STATES
CORE-14245 #resolve
Hermès Bélusca-Maïto [Mon, 22 Jan 2018 19:54:31 +0000 (20:54 +0100)]
[SHLWAPI] Partly revert SHLWAPI Wine 3.0 sync
b725032 .
This Wine sync (that was not done against WineStaging) erased code
that had been submitted to WineStaging by the ReactOS team (clist.c
fixes, see r73565
a05881c and r73976
7b6b597) or added in r68042
9a78054.
To that aim I add explicit #if(n)def __REACTOS__ guards around the code.
Stanislav Motylkov [Sun, 21 Jan 2018 21:09:16 +0000 (00:09 +0300)]
[WIN32K:NTUSER] Fix color indices for themes
CORE-14231 #resolve
Stanislav Motylkov [Mon, 22 Jan 2018 11:41:51 +0000 (14:41 +0300)]
[DESK.CPL] Fix hardcoded colors in classic theme preview
CORE-14238 #resolve
Stanislav Motylkov [Mon, 22 Jan 2018 18:06:53 +0000 (21:06 +0300)]
[DESK.CPL] Add flat menus option to effects dialog
Jérôme Gardou [Mon, 22 Jan 2018 17:14:36 +0000 (18:14 +0100)]
[WINSRV] -Fix inline functions definitions
This fixes -O0 compilation
Stanislav Motylkov [Mon, 22 Jan 2018 14:49:33 +0000 (17:49 +0300)]
[KBSWITCH] Update tray icon on color scheme change
CORE-14240 #resolve
Eric Kohl [Sun, 21 Jan 2018 11:55:13 +0000 (12:55 +0100)]
[DEVMGR] Implement missing device power information (current power state, power capabilities and power state mappings).
Amine Khaldi [Sun, 21 Jan 2018 21:45:12 +0000 (22:45 +0100)]
[SECUR32_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:44:28 +0000 (22:44 +0100)]
[SCRRUN_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:43:47 +0000 (22:43 +0100)]
[REGEDIT_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:43:04 +0000 (22:43 +0100)]
[PSAPI_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:42:20 +0000 (22:42 +0100)]
[OPENGL32_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:40:45 +0000 (22:40 +0100)]
[NETAPI32_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:39:53 +0000 (22:39 +0100)]
[MSVCRT_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:38:00 +0000 (22:38 +0100)]
[CMD_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:34:54 +0000 (22:34 +0100)]
[QUARTZ_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:33:20 +0000 (22:33 +0100)]
[QUARTZ] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:32:08 +0000 (22:32 +0100)]
[QEDIT_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:31:34 +0000 (22:31 +0100)]
[QEDIT] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:30:36 +0000 (22:30 +0100)]
[DXDIAGN_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:29:51 +0000 (22:29 +0100)]
[DXDIAGN] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:28:27 +0000 (22:28 +0100)]
[DPLAYX_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:27:32 +0000 (22:27 +0100)]
[DINPUT_WINETEST] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:26:41 +0000 (22:26 +0100)]
[DINPUT] Sync with Wine 3.0. CORE-14225
Amine Khaldi [Sun, 21 Jan 2018 21:25:39 +0000 (22:25 +0100)]
[DEVENUM] Sync with Wine 3.0. CORE-14225