Commit graph

70131 commits

Author SHA1 Message Date
Amine Khaldi b439381523 [CRT/INTRIN] Leverage __has_builtin() with the intrinsics. Dedicated to Thomas. CORE-11799 (#94) 2017-11-19 15:20:02 +01:00
Giannis Adamopoulos 3a68bebf87 [UXTHEME] EnumThemes: Don't fail if a theme doesn't have a tooltip. CORE-13732 2017-11-19 16:02:44 +02:00
Katayama Hirofumi MZ 3dbd44fde1 input: Overwrite font substitutes settings on lang change 2017-11-19 14:36:32 +01:00
Hermès Bélusca-Maïto 7bd33ac4df
[CMD] Addendum to 26ff2c8 and to r40474 / 8cf1106: Fix CMD process exit code.
As it appears, the process exit code of CMD /C is really the errorlevel,
and not the "command's return value".
2017-11-19 00:48:37 +01:00
Hermès Bélusca-Maïto 26ff2c8ef3
[CMD] Fix the errorlevel value set by the EXIT command, and when a batch file has run.
CORE-10495 CORE-13672

- Fix the behaviour of the EXIT command, where it set the last errorlevel
  value ONLY when it was called with the /b switch and otherwise kept the
  ambient one, instead of always using the value that the user specified
  on the command-line.

- When a batch file has terminated, make the Batch() helper returning the
  errorlevel value so that, when the batch file has been started with the
  CALL command, CALL can in turn set the correct errorlevel value.

Verified with respect to Windows' cmd.exe.
2017-11-18 23:52:50 +01:00
Hermès Bélusca-Maïto 24ed534474
[CMD] Code formatting only. 2017-11-18 23:52:50 +01:00
Serge Gautherie 1456310503
[FREELDR] PcMemGetBiosMemoryMap(): Add checks for entry sizes and bare handling of error case. CORE-13332 2017-11-18 21:54:14 +01:00
Pierre Schweitzer 2ddebe3291
[NFS41_NP] Attempt to fix MSVC build 2017-11-18 21:36:57 +01:00
Pierre Schweitzer 45b543202d
[SHELL32] Drop slash when dismounting a remote drive. MPR and NP are expecting a drive letter.
This fixes dismounting a network drive using explorer.
2017-11-18 21:27:30 +01:00
Pierre Schweitzer 764b2b6ef7
[NFS41_NP] Fix debug print in case of connection cancel failure 2017-11-18 21:27:30 +01:00
Hermès Bélusca-Maïto 56a19b1439
[CMD] ExecutePipeline() returns the last error level (set to process exit code).
CORE-13974

This should fix situations where (for example):
   command_1 | command_2 && echo Succeeded
should *NOT* run "echo Succeeded" if any of the command_1 or command_2 has
failed.

This also makes the ExecutePipeline() function on par with the other
"ExecuteXXX()" helpers.

Problem diagnosed by Doug Lyons; patch inspired by contributor 'cagey45'.
2017-11-18 20:59:06 +01:00
Pierre Schweitzer 0701527f20
[SHELL32] Update French translation, following 6465705 2017-11-18 18:56:59 +01:00
Pierre Schweitzer 2284a457a3
[NTOSKRNL] Fix MSVC build: don't attempt to return in a void function 2017-11-18 18:38:36 +01:00
Pierre Schweitzer ec6b3ecbe4
[CDFS] Attempt to a switch to the MS CDFS driver.
To be reverted if it brings in too many regressions, even though I tried to do my best to address them.

Leaving the old driver in place, for now; if no regressions are reported regarding CDFS in 0.4.8, then old driver could be dropped for 0.4.9.
2017-11-18 18:32:36 +01:00
Pierre Schweitzer d3d5853956
[NTOSKRNL] Implement FsRtlCheckOplock(), FsRtlCurrentBatchOplock(), FsRtlInitializeOplock(), FsRtlOplockFsctrl(), FsRtlOplockIsFastIoPossible(), FsRtlUninitializeOplock().
But also, implement FsRtlNotifyCompletion(), FsRtlCompletionRoutinePriv(), FsRtlRemoveAndCompleteWaitIrp(), FsRtlCancelWaitIrp(), FsRtlWaitOnIrp(), FsRtlOplockBreakNotify(), FsRtlRemoveAndCompleteIrp(), FsRtlCancelOplockIIIrp(), FsRtlAcknowledgeOplockBreak(), FsRtlOpBatchBreakClosePending(), FsRtlAllocateOplock(), FsRtlCancelExclusiveIrp(), FsRtlRequestExclusiveOplock(), FsRtlRequestOplockII(), FsRtlOplockCleanup(), FsRtlOplockBreakToNone(), FsRtlOplockBreakToII().
In short... Implement oplocks support in ReactOS.
2017-11-18 18:23:57 +01:00
Thomas Faber 89e83b2cf4
[CRT] Add __m128i, _mm_setzero_si128, and _mm_stream_si128. 2017-11-18 18:05:24 +01:00
Thomas Faber 631d1e071c
[RTL] Make RtlFillMemoryUlonglong public 2017-11-18 18:05:22 +01:00
Pierre Schweitzer 2b217e4ecf
[NTOSKRNL]
Don't make CcSetReadAheadGranularity() whine for every single file opened by FSDs making use of it.
2017-11-18 18:00:48 +01:00
Pierre Schweitzer 64cb138a67
[NTOSKRNL] In CcPurgeCacheSection(), don't assume the file being purged isn't used. Handle that case properly instead of asserting.
This fixes a triggerable ASSERT from umode where you open a file on a CDFS (with MS CDFS) and attempt to lock the volume.
2017-11-18 17:54:54 +01:00
Pierre Schweitzer 4768a371f4
[NTOSKRNL]
When CcPurgeCacheSection() succeed, make it return TRUE so that callers don't believe it always fail
2017-11-18 17:54:54 +01:00
Katayama Hirofumi MZ 5d2e34d1d4 [FONTS] Add more font substitutes. CORE-12419
Substitute Comic Sans MS with Ubuntu, Georgia with FreeSerif and Palatino Linotype with DejaVu Serif.
2017-11-18 17:11:16 +02:00
Katayama Hirofumi MZ 64657051c3 [SHELL32] CDrivesFolder: Implement the eject and disconnect menu items. CORE-13841
- The items are shown only for the drives where they are applicable.
- May not work fully yet due to bugs in the drivers.
2017-11-18 16:55:08 +02:00
Stanislav Motylkov 06919cde1a [BROWSEUI] [TRANSLATION] Improve english, polish and russian translation 2017-11-18 16:43:27 +02:00
Jérôme Gardou 89dbc88a2c [WIN32SS]
- Unconditionally enter NtUser implementation in EngCreateWnd and EngDeleteWnd
CORE-7727
2017-11-18 12:15:45 +01:00
Jérôme Gardou 3e1a54151f [WIN32SS]
- Do not call the driver Escape routine while holding locks on GDI objects
CORE-7727
2017-11-18 12:15:45 +01:00
Stanislav Motylkov e12763d5bc [BROWSEUI] CISFBand: Add "Open Folder" feature
CORE-13996 #resolve
2017-11-18 12:08:16 +02:00
Stanislav Motylkov f01e6ed6c5 [BROWSEUI] CBandSiteMenu: Show Toolbar error on failure 2017-11-18 11:40:58 +02:00
Pierre Schweitzer f723d230a0
[CDFS_NEW] _SEH2_FINALLY implement SEH support for real instead of its current stub.
This notably fixes BSOD on media change
2017-11-17 22:20:13 +01:00
Alexander Shaposhnikov 519620ce61
README.md: Add "Tweet" button 2017-11-17 22:15:46 +02:00
Mark Jansen 64d10228ee [OPENGL32] Allocate thread data in IntMakeCurrent if it is not allocated yet.
CORE-12232
2017-11-17 19:34:06 +01:00
Mark Jansen fa9ce98d8e [OPENGL32] Do not crash in IntGetCurrentDC if thread data was not allocated.
CORE-12232
2017-11-17 19:34:06 +01:00
Giannis Adamopoulos a4ea17218f [COMCTL32] Implement using different image list images depending on the button state 2017-11-17 14:44:52 +02:00
Hermès Bélusca-Maïto 3356f87b9e
[REACTOS] Add reactos/bin/suppl/ to the list of "known" (hardcoded) directories to make build configuration happy.
I use a (not yet used) dir-id value of "80" for this purpose (the value
"8" being already used for /bin/testdata/ and of course values from 9 up
to 50+ are also already used... >_>).
2017-11-17 01:48:18 +01:00
Hermès Bélusca-Maïto aa04c84f62
[ROSTESTS] Move the tests unsupported by rosautotest under a "suppl" (supplementary) sub-directory of "reactos/bin".
Indeed, rosautotest has an annoying tendency to fail with:
    Invalid test file name: <testname>.exe
    SYSREG_ROSAUTOTEST_FAILURE
when <testname>.exe is a test that do not comply with the rosautotest
interface.
This is indeed the case for all the tests under /rostests/win32/, with the
exception of cmd_rostest.

Addendum to 8dd89c7.
2017-11-17 01:26:02 +01:00
Hermès Bélusca-Maïto 8340574fe3
[CMD] Fix support for newlines in the emulated parenthesed set block of the "for" command.
CORE-7998
2017-11-17 00:58:45 +01:00
Hermès Bélusca-Maïto 8dd89c7cfc
[ROSTESTS] Start adding ReactOS-owned tests for cmd.exe, based on Wine's.
CORE-7998

Based on Wine's cmd_winetest code, this first bunch of tests check how the
"for" command should process the newlines inside its parenthesed set.
Adapted by Doug Lyons.
2017-11-17 00:58:45 +01:00
Giannis Adamopoulos 34c563fa2a [COMCTL32] Button: Don't use a class brush. CORE-13445 2017-11-17 01:26:37 +02:00
Hermès Bélusca-Maïto cfcca53856
[CMD] Fix '?' command output by adding a missing new-line. CORE-14016
Patch by Doug Lyons.
2017-11-16 21:27:27 +01:00
Serge Gautherie 067bb2fcef [SETUPAPI] driver.c: it is _WIN32_WINNT, not WIN32_WINNT. CORE-12580 2017-11-16 18:58:57 +01:00
Joachim Henze 6505026ea8 [RAPPS-DB] CORE-14012 update to ROSBE 2.1.5 2017-11-14 23:25:56 +01:00
David Quintana e10108c088 [EXPLORER] Remove version number from the start menu banner image, as requested.
Also, since we won't be editing the svg as often, move it to the media/graphics folder.
2017-11-14 18:15:34 +01:00
Stanislav Motylkov 66e3c1f73a [RAPPS] Add support for no-length downloads indication 2017-11-14 12:47:18 +02:00
Hermès Bélusca-Maïto 0b2bbd1125
[NTOS] Addendum to da81345: Fix checks when a hive is opened in shared mode. 2017-11-13 00:27:41 +01:00
Eric Kohl 3ad5c7fd84 [SETUPAPI] Improve the range list implementation.
- SEH-protect the range list validation and move it into a separate function.
- Use a mutex to synchronize access to the range list.
- Implement CM_First_Range and parts of CM_Add_Range.
2017-11-12 23:27:09 +01:00
Pierre Schweitzer faee3753ea
[CDFS_NEW] Now NtWriteFile is fixed, revert 5f25582, ie remove FastIO hack from the driver
CORE-14003
2017-11-12 22:39:40 +01:00
Pierre Schweitzer 1d777ffab5
[NTOSKNRL] In NtWriteFile, remove the check that is now redundant with ObReferenceFileObjectForWrite().
CORE-14003
2017-11-12 22:39:40 +01:00
Pierre Schweitzer c3d5a3f2bd
[NTOSKRNL] In NtWriteFile, quit using ObReferenceObjectByHandle in favor of ObReferenceFileObjectForWrite().
This avoids RO FSDs being called for write operations.
CORE-14003
2017-11-12 22:39:40 +01:00
Pierre Schweitzer 3b64f7f8fb
[NTOSKRNL] Implement (with many FIXMEs) ObReferenceFileObjectForWrite() so that it can already do the job!
CORE-14003
2017-11-12 22:39:40 +01:00
Pierre Schweitzer 7eefe70294
[NTOSKRNL] Implement IoComputeDesiredAccessFileObject() based on checks performed in NtFlushBuffersFile()
CORE-14003
2017-11-12 22:39:40 +01:00
Hermès Bélusca-Maïto da8134527b
[NTOS] Do not perform hive write operations when we are not supposed to.
- When we are in LiveCD mode (more generally, when hives are shared), load
  the system hives as volatile.
- Ignore hive write operations when everything operates in read-only mode
  and just return success instead.
- Just return success on hive file I/O if no file is associated with a
  given hive. This happens when e.g. a CM hive has a primary but no log.
2017-11-12 22:02:45 +01:00