Commit graph

71033 commits

Author SHA1 Message Date
Ivan Labutin
5ae2750467
[HAL] Implement APIC-based profiling for x64. 2018-02-15 12:45:29 +01:00
Thomas Faber
ad68422a7b
[IP] Silence "TCP operation failed" debug spam. 2018-02-15 12:26:35 +01:00
Giannis Adamopoulos
67f99833cd [SHELL32] CNewMenu: Don't use CWM_GETISHELLBROWSER.
CDefaultContextMenu: Set the site for context menu extensions
CNewMenu: Get SID_IFolderView service of the site to get the IShellView
2018-02-15 00:58:22 +02:00
Giannis Adamopoulos
b97886ea9f [SHELL32] Fix the toolbar buttons in the file open dialog
CDefView: Make GetItemObject return an IContectMenu after setting itself as the site.
CDefViewBckgrndMenu: Make the inner context menu use the same site. Implement handling CMDSTR_VIEWLISTA and CMDSTR_VIEWDETAILSA.
CDefaultContextMenu: CMDSTR_VIEWLISTA and CMDSTR_VIEWDETAILSA shouldn't be handled in this class.
Fixes CORE-14327 and the two buttons that change the view mode
2018-02-15 00:23:18 +02:00
Joachim Henze
e4aa45f63a [SHELL32] Fix glitch in de-DE.rc
checkbox captions are too long.
issue was introduced by 3624c5d6fd

fixes CORE-14329 for de-DE
2018-02-14 20:12:10 +01:00
Giannis Adamopoulos
111c40e012 [SHELL32] CDefViewBckgrndMenu: Fix handling string verbs.
It shouldn't be necessary for QueryContextMenu to be called before InvokeCommand.
Move retrieving the IContextMenu of the folder to the initialization of the class.
CORE-12866
2018-02-14 00:03:35 +02:00
Hermès Bélusca-Maïto
eb3987e172
[SHLWAPI] Import wine commit 2c163225730e88 as addendum to the SHCreateWorkerWindowW/A fixes from commit 770bf93. 2018-02-13 22:30:59 +01:00
Luo Yufan
37b9ca3fe3 [TRANSLATION][INF] Update Simplified Chinese translation. (#378) 2018-02-13 22:16:25 +01:00
Mark Jansen
fb7caa7452
[COMCTL32] Import wine commit 71cf0a31d99feb to fix the name column width in rapps. 2018-02-13 19:48:18 +01:00
Hermès Bélusca-Maïto
770bf93be3
[SHLWAPI] Improvements for SHCreateWorkerWindowW/A() prototypes + fix x64-bit compatibility. Sent upstream.
[SHLWAPI] Refactor the SHCreateWorkerWindowW() prototype to match its ANSI SHCreateWorkerWindowA() counterpart.

The last parameter is really to be understood as an extra window data, and not a "message result" (as it would be the case for dialog window procedure).
That is why I also remove the mention of "DWLP_MSGRESULT" in the SetWindowLongPtrW() call.
SHCreateWorkerWindowA() had it OK but SHCreateWorkerWindowW() did not.

------------------

[SHLWAPI] Make SHCreateWorkerWindowA() and SHCreateWorkerWindowW() x64-compatible.

The first parameter of these functions is a pointer to a window procedure, having a definite prototype, so employ a correct typedef WNDPROC,
which ensures both correct pointer size and parameter type enforcement.
This also ensures that we use instead a correct pointer size, since otherwise LONG remains 32-bits for Windows compatibility on x64 platforms.
The wndProc parameter is thus casted to LONG_PTR to comply with the SetWindowLongPtrA/W calls.

In SHCreateWorkerWindowW(), the last "wnd_extra" parameter should also be LONG_PTR to be able to pass 64-bit data pointer on x64 platforms.
Therefore fix also setting the wc.cbWndExtra size. One should note that the ANSI SHCreateWorkerWindowA() function had everything OK already.
2018-02-13 00:13:47 +01:00
Pierre Schweitzer
a5e89014dc
[CDFS_NEW] Fix a bug in Microsoft CDFS implementation where the top level IRP
is set before locking is actually attempted for Cc worker thread (lazy write/read ahead).
So in case locking fails, the top level IRP is set and never unset, and latter
call will hit the assert where it expects the top level IRP to be NULL.

Should be reported upstream (tm).

CORE-14315
2018-02-12 20:47:32 +01:00
Eric Kohl
6c9cdd84bb [SERVICES] Set a complete service status for running boot start or system start drivers 2018-02-12 15:50:30 +01:00
Eric Kohl
e917471e04 [SERVICES] Fix the initial service status
- The initial dwWin32ExitCode for a disabled service is ERROR_SERVICE_DISABLED and ERROR_SRVICE_NEVER_STARTED for non-disabled services.
- The initial dwWaitHint is 2000 (2 seconds) for (user-mode) services and 0 for drivers.
- Move all driver-related code to driver.c.
2018-02-12 14:58:02 +01:00
Serge Gautherie
12b0dfb71e [APPSHIM_APITEST] Fix 2 Clang-Cl warnings about ok2
"warning: expression result unused [-Wunused-value]"

CORE-14306
2018-02-12 12:34:20 +01:00
Serge Gautherie
f1535c2d6e [EXPLORER] Fix a Clang-Cl warning about Icon->ProcessId
"warning: expression result unused [-Wunused-value]"
Regressed in be2bf9b.

CORE-14306
2018-02-12 08:41:26 +00:00
Bișoc George
abdde0b764 [EXPLORER] WatchList should be freed with delete[], not delete (#374)
WatchList is a set of array objects, initialized with "new[]", so it should be freed with "delete[]" to free all of its elements. Otherwise using only "delete" only frees the first variable but not its array. This would lead to an undefined behaviour.
2018-02-11 22:56:38 +01:00
Hermès Bélusca-Maïto
075d58cc64
[CONUTILS] Relax the enforcement of using FORMAT_MESSAGE_MAX_WIDTH_MASK in the ConMsg* and ConResMsg* functions. 2018-02-11 18:10:08 +01:00
Hermès Bélusca-Maïto
a3403eff05
[MAGNIFY] Call PostQuitMessage() only at the very end. 2018-02-11 00:35:29 +01:00
Pierre Schweitzer
bd70987909
[NTOSKRNL] In debug builds, print more information about the top level IRP in the Cc worker thread
CORE-14315
2018-02-10 23:50:26 +01:00
Denis Malikov
420c0360ac
[SDK] Fix NT6 building issues and improve SDK NT6 headers.
CORE-12596
2018-02-10 18:58:35 +01:00
Serge Gautherie
44023cb7d7
[CRT:STARTUP] Fix a Clang-Cl warning about GS_ExceptionPointers
"warning: unused variable 'GS_ExceptionPointers' [-Wunused-const-variable]"
Missed in CORE-8626 r64704.

CORE-14306
2018-02-10 18:13:12 +01:00
Serge Gautherie
b789161199
[DXG] Fix a Clang-Cl warning about DDHAL_CB32_CANCREATESURFACE
"warning: use of logical '&&' with constant operand [-Wconstant-logical-operand]"

CORE-14306
2018-02-10 18:04:05 +01:00
Serge Gautherie
71ebfd8717
[OPENGLCFG] Fix a Clang-Cl warning about IDC_DEBUG_OUTPUT
"warning: use of logical '||' with constant operand [-Wconstant-logical-operand]"

CORE-14306
2018-02-10 18:04:03 +01:00
Thomas Faber
a7ef5747b5
[STRMBASE] Sync with Wine 3.0. CORE-14225 2018-02-10 17:53:05 +01:00
Eric Kohl
85b71880fa [SERVICES] Update the service status after unloading a driver
Update the service status after unloading the driver and pass the new status to the caller.

CORE-14269
2018-02-10 17:02:23 +01:00
David Quintana
3003471e64 [EXPLORER] Send balloon notifications to the callback message.
TODO: Send NIN_BALLOONUSERCLICK when the user clicks on the balloon content (not the X button).
2018-02-10 16:31:26 +01:00
Hermès Bélusca-Maïto
8b78b0ff98
[PSDK] Add missing shell notification message flags. 2018-02-10 15:43:24 +01:00
Eric Kohl
905d65b75b [SERVICES] Support the NoInteractiveServices registry value 2018-02-10 14:23:11 +01:00
Pierre Schweitzer
a6e080bd3d
[NTOSKRNL] Avoid private cache map allocation for the first handle
Standard shared cache map provides space for a private cache map, do the same
and make it available for the first handle. It avoids two allocations in a row.
2018-02-09 21:52:41 +01:00
Pierre Schweitzer
5d93941d31
[NTOSKRNL] Modified CcCanIWrite to handle Mm throttling limits 2018-02-09 14:22:00 +01:00
Pierre Schweitzer
6b0cb54fe5
[NTOSKRNL] Define the throttling limits for Cc in Mm: MmThrottleTop, MmThrottleBottom.
Modified !defwrites to reflect that change
2018-02-09 14:21:14 +01:00
Pierre Schweitzer
945ff8ea2e
[NTOSKRNL] Rewrite CcCanIWrite() to make it more accurate and handle specific callers 2018-02-09 13:56:16 +01:00
Pierre Schweitzer
f51b74ca61
[NTOSKRNL] Don't defer write through write operations 2018-02-09 12:25:58 +01:00
Pierre Schweitzer
d35243d4e0
[NTOSKRNL] Quickly implement the !defwrites in KDBG 2018-02-09 12:16:29 +01:00
Pierre Schweitzer
0518444217
[NTOSKRNL] Drop the iSharedCacheMapLock in favor of the master lock 2018-02-09 11:13:53 +01:00
Pierre Schweitzer
8119e0ad2b
[NTOSKRNL] Silence lazy writer now we know it works 2018-02-09 11:05:44 +01:00
Pierre Schweitzer
fc4744da5f
[NTOSKRNL] Use better locking for private cache map in CcRosReleaseFileCache().
Suggested by Thomas
2018-02-09 11:05:15 +01:00
Pierre Schweitzer
c5139563db
[NTOSKRNL] Bring an initial (and not perfect ;-)) implementation of read ahead to our Cc!
This halfplements CcScheduleReadAhead() which is responsible for finding the next reads
to perform given last read and previous reads. I made it very basic for now, at least
to test the whole process.
This also introduces the CcExpressWorkQueue in the lazy writer which is responsible
for dealing with read ahead items and which is dealt with before the regular queue.
In CcCopyData(), if read was fine, schedule read ahead so that it can happen in background
without the FSD to notice it! Also, update the read history so that scheduling as a
bit of data.
Implement (à la "old Cc" ;-)) CcPerformReadAhead() which is responsible for performing
the read. It's only to be called by the worker thread.

Side note on the modifications done in CcRosReleaseFileCache(). Private cache map
is tied to a handle. If it goes away, private cache map gets deleted. Read ahead
can run after the handle was closed (and thus, private cache map deleted), so
it is mandatory to always lock the master lock before accessing the structure in
read ahead or before deleting it in CcRosReleaseFileCache(). Otherwise, you'll
just break everything. You've been warned!

This commit also partly reverts f8b5d27.

CORE-14312
2018-02-09 10:14:11 +01:00
Alexander Shaposhnikov
f4fedb936e
[RAPPS] Fix column sorting
CORE-13793
2018-02-09 00:53:31 +02:00
Alexander Shaposhnikov
b698067e35
[RAPPS] Set header style when sorting by column 2018-02-09 00:41:55 +02:00
Pierre Schweitzer
f0c7f862d4
[NTOSKRNL] Fix a ****ing bug where private cache map was deleted in CcUninitializeCacheMap()
before the call to CcRosReleaseFileCache() which expects to have it to properly clean the file.
So, move deletion code to CcRosReleaseFileCache() so that he's the only one to handle private map.
Should hopefully fix all the recent buildbots issues (and the universe perhaps, who knows?)
2018-02-08 14:15:02 +01:00
Pierre Schweitzer
f8b5d27807
[NDK] Update the PRIVATE_CACHE_MAP structure to match W2K3 one.
Also update the spin lock on allocation.
2018-02-08 14:02:42 +01:00
Pierre Schweitzer
de897cbe3d
[NTOSKRNL] Revert 2362e0f and 07e6e9c (partly) they seem to have caused high instability in Cc.
This reverts BCB being lazy written when marked dirty.

We'll go back to this behavior when this part will have been reworked and stabilized.

CORE-14263
CORE-14279
CORE-14285
2018-02-08 13:40:54 +01:00
Pierre Schweitzer
e26e4445b3
[NTOSKRNL] Revert 6ece4e9fc2 for third tools compatibility 2018-02-08 11:50:45 +01:00
Pierre Schweitzer
df5839db5b
[NTOSKRNL] Implement CcSetAdditionalCacheAttributes() 2018-02-08 11:49:22 +01:00
Pierre Schweitzer
f8c3f0c9c4
[NTOSKRNL] Misc cosmetic changes 2018-02-08 11:02:26 +01:00
Pierre Schweitzer
9c87925197
[NTOSKRNL] Implement CcSetReadAheadGranularity() 2018-02-08 11:02:26 +01:00
Pierre Schweitzer
c19c7c7674
[NTOSKRNL] Magic value-- 2018-02-08 11:02:26 +01:00
Thomas Faber
c0a227d9a5
[SYSDM] Make the GPL text ASCII. CORE-14278
This is better than wasting space on null chars (and having Git mangle it).
Also ensure that it gets CRLF newlines since its contents go in the binary.
2018-02-08 00:52:41 +01:00
Thomas Faber
2d887745a7
[LIBXML2] Restore lost ROS-diff introduced in 7571d351ce. CORE-14291 CORE-11799 2018-02-08 00:41:39 +01:00