Compare commits

...

5656 Commits

Author SHA1 Message Date
Joachim Henze
07ad6e87e7 [0.4.13] Branch releases/0.4.13 & change KERNEL_VERSION_BUILD_TYPE "RC" 2019-09-30 18:13:25 +02:00
Serge Gautherie
e413df4f4e [NTOS:MM] i386: Fix '_MI_NO_EXECUTE' typo
Addendum to 65dbfc2868.
2019-09-30 10:46:58 +03:00
Pierre Schweitzer
3f63f236ba [SDK] Make our MEMORY_SECTION_NAME definitions consistent.
I choose the definition which is also used by Wine & Chromium.

CORE-12043
2019-09-29 14:18:11 +02:00
Pierre Schweitzer
3b78ca210e [NTOSKRNL] Simplify buffer definition in MiQueryMemorySectionName().
Also take into account the UNICODE_STRING structure while computing whole size
This is based on Thomas' patch.

CORE-12043
2019-09-29 14:16:44 +02:00
Pierre Schweitzer
ad547c960f [NTDLL_WINETESTS] Section name query test is broken on W2K3 and will lead to a crash
Comment out the test for now and add a more "appropriate" test code for now
2019-09-29 14:13:55 +02:00
Thomas Faber
a66bee2837 [SHELLFOLDERS] Gracefully handle NULL pidl in CDrivesFolder::BindToObject. CORE-16403
Fixes one of many crashes in shell32_winetest:shlfolder.
2019-09-29 12:42:26 +02:00
Serge Gautherie
ed9f0dca14 [USBPORT] USBPORT_InvalidateEndpointHandler(): Properly enumerate endpoints 2019-09-29 13:39:12 +03:00
Victor Perevertkin
220bc820eb [FREELDR] Optimize and refactor the FAT driver.
Do not read the whole cluster chain for file on opening.
This removes restriction for opening files which span
within a large amount of clusters (>65k). That happened because
FrLdrTempAlloc cannot allocate more than about 256 KiB of memory.

Adjacent clusters for file are now read using one disk driver call.
2019-09-29 13:24:31 +03:00
Victor Perevertkin
195dc30484 [FREELDR] Add FAT caching to FAT filesystem driver.
This significantly increases the reading speed
2019-09-29 13:24:31 +03:00
Thomas Faber
be1f95527a [SHELL] IPersistIDList/IShellLink use P(C)IDLIST_ABSOLUTE. CORE-16385 2019-09-29 12:09:39 +02:00
Thomas Faber
b2992e7a5e [SHELL] IShellExtInit::Initialize uses PCIDLIST_ABSOLUTE. CORE-16385 2019-09-29 12:09:02 +02:00
Thomas Faber
6b0d2c2a2c [SHELL] Fix more IPersistFolder::Initialize prototypes. CORE-16385
Addendum to c2b476bd77.
2019-09-29 12:07:43 +02:00
Hermès Bélusca-Maïto
e995147a1c [HAL] Update the PCI hardware IDs database.
Extracted from the pci.ids database at https://pci-ids.ucw.cz/ from 2019-09-28 03:15:02 .
Maintained by Albert Pool, Martin Mares, Michal Vaner, and other volunteers from the PCI ID Project.
2019-09-28 18:52:59 +02:00
Stanislav Motylkov
07706eca3a [HAL] Fix more bugs in HalpDebugPciDumpBus (#1939)
- Don't match device id outside current vendor id list.
- Don't match subsystem id outside current device id list.
- Refactor some magic constants.

Addendum to 894635b.
2019-09-28 18:30:56 +02:00
Thomas Faber
6ec38aa942 [HDAUDBUS] Build a device instance ID from Codec & node number. CORE-13702 2019-09-27 21:29:41 +02:00
Pierre Schweitzer
96ee4509e5 [NTOSKRNL] Implement NtQuerySystemInformation(SystemLogicalProcessorInformation) 2019-09-27 20:36:59 +02:00
William Kent
bf8dda4c91 [CONFIGURE] Add support for latest MSVC toolchain (#1940) 2019-09-26 23:49:52 +02:00
Shy Zedaka
acaff47682 [BROWSEUI][SHELL32][TRANSLATION] Major Translations to BROWSEUI And New Search function to Hebrew, and Some Other changes. (#1938) 2019-09-26 22:18:59 +02:00
Thomas Faber
4c6cc29bb8 [HDAUDBUS] Fix timeouts for hardware register operations. CORE-15874
Most needed to be multiplied by 10 to match Haiku's behavior.
In one case, the broken timeout was offset by a higher number of loop
iterations, which is now  restored.

This should fix failures on real hardware that result in the
"unable to exit reset" print, and avoid a possible subsequent Pnp
manager crash.

Compare with the following (both snooze and KeStallExecutionProcessor use microseconds):
ff38df48cf/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp (L466)
ff38df48cf/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp (L357)
ff38df48cf/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp (L978)
2019-09-26 10:27:31 +02:00
Thomas Faber
934484ea3e [NTOS:PNP] When traversing the device tree, keep a reference to the current device. CORE-15874 2019-09-26 10:26:10 +02:00
Mark Jansen
08110c11d6 [APPHELP_APITEST] Make the db test succeed on 2k3 2019-09-25 20:46:57 +02:00
Mark Jansen
f9c63aa7a4 [APPHELP_APITEST] Make the apphelp test succeed on 2k3 2019-09-25 20:46:45 +02:00
Eric Kohl
bf854f5372 [POWERCFG] Fix the Indentation. No code changes! 2019-09-25 10:52:45 +02:00
James Tabor
1f78e8ec47 [Win32SS] Support Module Versioning.
Set the appropriate flags supporting versions of software modules.
Fix arguments for getting desktop DC.
2019-09-24 17:40:18 -05:00
Eric Kohl
6bf7a8edfb [SNDVOL32] Fix a typo in the bass and treble slider code 2019-09-24 23:28:17 +02:00
Oleg Dubinskiy
d4f2e4a378 [UTILMAN] Add Russian translation (#1934)
+ Update Copyright translation and the hotkey shortcut for the Cancel button.
Co-Authored-By: Stanislav Motylkov <x86corez@gmail.com>
2019-09-24 17:35:30 +02:00
Katayama Hirofumi MZ
64c5164405 Fix line spacing of Baltic MS Sans Serif (ssee1257.fon)
Line spacing to 6px.
Version 0.1.1
2019-09-24 18:01:59 +09:00
Stanislav Motylkov
894635bb00 [HAL] Fix parser bugs in HalpDebugPciDumpBus (#1895)
- Match subclass properly, don't match third subclass.
- Don't match subclass from next class, add ClassEnd boundary.
- Use class name if subclass name not available.
- Gracefully return "Unknown" if no class name found.
2019-09-23 23:46:23 +02:00
Lee Schroeder
43f03da358 [MSXML3R] XML/XSL file description localization (#1926)
Add localization for the file description of both XML and XSL file formats.
Please check for copypasta errors!

CORE-16390

Co-Authored-By: Stanislav Motylkov <x86corez@gmail.com>
2019-09-23 23:30:53 +02:00
Abdulganiev Rafael
9dd71e12b9 [TRANSLATION] Russian translation for browseui (#1928)
Co-Authored-By: Stanislav Motylkov <x86corez@gmail.com>
2019-09-23 23:28:46 +02:00
Eric Kohl
a800c764fa [INF] Create missing registry keys on TCPIP install
Create missing subkeys in order to prevent errors on adapter enumeration.

CORE-15231
2019-09-23 21:04:29 +02:00
Serge Gautherie
0339245859 [NTOS:KE] Fix 'Sert' typo, in a comment (#1929) 2019-09-23 01:13:07 +02:00
Joachim Henze
a40331b0f4 [COMCTL32] Workaround v6 button redraw regressions CORE-13278 & CORE-16093
Most likely not correct, as it breaks comctl32:buttonv6 tests
https://reactos.org/testman/compare.php?ids=68146,68147

But greatly eliminates perceived flickering when hovering
with the mouse about buttons in unthemed mode.
We suffered from these regressions for years and nobody did
find a proper solution, therefore it's time to at least workaround them.
The patch did not expose any new real-world-issues after I retested
the whole rapps suite against it in 0.4.12RCs.

I committed the same workaround already into 0.4.12-RC-30-g
9513c9bf12

CORE-13278 was once introduced/unhidden by SVN 73806 ==
c607de714c

CORE-16093 was once introduced/unhidden by SVN 74149 ==
301c476074
2019-09-22 21:17:10 +02:00
Joachim Henze
b7f62b9bf9 [BROWSEUI] RC de-DE of Search feature & Folderoptions caption CORE-16392 2019-09-22 19:11:39 +02:00
Thomas Faber
c2b476bd77 [SHELL] IPersistFolder::Initialize takes a PCIDLIST_ABSOLUTE. CORE-16385 2019-09-22 16:19:11 +02:00
Thomas Faber
b90c24d640 [SHELL] IPersistFolder2::GetCurFolder takes a PIDLIST_ABSOLUTE*. CORE-16385 2019-09-22 16:19:09 +02:00
Thomas Faber
4328daa6e4 [LABEL] Fix MSVC build. 2019-09-22 16:19:07 +02:00
Eric Kohl
87ecf824c0 [LABEL] Prompt the user to confirm the deletion of a volume label 2019-09-22 15:31:19 +02:00
Eric Kohl
6bfe4f68af [LABEL][CMD] Convert the label command to a standalone executable
CORE-9444
2019-09-22 14:51:23 +02:00
Thomas Faber
cf2b918e0f [SHELL32_APITEST] Fix PIDL leaks. 2019-09-22 11:42:10 +02:00
Thomas Faber
d41c5be3bd [BROWSEUI] Fix a PIDL leak. 2019-09-22 11:42:06 +02:00
Thomas Faber
cfc5b3749f [SHLWAPI] Import Wine commit c8175e6c7a7 (Fix Stat() method for file streams) by Nikolay Sivov.
Fixes crash in shlwapi_winetest:istream.
2019-09-22 11:42:01 +02:00
Thomas Faber
faae7e5790 [SHELL32] Handle BYREF variants in CFolderItems::Item.
Fixes crash in shell32_winetest:shelldispatch.

See also:
6634b31520
2019-09-22 11:41:57 +02:00
Thomas Faber
06e886086c [WS2_32_APITEST] Try to make the number of WSAAsync tests constant. 2019-09-22 11:41:40 +02:00
Serge Gautherie
085528c31a [MOUNTMGR] HasDriveLetter(): Simplify code by using a for() loop 2019-09-22 10:25:09 +02:00
Bișoc George
b6654c0fb5 [PSDK] Add missing declaration of WTSGetActiveConsoleSessionId() (#1920)
This allows this function to be used.
2019-09-21 18:51:28 +02:00
Mark Jansen
89761ef951 [CODEOWNERS] Add some entries, fix some others
Also delete a now obsolete comment
2019-09-21 17:40:51 +02:00
Katayama Hirofumi MZ
92443b4444 [USETUP] Improve Japanese translation (#1918) 2019-09-21 23:07:07 +09:00
Carlo Bramini
e7b8f27309 [OPENGLCFG] Fix crash if no drivers (#1919)
Actually, it crashes here on Windows XP.
2019-09-21 15:58:38 +02:00
James Tabor
c57d4d7b9e [User32|Tests] Sync Port Wine Combo Controls.
Need to cross check these changes with WINE ComCtl32 before you PANIC
HACK!!!!

Not in order:
Piotr Caban : Remove unneeded RECT parameter from CBPaintText helper.
              Don't invalidate ComboBox on CB_SETCURSEL message.
Don't invalidate ComboBox on LBN_SELCHANGE and
LBN_SELCANCEL.
              Add more CB_SETCURSEL tests on ComboBox.
              Redraw combo text field even if it's empty.
Let ComboBox edit control handle the redraw even if
CBF_NOREDRAW is set.
Don't do the painting if combobox is not visible in
CBPaintText.

Dmitry Timoshkov : Don't force a combobox repaint on WM_SIZE.

This breaks z-order based painting and causes side effects
for
applications that during the WM_PAINT processing reference
internal
             data associated with a not fully initialized window.
Ref :
2d9e3236ea

Fabian Maurer : Set listbox popup height correctly and add tests.

                Properly set dropdown height.

             Now that user32 and comctl32 combo are separated,
             this won't lead to a regression anymore
             Ref :
3d0be0bad8
             Info by Sebastian Lackner Ref:
f0fc034997

Nikolay Sivov : Remove some misleading TODOs and confusing comments.
2019-09-21 08:47:56 -05:00
Eric Kohl
432854ee18 [ATTRIB][CMD] Convert the 'attrib' command into a standalone executable
CORE-9444
2019-09-21 11:41:15 +02:00
Katayama Hirofumi MZ
81e27f0be7 [WIN32SS][NTUSER] Fix hit test position of popup menu
The submenu of desktop popup menu was erroneously shown at first right click.
- Fix the hit test position that was modified by window style change.
CORE-16382
2019-09-21 18:21:17 +09:00
Hermès Bélusca-Maïto
dff75d7162 OOPS - Nothing to see there :P
Revert commit 16a35353.
2019-09-21 04:38:47 +02:00
Hermès Bélusca-Maïto
7fccd6b763 [UBTRFS] Addendum to 255ef2c3: Add missing exports expected by mkbtrfs.
CORE-16383 CORE-16354
2019-09-21 04:35:01 +02:00
Hermès Bélusca-Maïto
16a3535378 WIP testing ISO 2019-09-21 04:28:28 +02:00
Adam Słaboń
c81af08f51 [TRANSLATION] Polish translation update (#1916)
Added translation for netstat, utilman and netplwiz. Updated translation of find, reg, rapps, regedit, sndvol32, usetup, hivesys, mmsys, openglcfg, powercfg, sysdm, shellext, browseui, devmgr, msgina, netcfgx, shell32, syssetup, shortcuts and vcdcontroltool.
2019-09-20 21:51:47 +02:00
Carlo Bramini
ec81c75b49 [OPENGLCFG] Add italian translation. (#1915) 2019-09-20 21:51:33 +02:00
Joachim Henze
841732e45c [COMCTL32] Updown Suppress the NM_RELEASEDCAPTURE notification CORE-14365
This fixes a strange toggle-back-effect in 'Zeckensacks Glide Wrapper 0.84c'
by importing Wine commit
9dbe886e3f
Thanks to patches author Akihiro Sagawa <sagawa.aki@gmail.com>
2019-09-20 20:13:09 +02:00
Joachim Henze
b9a2eee2f3 [USERINIT] Limit expanded Combobox height for LiveCD
v6 comboboxes default to displaying up to 30entries and
give a bad user experience in LiveCD
where we usually have low vertical screen resolution.
Therefore limit the height of the expanded boxes to
bring us close to how they were drawn before 0.4.12-dev-882-g
e3e173ffaa

Adding CBS_NOINTEGRALHEIGHT gives similar result for both:
comctl32 v5 and v6 comboboxes.

Similar commit for bootcd CORE-16252
went into 0.4.13-dev-740-g
8b67edd8fa
2019-09-20 18:18:19 +02:00
Carlo Bramini
adfef44688 [THEMES] Add italian translations (#1913)
* Include italian translation

* Include italian translation

* Add italian translation

* Add italian translation
2019-09-20 14:33:56 +02:00
Eric Kohl
5539ca8d7e [IPCONFIG] Improve the 'Autoconfiguration Enabled' information
- Show 'Autoconfiguration Enabled' only if DHCP is enabled for the adapter.
- Retrieve and display the autoconfiguration state.
2019-09-20 09:25:49 +02:00
Joachim Henze
d2976ca58e [EXPLORER] Mitigate CORE-15760 'system menu may close unexpectedly'
Looks like a race condition of the async part of SetForegroundWindow().

KVM https://reactos.org/testman/compare.php?ids=69065,69069
VBOX https://reactos.org/testman/compare.php?ids=69064,69068

I intend to merge that back into 0.4.12RC as well.
2019-09-20 00:11:10 +02:00
Eric Kohl
2ed695fc83 [FREELDR] Hack: Boot ReactOS even when a cdrom-drive does not report a proper geometry
We need to find a way to retrieve the LBA sector count of a drive, not only its CHS geometry.
2019-09-19 23:27:11 +02:00
Carlo Bramini
6f5ea7cfba [NETPLWIZ] Add Italian translation. (#1912) 2019-09-19 21:58:00 +02:00
Eric Kohl
af7456a1e4 [CABMAN] Third addendum to 7afc888: Also use the the old code in the Trucate() method on Linux 2019-09-19 15:36:18 +02:00
Eric Kohl
0e4dd0fcbc [CABMAN] Second addendum to 7afc888: Use the old code to make Linux happy.
Sorry for the noise, but I do not have a Linux machine to test the build. :-/
2019-09-19 15:25:23 +02:00
Eric Kohl
2949b2f08b [CABMAN] Addendum to 7afc8882: Use PATH_MAX instead of MAX_PATH 2019-09-19 15:07:57 +02:00
Eric Kohl
7afc888279 [CABMAN] Do not use tmpfile() because it does not work well on Windows XP
- Use tempnam() and fopen() instead.
- Prevent the use of file names with a leading slash or backslash.
- Also prevent the use of file names with a trailing dot.
- Remove temporary files after use.
2019-09-19 14:56:50 +02:00
Hermès Bélusca-Maïto
658d5a3ff5 [FREELDR] Rename the PE loader functions 'PeLdr*' instead of 'WinLdr*'. 2019-09-19 02:53:57 +02:00
Hermès Bélusca-Maïto
97f31ac396 [SDK:NT] Remove Win32-isms. 2019-09-19 02:39:59 +02:00
Hermès Bélusca-Maïto
e18e7b100c [FREELDR] Implement 'SeekRelative' mode for the *Seek() methods for disks & filesystems. 2019-09-18 02:42:56 +02:00
Hermès Bélusca-Maïto
dd46d40fd2 [FREELDR] Addendum / actual fix for ef76709b
According to the Advanced RISC Computing Specification v1.2, for partitions,
StartingAddress and EndingAddress are the start and end positions of the
partition in terms of byte offsets from the start of the disk.
CurrentAddress is the current offset into (i.e. relative to) the partition.

Fix also the FAT filesystem in accordance.

- FIXME fix: Retrieve the size of the disk in number of sectors in DiskOpen().
- Add extra validity checks in the DiskSeek() functions.
- Explicitly call PcDisk* functions in machpc.c and pcdisk.c, and
  XboxDisk* functions in machxbox.c (the code in these files is not
  called cross-platform).

CORE-16216 CORE-16248
2019-09-18 01:12:58 +02:00
Hermès Bélusca-Maïto
ff85aa0c38 [FREELDR] Other enhancements.
- Modify DiskReportError() to use an internal "display counter", so that
  imbricated DiskReportError(FALSE) ... DiskReportError(TRUE) can behave
  as expected.
- Merge LoadAndBootDrive(), LoadAndBootPartition(),
  LoadAndBootBootSector() into one LoadAndBootDevice() function + its
  helpers (in progress...).
2019-09-18 00:27:53 +02:00
Hermès Bélusca-Maïto
fc29a6c41c [FREELDR] Minor code improvements + 1 bug-fix.
- "FrldrBootPath" -> "FrLdrBootPath";
- Get rid of GetFreeLoaderVersionString() and use FrLdrVersionString
  directly instead;
- Rephrase some comments;
- Use RTL_NUMBER_OF();
- Reduce indent level in LoadOperatingSystem() and EditOperatingSystemEntry().

Bug fix:
- Fix DissectArcPath() for "ramdisk(0)" case.
2019-09-17 23:24:51 +02:00
Pierre Schweitzer
86c94e7858 [BROWSEUI] Translate search function into French
CORE-9279
2019-09-17 23:06:34 +02:00
Eric Kohl
a66c7d2ecc [LSA][SECUR32] Check for untrusted clients
Calls  to LsapCallAuthenticationPackage are routed to LsaApCallPackageUntrusted instead of LsaApCallPackage for  untrusted clients.
2019-09-17 12:58:11 +02:00
Eric Kohl
ba43d1e839 [MSV1_0] Implement LsaApCallPackageUntrusted()
An untrusted client is only allowed to change passwords
2019-09-17 12:46:49 +02:00
Eric Kohl
95dd1c6705 [SYSDM] Store the profile path in the PROFILEDATA struct for deleting and copying the profiles 2019-09-16 08:51:08 +02:00
Brock Mammen
9b75b67e9d [SHELLFIND] Use IS_INTRESOURCE() 2019-09-15 19:46:36 +03:00
Brock Mammen
e9bd402713 [COM_APITEST] Remove duplicate interface 2019-09-15 19:46:36 +03:00
Brock Mammen
8da23e7eb9 [SHELLFIND] Add missing dependency to CMakeLists.txt 2019-09-15 19:46:36 +03:00
Brock Mammen
b16b396ca0 [COM_APITEST] Add CFindFolder test 2019-09-15 19:46:36 +03:00
Brock Mammen
80f67b1111 [BROWSEUI] Add search strings to all language resources 2019-09-15 19:46:36 +03:00
Brock Mammen
e32b88be3d [BROWSEUI] Add search dialog to all language resources 2019-09-15 19:46:36 +03:00
Brock Mammen
0311544bb3 [SHELLFIND] Fix return values 2019-09-15 19:46:36 +03:00
Brock Mammen
b766576487 [SHELLFIND] Remove unused COM interfaces 2019-09-15 19:46:36 +03:00
Brock Mammen
8228844241 [SHELLFIND] Remove unused functions 2019-09-15 19:46:36 +03:00
Brock Mammen
12451dc172 [SHELLFIND] Change parameter from array reference to pointer 2019-09-15 19:46:36 +03:00
Brock Mammen
7ac9fd9f51 [SHELLFIND] Remove unnecessary cast 2019-09-15 19:46:36 +03:00
Brock Mammen
0eee3ed368 [SHELLFIND] Remove redundant check 2019-09-15 19:46:36 +03:00
Brock Mammen
2513c47452 [SHELLFIND] Fix unsafe cast 2019-09-15 19:46:36 +03:00
Brock Mammen
fbdc08dceb [SHELLFIND] Use CoTaskMemAlloc instead of SHAlloc 2019-09-15 19:46:36 +03:00
Brock Mammen
d0171027e0 [SHELLFIND] Fix IImageList leak 2019-09-15 19:46:36 +03:00
Brock Mammen
a3ee648d8b [SHELLFIND] Simplify PIDLs to paths 2019-09-15 19:46:36 +03:00
Brock Mammen
0f995d77d1 [SHELLFIND] Remove search results folder from address edit box 2019-09-15 19:46:36 +03:00
Brock Mammen
e6a5821e0c [SHELLFIND] Subscribe to folders that are already opened 2019-09-15 19:46:36 +03:00
Brock Mammen
07d37180a1 [SHELLFIND] Open search bar when search results folder is opened 2019-09-15 19:46:36 +03:00
Brock Mammen
312b628fe1 [SHELLFIND] Remove dependency on internal shell32 functions 2019-09-15 19:46:36 +03:00
Brock Mammen
6c6fd6d989 [SHELLFIND] Localize column names 2019-09-15 19:46:36 +03:00
Brock Mammen
641988a386 [SHELLFIND] Rename data members 2019-09-15 19:46:36 +03:00
Brock Mammen
fe5c76a034 [SHELLFIND] Fix handle leak for stop event 2019-09-15 19:46:36 +03:00
Brock Mammen
dce5ccec4e [SHELLFIND] Use DeferWindowPos for resizing child windows 2019-09-15 19:46:36 +03:00
Brock Mammen
8aa063b451 [SHELLFIND] Use assignment instead of memcpy 2019-09-15 19:46:36 +03:00
Brock Mammen
3b9508e98f [SHELLFIND] Fix copyright headers 2019-09-15 19:46:36 +03:00
Brock Mammen
e15445e0c5 [SHELLFIND] Remove unused function 2019-09-15 19:46:36 +03:00
Brock Mammen
ff7e9870ce [SHELLFIND] Remove unnecessary data member for focus 2019-09-15 19:46:36 +03:00
Brock Mammen
a905699ac6 [SHELLFIND] Use case-insensitive string comparison 2019-09-15 19:46:36 +03:00
Brock Mammen
87c1f457eb [SHELLFIND] Improve search bar UI 2019-09-15 19:46:36 +03:00
Brock Mammen
c46d60360a [SHELLFIND] Update status bar text 2019-09-15 19:46:36 +03:00
Brock Mammen
8246cd4e1b [SHELLFIND] Remove duplicate search code 2019-09-15 19:46:36 +03:00
Brock Mammen
41f9ad120d [SHELLFIND] Add stop search command 2019-09-15 19:46:36 +03:00
Brock Mammen
41d7b3700d [SHELLFIND] Add search command events 2019-09-15 19:46:36 +03:00
Brock Mammen
2f3db8d9a3 [SHELLFIND] Add search functionality 2019-09-15 19:46:36 +03:00
Brock Mammen
3583900b17 [SHELLFIND] Move window message constants to header file 2019-09-15 19:46:36 +03:00
Brock Mammen
6d6bc885cb [SHELLFIND] Use smart pointers for PIDLs 2019-09-15 19:46:36 +03:00
Brock Mammen
27ca55bce6 [SHELLFIND] Add edit box for search location 2019-09-15 19:46:36 +03:00
Brock Mammen
363ddf9c70 [SHELLFIND] Set status bar text after opening search results folder 2019-09-15 19:46:36 +03:00
Brock Mammen
04fcbe3202 [SHELLFIND] Message handler for updating status bar text 2019-09-15 19:46:36 +03:00
Brock Mammen
2fdaa386d2 [SHELLFIND] Add "Open Containing Folder" to right-click menu 2019-09-15 19:46:36 +03:00
Brock Mammen
7c937bd9ef [SHELLFIND] Add search bar click handler for testing search results 2019-09-15 19:46:36 +03:00
Brock Mammen
06fd04d7b0 [SHELLFIND] Message handler for adding search results 2019-09-15 19:46:36 +03:00
Brock Mammen
666bf34640 [SHELLFIND] Create PIDLs and add search results to folder 2019-09-15 19:46:36 +03:00
Brock Mammen
9c29004090 [SHELLFIND] Set default folder view mode to details 2019-09-15 19:46:36 +03:00
Brock Mammen
c0799cd25b [SHELLFIND] Add default columns from CFSFolder 2019-09-15 19:46:36 +03:00
Brock Mammen
ccf9ce324f [SHELLFIND] Add CFindFolder 2019-09-15 19:46:36 +03:00
Brock Mammen
7544656b85 [SHELLFIND] Open search results folder with search button 2019-09-15 19:46:36 +03:00
Brock Mammen
4212f4b175 [SHELLFIND] Add CSearchBar 2019-09-15 19:46:36 +03:00
Brock Mammen
957a604b36 [SHELL32] Implement CDefView::AddObject() 2019-09-15 19:46:36 +03:00
Brock Mammen
e7e551afda [SHELL32] Make SHFindFiles open the search results folder 2019-09-15 19:46:36 +03:00
Brock Mammen
4d097cf8b4 [EXPLORER] Open search from start menu 2019-09-15 19:46:36 +03:00
Timo Kreuzer
1bcc69b1a0 [KERNEL32_APITEST] Fix a test that fails on Server 2003 and Windows 10 2019-09-15 14:14:06 +02:00
Timo Kreuzer
e8ab2736e7 [SPEC2DEF] Refactor to avoid parsing multiple times 2019-09-15 14:12:42 +02:00
Timo Kreuzer
9cff65970f [SPEC2DEF] Fix decorated exports on non-x86 2019-09-15 14:12:42 +02:00
Timo Kreuzer
824e08c710 [SPEC2DEF] Handle auto-naming of "@()" functions during output
This allows to do the parsing and output separately, since the generated name is no longer stored on the stack during parsing.
2019-09-15 14:12:42 +02:00
Pierre Schweitzer
8b0086e465 [MOUNTMGR_APITEST] Add an extra test for query failure 2019-09-15 12:29:15 +02:00
Timo Kreuzer
80c0b083d8 [SPEC2DEF] Use const properly 2019-09-15 12:06:47 +02:00
Timo Kreuzer
c95b5e6f9b [SPEC2DEF] Improve error output 2019-09-15 12:06:47 +02:00
Eric Kohl
05f0b08085 [SYSDM] Allow deleting and copying of user profiles only for profiles that are currently not in use 2019-09-14 12:22:54 +02:00
Pierre Schweitzer
20b4f0a231 [FLOPPY] Implement IOCTL_MOUNTDEV_QUERY_DEVICE_NAME 2019-09-14 10:48:19 +02:00
Pierre Schweitzer
bf6215c601 [MOUNTMGR] Properly enumerate pending IRPs on cleanup
CORE-16370
2019-09-14 09:41:47 +02:00
Pierre Schweitzer
0a5f86d44a [MOUNTMGR] Fix MountState usage in MountMgrTargetDeviceNotification
CORE-13882
2019-09-13 20:08:39 +02:00
Pierre Schweitzer
5c678a76a6 [MOUNTMGR] Fix broken check
Only mark volume mounted if it's not waiting for unloading

CORE-13882
2019-09-13 20:08:39 +02:00
Pierre Schweitzer
b804b7fa9e [SDK] Define DO_UNLOAD_PENDING
Based on: http://www.perisoft.net/engineer/wdmcard.htm

CORE-13882
2019-09-13 20:08:39 +02:00
Timo Kreuzer
a4ca5f05d1 [GDI32_APITEST] Fix AddFontResource test (#1901)
This commit uses GetCurrentDirectoryA rather than GetWindowsDirectoryA for convenience.
2019-09-14 00:25:20 +09:00
Hermès Bélusca-Maïto
a9411fb658 [FREELDR] Minor code style - use RtlZeroMemory(); shorter member name; use different debug channel. 2019-09-13 15:18:28 +02:00
Hermès Bélusca-Maïto
eeff926ede [FREELDR] Limit the usage of DiskStopFloppyMotor() in hardware/platform-specific code.
- Move DiskStopFloppyMotor() calls into the implementations of
  Boot(New)LinuxKernel() and Reboot() HW functions, and the explanation
  comments in ChainLoadBiosBootSectorCode().

- Remove unneeded DiskStopFloppyMotor() dummies in ARM and PPC code.

- Use more adequate bitmask value to be sent to floppy's Digital Output
  Register for shutting down its motor (based on OSDev & our floppy
  controller driver).
2019-09-13 15:18:27 +02:00
Hermès Bélusca-Maïto
4843c1a954 [FREELDR] Other enhancements.
- Add optional arguments BootDrive and BootPartition to
  ChainLoadBiosBootSectorCode() so as not to modify explicitly the
  FrldrBootDrive and FrldrBootPartition variables, that should remain
  purely internal.

- Implement ChainLoadBiosBootSectorCode() for x64.

- Get rid of the machine-specific DiskGetBootPath(), and instead do its
  job only once in the machine-specific InitializeBootDevices() (or in
  MachInit() for PPC).
  Cache the result of this operation into the globally-accessible
  FrldrBootPath buffer. This avoids the unneeded calls to (Mach)DiskGetBootPath()
  we used to do before.
  Also remove the separate distinction between the PC and XBOX versions
  of this functionality.

- Move the PC-specific DiskIsDriveRemovable() and DiskGetBootPath()
  as well as the disk-IO-error functionality, back into the
  corresponding PC-arch files.

- Simplify IniFileInitialize(), getting rid of IniOpenIniFile().
2019-09-13 15:18:07 +02:00
Stanislav Motylkov
b16ca9cd65 [WIN32SS][NTUSER] Fix debug print in winpos.c (#1893) 2019-09-12 15:53:29 +02:00
Eric Kohl
3d0ae05303 [SYSDM] Show the profile type (local or roaming) in the type column, show the other profile states in the status column 2019-09-12 10:23:33 +02:00
Eric Kohl
6984729f81 [SYSDM] Improvements to the user profile size format 2019-09-11 15:12:26 +02:00
Eric Kohl
7072a34739 [SYSDM] Calculate and display the size of the user profiles 2019-09-11 10:14:02 +02:00
Eric Kohl
cd2d97873e [SYSDM] Remove unused variables
Thanks a lot Katayama Hirofumi for the hint!
2019-09-10 15:38:29 +02:00
Eric Kohl
48c01c8717 [SYSDM] Check the profile directory and hive file and display the last write date of the hive file. 2019-09-10 13:40:47 +02:00
Katayama Hirofumi MZ
b81f9b0842 [WIN32SS][FONT] Fix registry-based management (#1879)
CORE-16269
- Fix and improve registry-based font entry management.
- Append style name to registry value name.
- Make some DPRINT DPRINT1 (noisy).
2019-09-10 20:39:52 +09:00
Timo Kreuzer
eaf24cc380 [DLLEXPORT_TEST] Fix duplicated export on non-x86 architectures 2019-09-08 16:59:57 +02:00
Timo Kreuzer
175abab7ad [IPHLPAPI] Simplify spec file
Also move the exports where they are on Windows. This was already handled correctly by MSVC and still doesn't fix the order on GCC builds, but that is a different story and shall be addressed at a different time.
2019-09-08 16:23:46 +02:00
Timo Kreuzer
76eed61813 [IPHLPAPI] Improve function stubs 2019-09-08 16:23:46 +02:00
Timo Kreuzer
2adbfdf6cd [PSDK] Add fltdefs.h 2019-09-08 16:23:46 +02:00
Carlo Bramini
6b8d722bb2 Fix italian translation: "Cancella" -> "Annulla" (#1902) 2019-09-08 14:04:41 +02:00
Timo Kreuzer
85616bc8b2 [SETUP] Add support for archtitcure specific inf sections and use it for x64 computer type 2019-09-08 10:42:16 +02:00
Timo Kreuzer
a71a6531ef [UNIATA] Fix uniata on x64 2019-09-08 10:39:01 +02:00
Thomas Faber
acfea670fe [KMTESTS:EX] Try to avoid some spurious test failures.
E.g. https://reactos.org/testman/detail.php?id=43906459&prev=43889679

This test depends on the timeout to be long enough for another thread to
actually have started waiting, which may take longer than 10ms under load.
2019-09-08 08:06:51 +02:00
Thomas Faber
5d4f13f625 [ACPICA] Update to version 20190816. CORE-16368 2019-09-08 07:46:53 +02:00
Pierre Schweitzer
7ff3658f10 [BTRFS] Reenable the MountMgr thread
Now that IOCTL_MOUNTMGR_QUERY_POINTS and IOCTL_MOUNTMGR_CHANGE_NOTIFY have
been fixed, the thread no longer eats 100% CPU nor prevent ReactOS shutdown
2019-09-07 23:28:58 +02:00
Pierre Schweitzer
d904ee19c5 [MOUNTMGR] Properly return EpicNumber in MountMgrChangeNotify 2019-09-07 23:07:54 +02:00
Serge Gautherie
400eb23a64 [BTRFS] Revert "Allow driver to start at first stage when no hive is present."
Not needed anymore.

This reverts commit 80e11516b1.
2019-09-07 19:58:03 +02:00
Serge Gautherie
e08dc30569 [BTRFS] Revert "Leak the root stream file object on mount."
Not needed anymore.

This reverts commit c13ccc92f6.
2019-09-07 19:58:03 +02:00
Pierre Schweitzer
ddc853a4be [SDK] Workaround MSVC2010 not having _Bool type
CORE-16366
2019-09-06 08:56:58 +02:00
Pierre Schweitzer
6e3c0d360b [BTRFS] bool must be 1-sized
CORE-16366
2019-09-06 08:56:26 +02:00
Serge Gautherie
b45f27cf2e [MOUNTMGR] Remove a leftover UNREFERENCED_PARAMETER()
Addendum to 77657c22c9.
2019-09-06 08:34:14 +02:00
Pierre Schweitzer
ff19ce934b [MOUNTMGR] Don't overrun output buffer in QueryPointsFromMemory 2019-09-06 08:30:18 +02:00
Pierre Schweitzer
26a31b160a [MOUNTMGR] Fix QueryPointsFromSymbolicLinkName and make it working
Select the current stack location for output buffer
And set output size so that buffer gets properly copied to caller
2019-09-06 08:28:36 +02:00
Pierre Schweitzer
16ec2e2aa5 [MOUNTMGR_APITEST] Add a test suite for the mount manager
It only tests IOCTL_MOUNTMGR_QUERY_POINTS for now
2019-09-05 08:36:20 +02:00
Pierre Schweitzer
d592e00dfa [MOUNTMGR] Fix QueryPointsFromMemory and make it working
Select the current stack location for output buffer
And set output size so that buffer gets properly copied to caller
2019-09-05 08:36:19 +02:00
Pierre Schweitzer
70d29ec423 [MOUNTMGR] Properly validate input buffer size
This avoids IOCTL_MOUNTMGR_QUERY_POINTS always failing
2019-09-05 08:36:19 +02:00
Pierre Schweitzer
77657c22c9 [MOUNTMGR] Fix global symbolic link creations
They were wrongly pointing to the original target once rewritten
instead of pointing to the proper target: the device.

This notably fixes opening the MountMgr device from user
mode (to perform IOCTL calls, for instance), and might
also fix various bugs dealing with global namespaces.
This might have some various effects in ReactOS~.
2019-09-05 08:36:19 +02:00
jimtabor
6f353f7747 [Win32SS|Eng] Update stubs.
These functions are no longer support for UMPD.
2019-09-04 13:09:34 -05:00
Victor Perevertkin
bc44b334d7 [TXTSETUP] Revert an accidental change 2019-09-04 17:54:00 +03:00
Victor Perevertkin
6392c5a78c [USBHUB_NEW] Enable generic USB hubs (USB class 09)
They actually work, tested on a couple of real devices
2019-09-04 05:26:02 +03:00
jimtabor
3ca67d97e2 [Win32SS] Fix safe pointer and define type. 2019-09-03 15:02:46 -05:00
jimtabor
c698eff041 [Win32SS] Implement EngCreate/DeletePalette.
Safe to be called from user side without UMPD support.
2019-09-03 14:36:20 -05:00
Pierre Schweitzer
dcd463ba98 [BTRFS] Fix fileinfo.c build 2019-09-02 22:17:17 +02:00
Pierre Schweitzer
021e25f249 [BTRFS] Fix create.c build 2019-09-02 22:02:45 +02:00
Pierre Schweitzer
fe0a6c9be4 [BTRFS] Fix dirctl.c build 2019-09-02 21:48:54 +02:00
Pierre Schweitzer
255ef2c332 [UBTRFS] Upgrade to 1.4
CORE-16354
2019-09-02 08:19:49 +02:00
Pierre Schweitzer
318da0c18c [BTRFS] Upgrade to 1.4
CORE-16354
2019-09-02 08:19:48 +02:00
Pierre Schweitzer
a0592b71e9 [CRT] Import stdbool.h from CLANG
CORE-16354
2019-09-02 08:19:48 +02:00
Doug Lyons
79d67dc846 Merge pull request #1889 from Doug-Lyons/find_regression_test
Add Regression test for "find" using BAT with Conditionals "&&" and "||"
2019-09-01 23:03:16 +02:00
Stanislav Motylkov
b54a38b8c0 [XBOXVMP] Improve debugging prints 2019-09-01 23:01:57 +02:00
Stanislav Motylkov
816149e0c3 [XBOXVMP] Code formatting only 2019-09-01 23:01:57 +02:00
Stanislav Motylkov
053bf17e8b [BOOTVID] Refactor font data from i386 and arm bootdata.c (#1891) 2019-09-01 23:01:40 +02:00
Bișoc George
9efe8dab89 [CPL] Do not enable the "Apply" button unconditionally (#1876)
Fix for WINED3DCFG and OPENGLCFG.
CORE-16330
2019-09-01 22:58:43 +02:00
Eric Kohl
12e2039743 [SYSDM] Only Administrators should see all user profiles and be able to copy or delete them 2019-09-01 19:39:28 +02:00
Stanislav Motylkov
17bb6d10eb [HAL] Return correct bus handler in HaliFindBusAddressTranslation
This fixes the bug when VidInitialize asks for different translated addresses
and VgaIsPresent always returns FALSE either because the machine does not have
VGA controller at all (e.g. 86Duino Zero), or it does have video hardware
that is not compatible with VGA standard (e.g. Original Xbox).

The problem investigated by Stanislav Motylkov. Suggested fix by Thomas Faber.

CORE-14625 CORE-16216 CORE-16222

Co-authored-by: Thomas Faber <thomas.faber@reactos.org>
2019-09-01 16:37:56 +02:00
Timo Kreuzer
99fe069ce6 [CRT][MSVCRT] Add __DestructExceptionObject from wine 2019-09-01 16:29:26 +02:00
Timo Kreuzer
43c93faa16 Revert "[CABMAN] Fix a problem with creating temp files on some Windows system"
This reverts commit bcb0d7c6c9.
2019-09-01 16:26:01 +02:00
Timo Kreuzer
41250d1028 [NTOS:MM] Fix MmspCompareSegments
On x64 the previous implementation would only compare the upper 32 bits and ignore the lower 32 bits.
2019-09-01 14:15:07 +02:00
Doug Lyons
1a31d8222d [FIND] Return from the utility the success value from the FindString() function in all cases.
CORE-16356

Therefore the ERRORLEVEL value will be correctly set in accordance on
return from the utility in cmd.exe, and conditional tests based on this
returned value will succeed as they should.
2019-08-31 18:48:12 +02:00
Eric Kohl
90c9a67993 [BOOTDATA] Add missing descriptions for the wuauserv service 2019-08-31 18:19:53 +02:00
Eric Kohl
fa0eef085c [BOOTDATA][LSASRV] Add the security service(s)
- Add the service routines for the SamSs service.
- Start the SamSs service.
2019-08-31 18:17:14 +02:00
Eric Kohl
0625eb3746 [SERVICES][ADVAPI32] Support the security process aka lsass.exe
- Reserve the pipe NtControlPipe0 for the security process.
- Count regular service control pipes from 1.
- Use I_ScIsSecurityProcess to identify the security process.
- Services.exe uses the SECURITY_SERVICES_STARTED event to notify the security process that NtControlPipe0 is ready for use.
2019-08-31 17:24:47 +02:00
Eric Kohl
8571c26a71 [NETAPI32] Implement DsEnumerateDomainTrustsA 2019-08-31 12:45:30 +02:00
Hermès Bélusca-Maïto
bd451f240f [FREELDR] Code fixes and enhancements.
CORE-9023

FIXES:
======

- Fix parsing of the multiboot options string.
  NOTE: They are not yet treated in a case-insensitive manner!

- Fix a bug in ArcOpen() so that it correctly skips the first path
  separator (after the adapter-controller-peripheral ARC descriptors).
  The path separator can be either a backslash or a slash (both are
  allowed according to the specs); they were also already handled
  correctly in other parts of the code.

- Fix DissectArcPath() so as to:
  * **OPTIONALLY** (and not mandatorily!) return the path part that follows
    the ARC adapter-controller-peripheral elements in the ARC path;

  * make it correctly handle the (yes, optional!!) partition() part in the
    ARC path, for the multi(x)disk(y)rdisk(z) cases.

ENHANCEMENTS:
=============

- Directly retrieve the default OS entry as we enumerate them and
  build their list (i.e. merge the GetDefaultOperatingSystem() helper
  within InitOperatingSystemList()).

- Directly use the opened 'FreeLoader' INI section via its ID in the
  different functions that need it.

- Make the custom-boot and linux loaders honour the boot options they are
  supposed to support (see FREELDR.INI documentation / template).
  This includes the 'BootDrive' and 'BootPartition' (alternatively the ARC
  'BootPath').
  This also allows them to take into account the user-specified choices in the
  FreeLdr custom-boot editors.

- Modify the FreeLdr custom-boot editors so as to correctly honour
  the  priorities of the boot options as specified in the FREELDR.INI
  documentation / template.

- Use stack trick (union of structs) to reduce stack usage in the
  FreeLdr custom-boot editors, because there are strings buffers that are
  used in an alternate manner.

- Extract out from the editors the LoadOperatingSystem() calls, and
  move it back into OptionMenuCustomBoot(), so that when this latter
  function is called there is no risk of having a stack almost full.

- When building the ARC-compatible argument vector for the loaders, add
  the mandatory "SystemPartition" path. This allows the loaders to NOT
  call the machine-specific MachDiskGetBootPath() later on (this data is
  indeed passed to them by the boot manager part of FreeLdr).

- Improve the FsOpenFile() helper so as to make it:
  * return an adequate ARC_STATUS instead of a mere uninformative BOOLEAN;
  * take open options, as well as a default path (optional) that would be
    prepended to the file name in case the latter is a relative one.

- Make RamDiskLoadVirtualFile() return an actual descriptive ARC_STATUS
  value, and make it take an optional default path (same usage as the one
  in FsOpenFile() ).
  + Remove useless NTAPI .

- UiInitialize() and TuiTextToColor(), TuiTextToFillStyle(): load or
  convert named settings into corresponding values using setting table and
  a tight for-loop, instead of duplicating 10x the same parameter reading
  logic.

- UiInitialize(): Open the "Display" INI section just once. Remove usage
  of DisplayModeText[] buffer.

- UiShowMessageBoxesInSection() and UiShowMessageBoxesInArgv(): reduce
  code indentation level.

ENHANCEMENTS for NT OS loader:
==============================

- Don't use MachDiskGetBootPath() but use instead the "SystemPartition"
  value passed via the ARC argument vector by the boot manager
  (+ validation checks). Use it as the "default path" when calling
  FsOpenFile() or loading the ramdisk.

- Honour the FreeLdr-specific "Hal=" and "Kernel=" options by converting
  them into NT standard "/HAL=" and "/KERNEL=" options in the boot
  command line.

  Note that if the latter ones are already present on the standard "Options="
  option line, they would take precedence over those passed via the separate
  "Hal=" and "Kernel=" FreeLdr-specific options.

  Also add some documentation links to Geoff Chappell's website about
  how the default HAL and KERNEL names are chosen depending on the
  detected underlying platform on which the NT OS loader is running.
2019-08-31 01:42:46 +02:00
Hermès Bélusca-Maïto
602fc29ad4 [FREELDR] Formatting only. 2019-08-31 01:42:40 +02:00
Hermès Bélusca-Maïto
98a44b4f9b [FREELDR] Update the FREELDR.INI documentation / template. 2019-08-31 01:42:23 +02:00
Hermès Bélusca-Maïto
41ad62ea69 [FREELDR] Move around & static-ify some disk/partition functions. 2019-08-31 00:25:06 +02:00
Stanislav Motylkov
32fb2e7b5f [VIDEOPRT] Fix uninitialized Reserved bit field in PciSlotNumber
CORE-16317
2019-08-31 00:19:03 +02:00
Stanislav Motylkov
8c36145087 [XBOXVMP] Add Xbox video miniport driver
Also make XboxVmp driver compatible with Video Port driver, specify
vendor id and device id explicitly in VideoPortGetAccessRanges() call

CORE-16317
2019-08-31 00:19:03 +02:00
James Tabor
a02b3da183 Update Header
Add missing structure.
2019-08-29 15:47:56 -05:00
Colin Finck
c8681feee9 Fix the ntstrsafe.h tests to make sense, actually succeed using ntstrsafe.h from Win10 (10.0.15063), and fix ReactOS' ntstrsafe.h to also pass these tests. (#1859) 2019-08-28 22:42:52 +02:00
Colin Finck
46ed46c73f Fix and unify function prototypes for ntstrsafe functions taking variadic arguments. 2019-08-28 22:35:01 +02:00
Colin Finck
331e331209 [FORMATTING] Restore some kind of style to ntstrsafe.h, considering all comments in PR #522 and #523. 2019-08-28 22:32:49 +02:00
Hernán Di Pietro
99818568ed [DDK] RtlUnicodeStringPrintf(Ex) implementations and ntstrsafe.h tests (#522, #523)
[KMTESTS:RTL] (CORE-14565)

+ Added buffer overrun tests.
+ New style header.
+ ISO C90 compatibility

[DDK] (CORE-9819): RtlUnicodeStringPrintf(Ex) and RtlUnicodeStringValidate(Ex) fixes plus formatting.

[DDK]: Cosmetic changes  (NTSTATUS variable naming and tabs)

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565

NOTES:

+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565

NOTES:

+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[DDK] Fixed bad NtStrSafe.h va_start call (CORE-9819)

Update on RtlUnicodeStringPrintfEx plus cosmetic changes.

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565

NOTES:

+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[KMTESTS:RTL] Tests for new RtlUnicodePrintf(Ex) functions (CORE-14565)

+ 45 Tests working.
+ Lacks remaining non-Unicode functions in NtStrSafe.h for now.
+ Used for first tests on CORE-9819

[KMTESTS/RTL] Fixed test not taking care of null (CORE-14565)

[DDK] Fixed bad NtStrSafe.h va_start call (CORE-9819)

[KMTESTS:RTL] First Test.

Update on RtlUnicodeStringPrintfEx plus cosmetic changes.

[KMTESTS] Added NtStrSafe to test lists (CORE-14565)

First commit: Skeleton for test implementation + Addition to COMMON SOURCES in kmtests Cmake lists.

WIP.
+Implementation of RtlStringVPrintfWorkerLenW, RtlStringVPrintfExWorkerLenW to avoid changing existing public functions. This is required as existent functions did not return vsnprintf result, so we didn't have any return info to update UNICODE_STRING.Length.
+Additional implementation of RtlUnicodeStringValidate for checking purposes.
+Former RtlStringVPrintfWorker(ex) refactored to RtlInternalStringVPrintf(Ex)WorkerW.
+No ANSI functions affected as we didn't need them for Unicode printf's.

WIP: RtlUnicodeStringPrintf
2019-08-28 22:28:13 +02:00
Shy Zedaka
162e43d927 [TRANSLATION][UTILMAN] Translations for UTILMAN and some other stuff (#1880) 2019-08-27 13:04:34 +02:00
maharmstone
e6a9aafe58 [CMLIB] Clean volatile registry entries in the same manner as Windows (#1883)
This fixes the crashes in HvpGetCellMapped on Windows Server 2003 when booting from Freeloader, as mentioned in maharmstone/btrfs#16.

When the bootloader loads the system hive, it cleans the data pertaining to any volatile keys. The Windows bootloader does this by setting SubKeyCounts[Volatile] to 0. After boot, the kernel marks any cell where this is 0 but SubKeyLists[Volatile] isn't HCELL_NIL as dirty, meaning that the sanitized version will then get flushed to the disk.

Because Freeloader sets SubKeyLists[Volatile] to HCELL_NIL straightaway, Windows thinks the cell is clean, and can unload it without flushing. If it then reads it from the disk, it will crash in HvpGetCellMapped due to the stale volatile pointers.

If you break on nt!CmpInitializeSystemHive on Windows and "gu" to the let the function run, you'll see that DirtyVector of the HHIVE has only the first 8 bits set. If you run it using the official bootloader, it'll have a lot more than that.
2019-08-27 02:39:27 +02:00
Jose Carlos Jesus
d5dca45e51 [WIN32SS][USER][EXPLORER] Add/Update portuguese translation (#1882) 2019-08-26 21:01:41 +02:00
Carlo Bramini
055c5a9bb7 [CALC] Enable support for HTMLHELP (#1877)
Nowadays ReactOS includes support for htmlhelp.h and a working implementation of HHCTRL.OCX. Although current imported HHCTRL.OCX suffers of this issue:

https://bugs.winehq.org/show_bug.cgi?id=47379
See also CORE-15019

+ Revert 'intptr_t' to 'size_t'.
2019-08-26 16:14:01 +02:00
Katayama Hirofumi MZ
ca967db5ca [MEDIA][FONTS] Add Verdana fonts (#1881)
- Add "Verdana", "Verdana Bold", "Verdana Bold Italic" and "Verdana Italic" fonts by duplicating "Bitstream Vera Sans" fonts and renaming them.
- Delete some "Verdana" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Verdana". Their display names are "Verdana", "Verdana Bold", "Verdana Bold Italic" and "Verdana Italic". Their font filenames are verdana.ttf, verdanab.ttf, verdanaz.ttf and verdanai.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug. CORE-16264
2019-08-26 22:19:06 +09:00
Katayama Hirofumi MZ
e85e396438 [ROSAPPS][SHLEXTDBG] Delete DbgPrint hack for gcc (fix build) 2019-08-26 21:36:59 +09:00
Katayama Hirofumi MZ
0f06035c9b [MEDIA][FONTS] Make MS Sans Serif ells sans serif CORE-16166 2019-08-26 10:07:56 +09:00
Katayama Hirofumi MZ
24e5d36d5d [MEDIA][FONTS] Adjust internal leading of Baltic MS Sans Serif 2019-08-26 03:36:48 +09:00
Eric Kohl
324afc252c [NETAPI32] Implement DsEnumerateDomainTrustsW 2019-08-25 18:23:38 +02:00
Ioannis Adamopoulos
7eb28dd0a9 Fix build 2019-08-25 14:56:12 +03:00
Eric Kohl
abeb3324fb [NETAPI32] Implement DsAddressToSiteNamesA and DsAddressToSiteNamesExA 2019-08-25 11:39:53 +02:00
Ioannis Adamopoulos
e419195d37 [HEADERS] Move some helpers from undocshell.h to shellutils.h as they didn't cover anything undocumented. Merge traycmd.h in undocshell.h as both contain just undocumented shell definitions. 2019-08-25 12:20:52 +03:00
Eric Kohl
121f0a5c50 [NETAPI32] Fix a typo in DsDeregisterDnsHostRecordsA
Thank you very much UserNT and Thomas for the hint!
2019-08-25 11:15:00 +02:00
Katayama Hirofumi MZ
bfea773ee5 [SETUPLIB][USETUP] Fix build about switch 2019-08-25 12:07:31 +09:00
Katayama Hirofumi MZ
7426a31770 [MEDIA][FONTS] Add Thai MS Sans Serif (ssee874.fon) CORE-16166 2019-08-25 11:37:26 +09:00
Hermès Bélusca-Maïto
59acff79e5 [SETUPLIB][USETUP] Slightly modify how and when the HW system partition is detected and used.
CORE-16274

SETUPLIB:
=========

- Find the system partition initially when we create the list of
  partitions.

- Split the old CheckActiveSystemPartition() helper in two helpers:
  FindSupportedSystemPartition() and SetActivePartition(). This allows
  simplifying slightly the former one, and allows the user, in an
  interactive situation, to decide whether the "supported system
  partition" found can actually be used or not.

- Remove the "OriginalSystemPartition" hack in the PARTLIST structure.
- Add a note regarding the SystemPartition member in PARTLIST.

USETUP:
=======

- Use the introduced helpers from above. If the "system" partition we
  are going to use, in case we install ReactOS on a fixed disk, is *NOT*
  the same as the original one (e.g. because it is detected to be not
  supported by ReactOS...), display an informative screen to the user
  and let him confirm whether or not he wants to change the partition.

If we install on a fixed disk, try to find a supported system partition
on the system. Otherwise if we install on a removable disk, use the
install partition as the system partition instead.

This allows providing a fix for CORE-16274.
2019-08-25 02:38:53 +02:00
Hermès Bélusca-Maïto
626c654a10 [SETUPLIB][USETUP] Code simplifications & fixes.
SETUPLIB:
=========

- Remove useless HiddenSectors member in PARTENTRY structure.
- InsertDiskRegion() helper returns a BOOLEAN success.
- CreateInsertBlankRegion() helper sets LogicalPartition.

- Simplify the InitializePartitionEntry() helper so that its PartEntry
  parameter is clearly the one that is being initialized (i.e. converted
  from a blank region to) an actual partition, and use the helper
  CreateInsertBlankRegion(). The calculations for the StartSector and
  SectorCount are exactly equivalent with the old version of this
  function. Also make it return a BOOLEAN success instead.
  + Add some extra validation checks.
  + Adjust CreatePrimaryPartition(), CreateExtendedPartition() and
    CreateLogicalPartition() in this regard.

- Better handling of "RAW"-mounted partitions: treat them as
  "Unformatted" only if they are RAW *AND* their PartitionType is one of
  those associated with FAT file-system. Otherwise we cannot decide
  whether they are indeed unformatted or have an unknown file-system on
  them, therefore treat them as the latter.
  In this regard, the IsSupportedActivePartition() helper should not
  look for FileSystem == RAW but instead only look whether the partition
  is Unformatted.

  This should help with situations similar to the one described in CORE-16274
  where a partition with a genuine file-system but not recognized by
  ReactOS (because we currently do not have the EXT2/3/4 filesystem
  driver loaded during 1st-stage setup due to commit 5a650f6b) and
  therefore mounted as RAW, was thought to be unformatted.

USETUP:
=======
- Use the "global" SystemPartition pointer: this is the "system"
  partition we will actually use. It can be different from the actual
  one of the computer, for example when we install ReactOS on a
  removable disk. This allows also to simplify the code.

- Remove the single-used DestinationDriveLetter variable.

- Remove BuildInstallPaths() helper and use InitDestinationPaths()
  directly instead.

- Always mention the disk where the partition being formatted is.
- Cleanup old code comments, add assertions here & there...
2019-08-25 02:38:52 +02:00
Eric Kohl
c9537b392b [NETAPI32] Implement DsDeregisterDnsHostRecordsA 2019-08-24 22:57:36 +02:00
Eric Kohl
47b749aa31 [NETAPI32] Implement DsGetDcNameWithAccountA 2019-08-24 21:40:11 +02:00
Eric Kohl
792d0f6b78 [NETAPI32] Implement DsGetDcSiteCoverageA 2019-08-24 19:44:37 +02:00
Eric Kohl
61ac4f1ee9 [NETAPI32] Add the NetpAllocStrFromWStr helper function 2019-08-24 14:00:33 +02:00
Eric Kohl
3d5c682cd8 [NETAPI32] Implement DsGetSiteNameA
Also add the NetpAllocAnsiStrFromWStr helper function.
2019-08-24 13:15:41 +02:00
Eric Kohl
0b129da05c [NTOSKRNL] Fix indentation. No code changes! 2019-08-24 10:02:55 +02:00
Mark Jansen
6d2381631f [TESTS] Add a test for spec2def 2019-08-23 18:10:28 +02:00
Timo Kreuzer
767d424b0a [CMAKE] Turn C4715: "'function': not all control paths return a value" into an error on MSVC builds 2019-08-23 14:47:39 +02:00
Mark Jansen
1539fb1414 [NTOSKRNL] Demote some noisy dprints 2019-08-23 13:03:36 +02:00
Mark Jansen
4872912eb2 [SETUPAPI] Demote some noisy dprints 2019-08-23 13:03:36 +02:00
Mark Jansen
029b8f2cf9 [NTDLL] Use the embedded manifest from the process to check compatibility. 2019-08-21 18:57:52 +02:00
Shy Zedaka
cbf47846e7 [TRANSLATION] Changes to Newdev and hdwwiz 2019-08-21 18:49:59 +02:00
Shy Zedaka
cc8180fe63 [TRANSLATION] Change the recycle bin from 'Trash' to 'Recycle bin' 2019-08-21 18:49:59 +02:00
Serge Gautherie
963bae1a11 [README.WINE] Update paths and add winetests/iphlpapi (#1866) 2019-08-21 09:01:47 +02:00
Mark Jansen
9853eab1ea [CRT_APITEST] Exclude a test with the same rule as in the cmakelist 2019-08-20 22:31:56 +02:00
Mark Jansen
ca4b001544 [NTDLL_VISTA] Fix the build for arm 2019-08-20 22:31:56 +02:00
Mark Jansen
6872cef0da [FRAMEDYN[ARM] Fix some exports 2019-08-20 22:31:55 +02:00
Mark Jansen
419d7e96ad [NTDLL][ARM] Export pow 2019-08-20 22:31:55 +02:00
Mark Jansen
69cd1ebbbd [TIMEOUT] Use Int32x32To64 instead of __emul 2019-08-20 22:31:55 +02:00
Mark Jansen
b445fef904 [SDK] Update Int32x32To64 macro for arm 2019-08-20 22:28:11 +02:00
Mark Jansen
35aeaa2397 [RUNTMCHK] Provide fallback memset for arm builds 2019-08-20 22:28:11 +02:00
Mark Jansen
93b2d5597e [FREELDR][ARM] Suppress error about unused var 2019-08-20 22:28:11 +02:00
Mark Jansen
8a86264f14 [NDK][ARM] Stub a few required types for bootlib 2019-08-20 22:28:11 +02:00
Mark Jansen
a380a61605 [BOOTLIB] Disable some x86 / x64 specific code for other architectures 2019-08-20 22:28:11 +02:00
Mark Jansen
9592728f55 [ROSLOAD] Disable some arch-specific code for arm 2019-08-20 22:28:10 +02:00
Mark Jansen
28b866cc9c [CMAKE] Add explicit failure message
Previously this would show up as dependency cycle
2019-08-20 22:28:10 +02:00
Mark Jansen
b5dc79c963 [CMAKE] Some arm cmake fixes 2019-08-20 22:27:59 +02:00
Serge Gautherie
9f5f7a97f8 [IPHLPAPI] icmp.c: Restore sync after Wine Staging 1.7.55
Mark all our (new) differences.
2019-08-20 15:20:01 +02:00
Victor Perevertkin
bda22774a7 [PSDK] Fix GCC8 complaining on duplicate and wrong declarations 2019-08-20 15:05:47 +02:00
Victor Perevertkin
1c0a2a35e7 [APITESTS] Ignore GCC8 warnings where we test some crazy stuff 2019-08-20 15:05:47 +02:00
Victor Perevertkin
6b10706205 [APITESTS] Use StringCbPrintfA instead of sprintf
And fix a buffer size in Test_AddFontResourceA
2019-08-20 15:05:47 +02:00
Victor Perevertkin
f7dc14cca5 [WINETESTS] Supress GCC8 warnings 2019-08-20 15:05:47 +02:00
Victor Perevertkin
e90b6bb1e9 [CMAKE] Define GCC and CLANG cmake variables 2019-08-20 15:05:47 +02:00
Victor Perevertkin
09abc443b1 [VIDEOPRT] Fix RtlCopyMemory sizeof usage
Spotted by GCC8
2019-08-20 15:05:47 +02:00
Joachim Henze
4193b8d8ac [WIN32SS] WindowSnap must not affect the taskbar
This fixes regression CORE-16289 where we could not longer
move the taskbar at a different than default location,
as WindowSnap would interfere.

Many Thanks to the patches author Doug Lyons.

Eventually the heuristic that we use here to identify the
taskbar via used window-styles could be improved later.
Theoretically possible that it bails out on some other windows.

The regression was introduced by 0.4.12-dev-373-g
7e396787ed
2019-08-20 12:07:56 +02:00
Yaroslav Kibysh
238ea69ca0 [NTOS:INBV] Refactor boot screen code and resources (#1649)
* [NTOS:INBV] Move typedefs to the only single file where they are used.

* [NTOS:INBV] Refactor code & resources

Remove garbage

* [NTOS:INBV] Reduce fade time and remove wait for animation.
2019-08-20 01:52:25 +02:00
Stanislav Motylkov
b99272702c [HAL] Refactor PCI blacklisting for Xbox
- Use a separate function for detecting blacklisted PCI slots
- Blacklist PCI-to-PCI bridge to avoid stack overflow on real hardware Microsoft Xbox 1.3

CORE-16319 CORE-16216
2019-08-20 01:51:16 +02:00
Mark Jansen
cda2bc50eb [RAPPS] Remove unused function definitions 2019-08-20 01:41:40 +02:00
Giannis Adamopoulos
1e201d7057 [RAPPS] CDownloadManager: Get rid of the implementation of IBindStatusCallback as we stopped using URLDownloadToFileW a decade ago 2019-08-20 00:43:49 +02:00
Giannis Adamopoulos
db8f1d6f6a [RAPPS] CDownloadManager: simplify canceling 2019-08-20 00:43:48 +02:00
Giannis Adamopoulos
6803490a4d [RAPPS] factor CDownloaderProgress class out of CDownloadManager and CDownloadDialog 2019-08-20 00:43:48 +02:00
Giannis Adamopoulos
96fba571e0 [RAPPS] CDowloadingAppsListView: The download dialog doesn't use the layout engine so there is no need for it to be a CUiWindow 2019-08-20 00:43:48 +02:00
Giannis Adamopoulos
653894b972 [RAPPS] CMainWindow: use more atl 2019-08-20 00:43:48 +02:00
Giannis Adamopoulos
872289446d [RAPPS] CMainWindow: remove unused functions , and the globals g_MainWindow and hListView 2019-08-20 00:43:48 +02:00
Giannis Adamopoulos
69bd96e09f [RAPPS] CMainWindow: Make SelectedEnumType a member 2019-08-20 00:43:47 +02:00
Giannis Adamopoulos
8a401eb299 [RAPPS] CMainWindow: Move gui part of UninstallApplication in it 2019-08-20 00:43:47 +02:00
Giannis Adamopoulos
85d6055201 [RAPPS] CMainWindow: make szSearchPattern a member 2019-08-20 00:43:47 +02:00
Giannis Adamopoulos
ba80f057c5 [RAPPS] CMainWindow: move RemoveAppFromRegistry in it 2019-08-20 00:43:47 +02:00
Giannis Adamopoulos
700f54c37b [RAPPS] CMainWindow: Make EnumInstalledAppProc and EnumAvailableAppProc methods 2019-08-20 00:43:46 +02:00
Giannis Adamopoulos
d8b773b190 [RAPPS] CAppRichEdit: Add a new class that handles filling the richtext control 2019-08-20 00:43:46 +02:00
Giannis Adamopoulos
1807dbfd6d [RAPPS] Don't use CDownloadManager outside loaddlg.cpp 2019-08-20 00:43:46 +02:00
Giannis Adamopoulos
2c965f67d5 [RAPPS] move the message proc to gui.cpp 2019-08-20 00:43:46 +02:00
Giannis Adamopoulos
2bcc31a187 [RAPPS] remove the old splitter code that was not used 2019-08-20 00:43:46 +02:00
Giannis Adamopoulos
9411269841 [ROSCTRLS.H] Add CListView::SetItemText and CListView::SetCheckState 2019-08-20 00:43:37 +02:00
Victor Perevertkin
88cf5b0a3c [USB] Enable *_new usb stack 2019-08-20 01:34:58 +03:00
Victor Perevertkin
fc14c095f5 [USBPORT] Fix endless loop, occasionally happened on real hardware 2019-08-20 01:30:52 +03:00
William Kent
d9daaed325 Add support for save and restore reg.exe subcommands (#1565)
* [REG] Add save and restore help strings
* [REG] Implement REG SAVE
* [REG] Assert the BACKUP privilege
With this change applied, reg.exe correctly saves a key on Windows 10.
* [REG] Use RegSaveKeyEx()
* [REG] Implement REG RESTORE
* [REG] Close the process token
* [REG] Remove duplicate string
* [REG] Add missing comma
* [REG] Copy new strings into translation files
* [REG] Update STRING_USAGE translations
"Should be submitted to wine" (tm)
2019-08-20 00:29:58 +02:00
Bișoc George
3e3a7a63fd [UTILMAN] Add Romanian and Italian translations 2019-08-19 21:29:56 +02:00
Mark Jansen
c2b9f94234 [COMCTL32] imagelist: Invalidate the cookie of a destroyed imagelist
CORE-16316
CORE-16275
2019-08-19 21:25:07 +02:00
Konstantin Motylkov
ab2c90f1b9 [DNSAPI][DNSAPI_APITEST] Fix DnsQuery_UTF8 function and add tests
CORE-11634
2019-08-19 20:01:23 +02:00
Pierre Schweitzer
db4b34a046 [UTILMAN] Meh 2019-08-19 19:46:08 +02:00
Shy Zedaka
ff7938095e [UTILMAN] Fix Small typo in one of the checkboxes 2019-08-19 19:42:01 +02:00
Mark Jansen
012413813d [UTILMAN] Fix the build for msvc 2019-08-19 14:13:43 +02:00
Pierre Schweitzer
a8351727b5 [UTILMAN] Add French translation 2019-08-19 13:42:52 +02:00
Stanislav Motylkov
5f6faec2ff [DDK][PSDK] Add missing definitions for WPA/WPA2 authentication
Part of it was already added in 3da616a. CORE-11924
2019-08-19 13:12:13 +02:00
Bișoc George
df88ea8d25 Implement Utility Manager software
CORE-15974
2019-08-19 13:05:28 +02:00
Serge Gautherie
cb77f1701f [SHELL32][STOBJECT] Enforce ShellExecuteW(..., file, parameters, ...)
CORE-16299
2019-08-19 13:01:08 +02:00
Mark Jansen
343442cc3f [LDR][APPHELP] Add a shim that disables manifest compatibility version parsing 2019-08-19 12:08:06 +02:00
Pierre Schweitzer
e12abf63c5 [NTOSKRNL] Handle symlink parsing when it's bound to a specific object 2019-08-19 10:45:50 +02:00
Katayama Hirofumi MZ
e85664a3d8 [NOTEPAD] Encoding detection (#1852)
CORE-15548
In notepad, if there is no BOM in the input file, then judge the text encoding.
2019-08-18 22:46:56 +09:00
Eric Kohl
f052817d84 [MSV1_0] Add SpLsaModeInitialize and SpUserModeInitialize.
SpLsaModeInitialize and SpUserModeInitialize will provide access to SSPI functions. LSASRV will soon access the LsaAp functions via SpLsaModeInialize.
2019-08-18 14:56:27 +02:00
Hermès Bélusca-Maïto
dca43193c8 [FREELDR] Demote the ArcOpen() trace in WinLdrLoadImage() to a warning only. 2019-08-18 15:26:25 +02:00
Hermès Bélusca-Maïto
4016225269 [FFS] Silence some only-informative KdPrints. 2019-08-18 15:26:23 +02:00
Katayama Hirofumi MZ
fce898063e [COMCTL32_APITEST] Add propsheetv6 testcase (#1853)
The proof of #1842. Property sheet does unchange the page after WM_INITDIALOG. CORE-16280
2019-08-18 18:53:37 +09:00
Bișoc George
2fbff73792 [USETUP] Localize the rest of the hardcoded error message strings 2019-08-17 21:34:39 +02:00
Stanislav Motylkov
251bf49127 [HAL] Xbox needs more PCI blacklisting!
CORE-16216
2019-08-17 21:19:28 +02:00
Serge Gautherie
12dc1089ec [CMAKE] KDBG and _WINKD_ do not need a value 2019-08-17 18:40:40 +02:00
Serge Gautherie
8ba4b11a33 [IPHLPAPI] icmp.c: Complete sync with Wine Staging 1.7.55
- Restore a missing brace.
- Mark all our differences (at that time). Please inspect them.

CORE-10536
2019-08-17 17:48:21 +02:00
Andrew Cook
0341ea5e7b Search for host-tools path
Allows source-relative paths
2019-08-17 17:39:44 +02:00
Andrew Cook
f67345320f Add WITH_HOST_TOOLS option
Required for cross-compiling with msvc as only one target
architecture is available at a time in the dev prompt
2019-08-17 17:39:43 +02:00
Andrew Cook
ce531a28ec Rework host tools
Now configured at the same time as reactos and only
one list of targets to maintain

Correctly rebuilds when a tool changes (tested widl)
2019-08-17 17:39:31 +02:00
Serge Gautherie
87a625bd6c [NTOS:IO] iomgr.c: Add a missing '#if defined(KDBG)' 2019-08-17 17:36:49 +02:00
Victor Martinez
d60acd88cb [UDFS] Avoid freeing Vcb when it couldn't have been allocated in UDFPnpSurpriseRemove()
CORE-11203
2019-08-17 16:49:11 +03:00
Victor Martinez
e5e4362b6d [UDFS] Fix NewCFBName leakage in UDFFirstOpenFile()
CORE-11098
2019-08-17 16:49:11 +03:00
Victor Martinez
b64865fbdf [UDFS] Fix accessing an already freed pointer in UDFMarkAllocatedAsNotXXX()
CORE-11182
2019-08-17 16:49:11 +03:00
Victor Martinez
4805f0cd73 [UDFS] Don't access OldInIcb after being freed
CORE-11199
2019-08-17 16:49:11 +03:00
Bișoc George
dcf18826a5 [DESK] Change the property "Screensaver" page on text change
If the user takes action on the edit box control of "Screensaver" dialog page, enable the "Apply" property button.

CORE-16280
2019-08-17 15:36:47 +02:00
Victor Martinez
d97e49091d [UDFS] Fix uninitialized variable
CORE-11216
2019-08-17 15:43:24 +03:00
Katayama Hirofumi MZ
344d559935 [COMCTL32] Unchange the property sheet page after WM_INITDIALOG (#1842)
In my testing on Win2k3, EN_CHANGE is generated in OnInitDialog, that is correct. The target is property sheet. The property sheet does unchange the page after WM_INITDIALOG generation. CORE-16280
2019-08-17 20:02:57 +09:00
Andreas Maier
2b5f38295b [COMCTL32] remove unused theme_*.c files. 2019-08-17 12:08:04 +02:00
Thomas Faber
e51f4db7d0 [RSYM] When determining the current function, always prefer COFF symbols if they're closer. 2019-08-17 10:22:36 +02:00
Stanislav Motylkov
87845a1cc2 [FREELDR] Add missing VideoSetTextCursorPosition handler for Xbox
This fixes null pointer call bug, which was revealed in 85d44fc. Spotted by Mark Jansen. CORE-16216

Co-authored-by: Mark Jansen <mark.jansen@reactos.org>
2019-08-17 01:47:34 +02:00
Shy Zedaka
fca051a1d1 [TRANSLATION][NEWDEV] Complete Hebrew Translations for New Device Prompt 2019-08-16 20:04:27 +02:00
Stanislav Motylkov
7497b81e5b [FREELDR] Add Serial ports detection in DetectIsaBios() (#1829)
CORE-16216
2019-08-16 20:00:25 +02:00
Pierre Schweitzer
2faee11672 [SDK] As sole author of the file, relicense it as LPGL
It allows third party developers (such as Mark Harmstone :-)) to use it
2019-08-16 19:54:44 +02:00
Victor Perevertkin
90b8646790 [USBOHCI_NEW] Fix unused variable 2019-08-16 20:37:11 +03:00
Jose Carlos Jesus
3a92f9c3a0 [CONSOLE] New Portuguese Translation 2019-08-16 19:32:24 +02:00
Jose Carlos Jesus
23cac56740 [DESKMON] Update Portuguese Translation 2019-08-16 19:32:23 +02:00
Jose Carlos Jesus
c12b06fb8e [DESK] New Portuguese translation 2019-08-16 19:32:23 +02:00
Jose Carlos Jesus
0b4510301b [SHELL][COMCTL32] pt_PT_Translation Improvements 2019-08-16 19:32:23 +02:00
Jose Carlos Jesus
0ddbf9a552 [HDWWIZ] New pt_PT_Translation 2019-08-16 19:32:16 +02:00
Stanislav Motylkov
c08beef1cf [FREELDR] Add PCI BIOS emulation and PCI bus enumeration for Xbox (#1830)
CORE-16216 CORE-16308
2019-08-16 19:14:10 +02:00
Oleg Dubinskiy
5f7575909f [AUDIOSRV][BOOTDATA][INCLUDE][MMSYS] Rename RosAudioSrv to AudioSrv (#1826)
Rename RosAudioSrv to AudioSrv in audio service itself and in all system components which are related to this, same as it done in Win2k3.
It allows MS DxDiag to detect the system audio service correctly, so it becomes possible to run DirectSound test properly with MS dsound.dll, although it works with some minor errors and only in older VirtualBox versions, ~ up to 5.1.38 (and in other emulators as well).

CORE-16307
2019-08-16 19:11:04 +02:00
Stanislav Motylkov
2a8fc2b411 [USBOHCI_NEW] Refactor OHCI_AbortTransfer function
- Added SAL annotation
- Simplified local variables
- Replace counterintuitive `do {} while ()` loops with nice `for` loops
- Get rid of goto and its label, it can be simply avoided
2019-08-16 19:08:04 +02:00
Andrew Boyarshin
0a84597679 [COMCTL32] Export LoadIconMetric and LoadIconWithScaleDown
They are already implemented and there is little sense for them to be hidden.
Required for ProcessHacker 3.0+.
2019-08-16 18:31:07 +02:00
Stanislav Motylkov
5d57e39655 [HAL] Add Xbox Hardware Abstraction Layer
- Create xbox.cmake based on legacy.cmake and pic.cmake
- Revive Xbox HAL files and add them to the build
- Fix boot with Xbox HAL, add missing parts from halinit_up.c
- Code style and debug logging improvements in pcibus.c
- Allow to choose Xbox HAL in usetup

CORE-16216
2019-08-16 18:28:52 +02:00
Andreas Maier
83dcae1e0f [JSCRIPT] import wine commits "stub + implement Enumerator()"
6630bc4096
a015c62643

CORE-13810
2019-08-16 16:37:32 +02:00
Mark Jansen
fcb9378e01 [W32TIME] The interval is specified in seconds, but we need milliseconds 2019-08-16 16:29:20 +02:00
Waritnan Sookbuntherng
76dfa2b284 [COMCTL32] Checking size grip bounds in x-axis only 2019-08-16 16:22:24 +02:00
Waritnan Sookbuntherng
b9ddad0bbb [COMCTL32] Hide size grip when the parent window is maximized 2019-08-16 16:22:24 +02:00
Serge Gautherie
af0d1d2f98 [NETSTAT] '-p UDP' depends on '-a' 2019-08-16 14:46:45 +02:00
Sylvain Deverre
4d3df0da50 [NTFS] Correctly find attributes stored in another file record in MFT (and referenced in data stream) 2019-08-16 11:08:29 +02:00
Katayama Hirofumi MZ
86b8aeb3f2 Revert "[WININET_APITEST] Add Download testcase (#1832)" (#1839)
This reverts commit 7464241ada.
2019-08-16 17:01:03 +09:00
Katayama Hirofumi MZ
2c5b3e3265 [ROSAPPS][NETREG] Fix build 2019-08-16 16:57:40 +09:00
James Tabor
d48345a0ee Update Headers for Printing and Other
Add missing flags and function types. Fix typos.
2019-08-15 21:39:26 -05:00
Andreas Maier
4093681ad0 [COMCTL32] Saturated images: Take mask-images in account.
This fixes CORE-14209 - Some icons not drawn in IDA Free
2019-08-15 21:11:45 +02:00
Andreas Maier
49a797543f [COMCTL32] Improve failure cases. 2019-08-15 21:11:45 +02:00
Serge Gautherie
68bcc2df7c [NDIS] Enforce '#if DBG' around MiniDisplayPacket[2]()
Also add 'static' on MiniDisplayPacket2().
2019-08-15 21:08:10 +02:00
Bișoc George
84e162e669 [OSK] General refactoring
- Replace the existing header files in favour to a pre-compiled header instead. Furthermore, move all the function prototypes in the pre-compiled header.
- As per the prototype definitions, LoadDataFromRegistry() and SaveDataToRegistry() mustn't accept any number of parameters.
- Rename rsrc.rc to osk.rc (main resource file) as most of user-mode applications name have their main resource as the same application's name anyways.
- When querying and saving the data to registry, use only one value, greatly reducing the bloat of variables (as per the Hermes Belusca's request on #1729 PR).
- Update the header description reflecting the official ReactOS Coding style guidelines.
2019-08-15 20:35:17 +02:00
Adam Słaboń
65f42596ce [THEMES][LUNAR] Update
Improved Button and Combo Button bitmaps, fixed SYSSETUP Lunar resource.
2019-08-15 20:25:02 +02:00
Shy Zedaka
a3944563c3 [SHELL32] Run Dialog Text Fix 2019-08-15 20:03:55 +02:00
Paweł Cholewa
3276824586 [TASKMGR] Implement proper process tree ending
* Implement ShutdownProcessTree in endproc.c which recursively kills process trees
 * Include tlhelp32.h in precomp.h
 * Check if the child process can be shut down
2019-08-15 19:07:05 +02:00
Serge Gautherie
66bf74d228 [NTOSKRNL] Move DPRINT1("Thread wants too much stack\n") around
To KiUserModeCallout() from MmGrowKernelStackEx().

As suggested by Thomas Faber:
"MmGrowKernelStackEx really shouldn't be DPRINT'ing."

CORE-14494
2019-08-15 18:18:59 +02:00
Timo Kreuzer
cbb7ad6f5b [FREELDR] Improve debug output 2019-08-15 18:04:57 +02:00
Timo Kreuzer
de679e8f33 [NTOS:MM] MmSizeOfSystemCacheInPages is ULONG_PTR, not ULONG
Fixes failed assertion on x64.
2019-08-15 18:04:57 +02:00
Timo Kreuzer
adcae016c5 [NTOS:KE:I386] Fix parameter description for KiSwapContext 2019-08-15 18:04:57 +02:00
Timo Kreuzer
98a8e8f862 [NTOS:IO] In IopSynchronousCall first check IrpStack->MajorFunction before checking minor
Minor function indices are not unique, they are subfunctions, so without first checking the major function, they are ambiguous.
2019-08-15 18:04:57 +02:00
Timo Kreuzer
05b37f63ea [BROWSEUI] Try to "fix" IEThreadParamBlock structure for x64 2019-08-15 18:04:57 +02:00
Timo Kreuzer
ede5ec65c2 [PSDK] dbghelp.h: Fix 64 bit version of LOADED_IMAGE 2019-08-15 18:04:57 +02:00
Timo Kreuzer
0e8392beea [TDI] Improve spec file 2019-08-15 18:04:57 +02:00
Timo Kreuzer
94e5e79e3b [PSDK] Fix #ifdef in winuser.h 2019-08-15 18:04:57 +02:00
Timo Kreuzer
93028748c9 [VIDEOPRT] Fix order of some exports 2019-08-15 18:04:57 +02:00
Timo Kreuzer
fffe4f6385 [NTOS:EX] Use InterlockedExchangeAdd64 instead of InterlockedCompareExchange64 loop in ExAllocateLocallyUniqueId 2019-08-15 18:04:57 +02:00
Timo Kreuzer
21c9f2a488 [WIN32K] InitVideo() should return NTSTATUS, so return STATUS_SUCCESS instead of 1 2019-08-15 18:04:57 +02:00
Timo Kreuzer
e50873376d [NTOS:IO] Improve an alignment 2019-08-15 18:04:57 +02:00
Timo Kreuzer
06e631fafe [KSUSER] Improve pointer arithmetics 2019-08-15 18:04:57 +02:00
Katayama Hirofumi MZ
944aba1fcc [SHELL32] Fix Desktop Properties menu item action (#1833)
1. Right Click the Desktop.
2. Choose "Properties" menu item.
3. "Properties for Display" dialog must be shown.

The parameters of ShellExecuteW were wrong. The execution parameters must be separated from the file parameter.
CORE-16299
2019-08-15 23:10:06 +09:00
Denis Malikov
18a9993d69 [KERNEL32] implement CreateSemaphoreExW/A and adjust macroses for it 2019-08-15 15:50:59 +02:00
Serge Gautherie
40ab30d6a0 [KERNEL32] Partially fix dll/win32/kernel32/client/vista.c compilation as NT6
CORE-12596
2019-08-15 15:42:34 +02:00
Timo Kreuzer
ad89837c0e [3RDPARTY] Suppress MSVC printf format warnings in 3rd-party code 2019-08-15 15:24:12 +02:00
Timo Kreuzer
58588b76e2 [REACTOS] Fix MSVC printf format warnings 2019-08-15 15:24:12 +02:00
Mark Jansen
b8a1a612b2 [DBGHELP_APITEST] Add rsym+pdb tests on loaded modules
Also reorder some stuff to make the tests more alike
2019-08-15 15:21:55 +02:00
Timo Kreuzer
7611cc2b12 [REACTOS] Fix SIZE_T related warnings 2019-08-15 14:20:00 +02:00
Timo Kreuzer
826704ba6b [VIDEOPRT] Implement support for INT10 on x64 using the newly implemented HAL functions. 2019-08-15 14:13:54 +02:00
Timo Kreuzer
eba27d5856 [VIDEOPRT] Fixes for x64 2019-08-15 14:13:54 +02:00
Timo Kreuzer
832f8863be [VIDEOPRT] Call IntInt10CallBios from VideoPortInt10, instead of code duplication 2019-08-15 14:13:54 +02:00
Timo Kreuzer
e7b3c66a42 [VIDEOPRT] [FORMATTING] No code change 2019-08-15 14:13:54 +02:00
Timo Kreuzer
9ab3246d43 [HAL] Implement amd64 BIOS call support
The code uses FAST486 to emulate the BIOS code.
2019-08-15 14:13:54 +02:00
Timo Kreuzer
f18958ffa2 [NDK] Add BIOS call API for amd64 2019-08-15 14:13:54 +02:00
Shy Zedaka
187c9fc33c [Translation] More Hebrew Translations
Co-authored-by: Baruch Rutman <peterooch@gmail.com>
2019-08-15 13:41:01 +02:00
Andrew Boyarshin
b607e0119f [NTOSKRNL][PS] Implement NtQueueApcThreadEx and use it in NtQueueApcThread
Actually rename NtQueueApcThread to NtQueueApcThreadEx and ignore one additional parameter for now.
2019-08-15 12:32:09 +02:00
Mark Jansen
c96ba1aff2 [SHELL32] CDefView: Improve the context menu positioning
Previously we would always show a menu on the focused item, but
this should only be done when it is also selected.
2019-08-15 11:28:31 +02:00
Katayama Hirofumi MZ
7464241ada [WININET_APITEST] Add Download testcase (#1832)
CORE-16310
2019-08-15 17:50:57 +09:00
Katayama Hirofumi MZ
9990169aaa [MEDIA][FONTS] Add Baltic MS Sans Serif (ssee1257.fon) CORE-16166 2019-08-15 10:24:20 +09:00
Hermès Bélusca-Maïto
423d1e2e09 [FREELDR] Minor fixes.
- Add some forgotten, or move some misplaced ArcClose() calls so as
  to avoid leakages in failure paths. (Thanks to Serge Gautherie for
  having caught some of them.)

- Simplify some code; remove unneeded casts; use string-safe functions.
2019-08-14 16:36:50 +02:00
Hermès Bélusca-Maïto
85d44fca59 [FREELDR] Minor enhancements for disk/partition boot and UI.
- Factor out disk & partition opening in LoadAndBootPartition() and
  LoadAndBootDrive() into a LoadAndBootPartitionOrDrive() helper.

- Use ARC paths and ArcOpen()/ArcRead() instead of calling the
  machine-specific BIOS-oriented DiskGetPartitionEntry() and
  MachDiskReadLogicalSectors() functions to open the disk/partition
  and read their boot sectors.

- Don't forget to close the opened boot sector file in LoadAndBootBootSector().

- Add assertions for DiskReadBufferSize in PcMemFinalizeMemoryMap()
  and EnumerateHarddisks().

- x86/amd64 only:
  * Add a DisableA20 helper for disabling the A20 line, before rebooting
    back, or chain-load a boot sector, into 16-bit world.
    Also pulse the output port of the keyboard controller to clear out
    its state after having set the state of the A20 line.

  * In addition to disabling the A20 line when rebooting or chain-loading
    a boot sector, reset the video back to 80x25 text mode.

- Reset the cursor position back to the origin when initializing or
  terminating the TUI.
2019-08-13 23:07:01 +02:00
Bișoc George
4578ee3e20 [OSK] Romanian translation update (#1820) 2019-08-12 20:58:39 +02:00
Katayama Hirofumi MZ
14c267a3a3 [ATL_APITEST] Simplify code by using ok_int etc. (#1824)
Simplify the code by using ok_int, ok_long etc.
2019-08-12 23:10:47 +09:00
Katayama Hirofumi MZ
211fdcdba7 [MEDIA][FONTS] Total adjustment of MS Sans Serif 2019-08-12 22:19:55 +09:00
Katayama Hirofumi MZ
d3dc5f2a73 [SDK][INCLUDE] Update msgdump.h and winxx.h 2019-08-12 19:31:44 +09:00
Katayama Hirofumi MZ
a800fa7bb2 [ATL_APITEST] Add 'atltest.h' and use it (#1822)
- Add "atltest.h" header file for common use in atl_apitest.
- Delete the duplicated and simplify.
2019-08-12 19:24:08 +09:00
Mark Jansen
610b852451 [ATL] Add a minimal CAtlArray implementation 2019-08-11 21:46:07 +02:00
Mark Jansen
300649ba77 [ATL_APITEST] Add simple test for CAtlArray 2019-08-11 21:46:06 +02:00
Mark Jansen
29c0b93a0a [ATL_APITEST] Change proj files to have a different intermediate dir 2019-08-11 21:46:06 +02:00
Mark Jansen
ae69b1fda2 [ATL][ATL_APITEST] Add CAtlList::InsertBefore/After + test 2019-08-11 21:45:56 +02:00
Hermès Bélusca-Maïto
7b5fab40c1 Addendum to fba4ad4c. 2019-08-11 22:06:27 +02:00
Hermès Bélusca-Maïto
fba4ad4ceb [FREELDR] Move files where they are only used.
- Merge fade.c/palette.c/video.c into video.c and move it into UI.
- Move inffile.c into NTLDR.
2019-08-11 22:01:36 +02:00
Katayama Hirofumi MZ
e125297f7f [MEDIA][FONTS] Add Arabic MS Sans Serif (ssee1256.fon)
CORE-16166
2019-08-11 09:36:39 +09:00
Katayama Hirofumi MZ
b863ecc33f [WIN32SS][NTUSER] Fix menu drawing after style change (#1821)
There were menu drawing regression after 03adec8141.
This PR will fix it. CORE-16244

- We don't have to draw the frame manually because of WS_EX_DLGMODALFRAME extended style.
- We don't need the margins (MENU_TOP_MARGIN and MENU_BOTTOM_MARGIN) in the client area any more because the client area doesn't contain the frame width.
- Use GetSystemMetrics(SM_CXDLGFRAME) and GetSystemMetrics(SM_CYDLGFRAME) for frame width.
2019-08-11 07:46:14 +09:00
Hermès Bélusca-Maïto
8823a0c51e [FREELDR] Addendum to 31a3f317. 2019-08-10 19:47:49 +02:00
Hermès Bélusca-Maïto
d7d13b3226 [PROCESSR] Employ usual casing for CurrentControlSet key. 2019-08-10 19:15:38 +02:00
Hermès Bélusca-Maïto
31a3f3177c [FREELDR] Some changes that accumulated since years in my local copy. Also initialize SetupBlock->ArcSetupDeviceName to some valid value. 2019-08-10 19:15:37 +02:00
Hermès Bélusca-Maïto
c9a20ced91 [FREELDR] Rework EXT2 filesystem to interface with ARC and not be tied to the boot volume.
See 28bf1f3b (r42537) and c599bd7d (r43267) for additional information.
2019-08-10 16:41:29 +02:00
Hermès Bélusca-Maïto
8d94b2a68d [FREELDR] Diverse enhancements.
- Get rid of the FsCloseFile(), FsReadFile(), FsGetFileInformation(),
  FsGetFileSize() and FsSetFilePointer() wrappers and use the ARC
  functions directly instead. Make FsOpenFile() return an ARC file
  descriptor ID of the correct type. Get rid of unused FS_* defines.

- Use TRACEs in the ***Mount() filesystem functions for diagnostics
  purposes.

- Remove a leak in FatGetFatEntry(). Assign stuff via QuadPart where
  possible in FatMount(). Remove an unused member in FAT_FILE_INFO.

- Reduce code indentation in BtrFsMount() and remove a leak there.

- Disable reading the "BootPath" parameter in the linux loader since
  we don't use this parameter (yet??)
2019-08-10 16:41:29 +02:00
Eric Kohl
4a230d8341 [LSASS] Initialize SAM before starting the security services
We need to initialize SAM before the security services get started, otherwise we will have a running SamSs service although SAM is not initialized at that time. This is no good.
2019-08-10 14:36:10 +02:00
Eric Kohl
26e1afaffc [SERVICES] Improvements to registry control sets
- Add a function that creates a new control set and deletes unused control sets in case of a successful boot.
- Add a stub function that will soon switch to the last known good control set in case of an unsuccessful boot.
2019-08-10 14:24:11 +02:00
Eric Kohl
878db26378 [IDL][WINLOGON] Rename locally used functions of the winreg rpc interface
- Function 14 is named BaseRegNotifyChangeKeyValue
- Function 28 is named OpenDynData
2019-08-10 14:04:58 +02:00
Katayama Hirofumi MZ
03adec8141 [WIN32SS][NTUSER] Fix popup menu freezing 2019-08-10 15:40:32 +09:00
Katayama Hirofumi MZ
2b526bceac [WIN32SS][NTGDI] Registry-based font management (#1816)
CORE-16269
- Add IntGdiAddFontResourceEx function that is extended from IntGdiAddFontResource, in order to add dwFlags parameter.
- Add IntLoadFontsInRegistry function that will load the fonts from registry info.
- If loading from registry failed, IntLoadSystemFonts will be called.
- Use IntLoadFontsInRegistry rather than IntLoadSystemFonts in the OS startup.
- Add NameFromCharSet function.
- Append " (CharSetName)" to registry value name if not TrueType.
2019-08-10 14:52:09 +09:00
Katayama Hirofumi MZ
0749a868fc [WIN32SS][NTUSER] Fix popup menu window styles (#1814)
Fix the class style, the window style and the extended style of the popup menu window. CORE-16244
2019-08-10 08:33:25 +09:00
Hermès Bélusca-Maïto
75623bb1fa [FREELDR] Fix erroneous change from d05be0da regarding RAMDISK loading in SETUPLDR.
Restore the correct position of (optional) RAMDISK loading code, before
attempting to open txtsetup.sif since the bootcd ISO might be the RAMDISK.
2019-08-08 23:09:43 +02:00
Mark Jansen
6948764b21 [WIN32SS] Ensure the last menu item is not accidentally selected when a system menu is off-screen
CORE-16297
2019-08-08 19:51:28 +02:00
Mark Jansen
84e263ceb2 [WIN32SS] Do not propagate TPM_VERTICAL to sub-menus
With this change we can remove the workaround from the off-screen
menus dropping below their parent.
Many thanks to Joachim for his help debugging / testing this.

CORE-16297
2019-08-08 19:51:28 +02:00
Mark Jansen
1c8cdaa470 [WIN32SS] Fix tray popup menus stuck to the bottom of the screen
Dedicated to Joachim
CORE-16297
2019-08-08 19:51:28 +02:00
Mark Jansen
33f77af348 [WIN32SS] Fix off-screen menu's dropping below their parent 2019-08-08 19:51:28 +02:00
Mark Jansen
3cbdcc6363 [WIN32SS] For application menu's, only exclude the menu item,
not the entire window.
Because the application menu is part of the application window,
this would lead to bad results.
2019-08-08 19:51:15 +02:00
Katayama Hirofumi MZ
f7e39f7d2a [FONTVIEW] Broadcast WM_FONTCHANGE message (#1815)
We have to send WM_FONTCHANGE message when the font list was changed.
2019-08-08 21:41:15 +09:00
Katayama Hirofumi MZ
65e4efd475 [WIN32SS][NTUSER] Fix MENU_DrawScrollArrows (#1753)
Fix drawing the menu scrolling arrows. CORE-13211
2019-08-08 13:56:23 +09:00
Victor Perevertkin
304e281099 [FREELDR] Verbose error output for FS errors 2019-08-08 02:33:10 +03:00
Hermès Bélusca-Maïto
bc3314d4aa [FREELDR] Better fix for x64. Addendum to 268cdf57. 2019-08-07 19:30:55 +02:00
Hermès Bélusca-Maïto
15bf4d18d6 [FREELDR] Fix EditBox initial string display length: do not count the NULL-terminator. 2019-08-07 19:18:04 +02:00
Yaroslav Kibysh
bc7c689448 [FREELDR] Add ReactOS Setup as a custom boot type. (#1763)
CORE-9023 CORE-16260

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-08-07 18:50:26 +02:00
Yaroslav Kibysh
b34d516e81 [FREELDR] Add "Edit Boot Command Line" feature. (#1763)
CORE-9023 CORE-16260

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-08-07 18:50:23 +02:00
Hermès Bélusca-Maïto
5d5b6a5600 [FREELDR] Some enhancements for the UI code. (#1763)
- EditBox: Display the initial contents of the text buffer.
  This allows modifying already existing text in the passed buffer.

- Menu:
  * Make both MenuHeader and MenuFooter optional (but the latter is
    more "optional" than the former...).

  * Allow passing a user-provided "Context" structure to the key-press
    filter callback, and pass also the index of the menu item that has
    been selected.

- Minor formatting fixes.
2019-08-07 18:50:20 +02:00
Hermès Bélusca-Maïto
268cdf5702 [FREELDR] Fix x64 build. 2019-08-07 18:49:19 +02:00
Hermès Bélusca-Maïto
5b326e74cd [FREELDR] Don't call twice strlen() implicitly (in the min() macro). 2019-08-07 18:49:18 +02:00
Stanislav Motylkov
2811d2f990 [FREELDR] xboxmem: Fix array out-of-bounds access (#1775)
Memory map array should be large enough to fit additional descriptors.

CORE-16216 CORE-16267
2019-08-07 12:06:37 +02:00
Katayama Hirofumi MZ
10c08e1d62 [SETUP][BOOTDATA][INF] Helvetica-to-Arial substitutes (#1809)
Set the destinations of "Helvetica" font substitutes to "Arial". CORE-16264
2019-08-07 19:02:38 +09:00
Katayama Hirofumi MZ
257aed0e69 [SETUP][BOOTDATA][INF] Delete Tahoma-to-Tahoma substitutes (#1808)
Delete loopy Tahoma-to-Tahoma font substitutes. CORE-16264
2019-08-07 19:01:25 +09:00
Doug Lyons
c1ec0d92e2 [WIN32K:NTGDI] Fix ASSERTS in REGION_bXformRgn. CORE-15992 2019-08-07 07:47:47 +02:00
Katayama Hirofumi MZ
eefc544202 [MEDIA][FONTS] Add Microsoft Sans Serif font (#1805)
Add "Microsoft Sans Serif" fonts. CORE-16264

- Add "Microsoft Sans Serif" font by duplicating "Liberation Sans" font and renaming it.
- Add LICENSE file.

I made these font files by using FontForge. Its family name is "Microsoft Sans Serif". Its display name is "Microsoft Sans Serif". Its font filename is micross.ttf. The Underline Position is hacked by adding an integer value for workaround of FontForge's bug.
2019-08-07 12:31:13 +09:00
Hermès Bélusca-Maïto
d05be0da3f [FREELDR] Some ARC-spec compatibility refactoring + simplifications & fixes.
CORE-9023

- During loading and initialization of the list of operating systems
  available in freeldr.ini, convert any legacy operating system entry
  encountered -- they are like those in NTLDR's boot.ini file, i.e.:

    ArcOsLoadPartition="LoadIdentifier" /List /of /Options

  into a new operating system INI entry, like those used by default in
  FreeLoader. This allows us to avoid treating this corner-case later in
  different parts of the code. Also, the "BootType" value is now
  determined there, only once.

- Convert the OS loaders entry-points to ARC-compatible ones, following
  the "Advanced RISC Computing Specification, Version 1.2" specification
  https://www.netbsd.org/docs/Hardware/Machines/ARC/riscspec.pdf

- Introduce helpers for retrieving options values from the argument vector
  in a simple way.

- Simplify LoadOperatingSystem(), since now the "BootType" value has
  been determined once while loading the list of OSes (see above) and
  is well-defined there. Use the BuildArgvForOsLoader() helper to build
  the ARC-compatible argument vector from the corresponding INI settings
  for the selected operating system entry, and use it when calling the
  corresponding OS loader.

- In the OS loaders, since we can now directly read the settings from
  the argument vector (instead of using INI settings), we can avoid
  using a bunch of fixed-size string buffers, and avoid potentially
  failing IniOpenSection() calls as well.

- Simplify code in the Linux loader (and the RemoveQuotes() function).

- Add UiShowMessageBoxesInArgv() that acts on the "MessageBox=" settings
  passed through the argument vector (equivalent to
  UiShowMessageBoxesInSection() ).

- Use string-safe functions where needed (copy/concatenation/printf on
  fixed-size buffers).
2019-08-06 23:40:05 +02:00
Hermès Bélusca-Maïto
d21ffe6336 [FREELDR] Add an INI helper that allows modifying an existing setting's value in memory. 2019-08-06 23:39:53 +02:00
Mark Jansen
b5c6af459c [WIN32SS] Exclude the entire menu from overlapping, not just the menu item
CORE-15863
2019-08-06 21:17:47 +02:00
Mark Jansen
7c45a646e9 [WIN32SS] Iteratively mutate menu flags until we find a 'best fit'
CORE-15863
2019-08-06 21:17:47 +02:00
Mark Jansen
a59df3858c [WIN32SS] Rewrite MENU_ShowPopup to take the exclude rectangle into account
CORE-15863
2019-08-06 21:17:35 +02:00
Joachim Henze
0f16d44b66 [SHELL32] Improve ShellExecute
This fixes regression CORE-6412 and also fixes CORE-12927
by bringing us a bit closer to Wine implementation.

Thanks to patches author Doug Lyons.
The removed code looks like historic workaround code.

Automated tests do improve as well
VBox https://reactos.org/testman/compare.php?ids=68662,68696
KVM https://reactos.org/testman/compare.php?ids=68663,68697

I intend to merge this back into 0.4.12RC.
2019-08-06 20:24:55 +02:00
Katayama Hirofumi MZ
5972b1e284 [SYSSETUP] Caption of 2nd stage ReactOS Setup is too heavy (#1806)
The caption text of 2nd stage ReactOS Setup was too bold. CORE-16295
2019-08-06 11:09:56 +09:00
Benjamin Aerni
c8875c182a [INF] Added BTRFS inf to remove unknown device
CORE-15928
2019-08-05 21:18:23 +02:00
Eric Kohl
c6a53810a4 [SERVICES] Enable the backup and restore privileges before loading or unloading a user profile and then disable them again. 2019-08-05 20:20:48 +02:00
Katayama Hirofumi MZ
4414f45cc0 [WIN32SS][NTUSER] Fix default menu item font weight (#1804)
CORE-16294
We had added "Arial Black" font, so a request for heavy weight font will be realized as it is. This PR will fix font weight (FW_*) calculation of default menu items.
2019-08-05 23:16:01 +09:00
Katayama Hirofumi MZ
3f1ab92d3a [SETUP][INF] Helvetica must be substitute to Arial font (#1803)
Helvetica must be font substitute to Arial font.

- Change some Helvetica substitutes to "Arial" from "Liberation Sans". Not all Helvetica. Some languages are lacking support.
2019-08-05 19:55:00 +09:00
Katayama Hirofumi MZ
01a1348325 [MEDIA][FONTS] Replace Georgia fonts (#1802)
Replace "Georgia" fonts with renamed "Gelasio". CORE-16293

- Replace "Georgia" fonts with renamed "Gelasio" fonts.
- Replace LICENSE file.

I made these font files by using FontForge. Their family name is "Georgia". Their display names are "Georgia", "Georgia Bold", "Georgia Bold Italic" and "Georgia Italic". Their font filenames are georgia.ttf, georgiab.ttf, georgiaz.ttf and georgiai.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.

Gelasio is available at: https://github.com/SorkinType/Gelasio
2019-08-05 18:11:09 +09:00
Katayama Hirofumi MZ
6f796ab043 [MEDIA][FONTS] Replace 'Palatino Linotype' fonts (#1800)
Add 'Palatino Linotype' fonts with renamed 'TeXGyrePagella'. CORE-16292

- Replace 'Palatino Linotype' fonts with renamed "TeXGyrePagella".
- Replace LICENSE file.

I made these font files by using FontForge. Their family name is "Palatino Linotype". Their display names are "Palatino Linotype", "Palatino Linotype Bold", "Palatino Linotype Bold Italic" and "Palatino Linotype Italic". Their font filenames are pala.ttf, palab.ttf, palabi.ttf and palai.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-05 14:36:06 +09:00
Katayama Hirofumi MZ
836e3107ba [SYSSETUP] Fix bold font (#1799)
The font of radio buttons at ReactOS 2nd setup was wrong and too heavy. CORE-16291
2019-08-05 09:44:25 +09:00
Katayama Hirofumi MZ
b3f55ba2a6 [MEDIA][FONTS] Fix Arial Black metadata (#1797)
Fix "Arial Black" font metadata. CORE-16291
- Its weight must be Black.
- It must be San Serif.
2019-08-05 09:42:24 +09:00
Eric Kohl
05fbaad607 [SERVICES] Fix indentation and remove an unused variable 2019-08-04 22:43:46 +02:00
Eric Kohl
8abbdd2808 [SERVICES] Use a proper security descriptor for the control pipes 2019-08-04 22:30:40 +02:00
Eric Kohl
b03d2b4d65 [SERVICES] Do not try to start lsass.exe as a service.
Starting the security services (samss, netlogon, etc) requires special code in services.exe and lsasrv.dll.
2019-08-04 20:58:12 +02:00
Eric Kohl
71408b531c [RPCSS] Prevent the RPCSS service from getting stopped
CORE-13500
2019-08-04 19:59:30 +02:00
Hermès Bélusca-Maïto
909bfff460 [FREELDR] Some initialization fixes.
- Initialize BootPath and BootOptions buffers when fallback behaviour is not taken.
- Correctly skip all the understood whitespace (space & tabs) and the
  quotes before reading the boot options when using the alternative syntax:

  [Operating Systems]
  section_name = "ReactOS" /bootoptions

  Fixes the minor regression introduced in 370e8564 (r43875).
2019-08-04 17:47:04 +02:00
Hermès Bélusca-Maïto
b978d42bd9 [FREELDR] Whitespace, minor code styles and comments fixes only. 2019-08-04 17:47:04 +02:00
Hermès Bélusca-Maïto
e79e7bf53c [FREELDR] Unload freeldr.ini file before booting. 2019-08-04 17:47:03 +02:00
Hermès Bélusca-Maïto
5cdb76094c [FREELDR] Use NOGUIBOOT when booting in Safe-Mode. 2019-08-04 17:47:03 +02:00
Eric Kohl
4614c5b57c [NTOSKRNL] Implement SeRegisterLogonSessionTerminatedRoutine() and SeUnregisterLogonSessionTerminatedRoutine(). 2019-08-04 14:01:26 +02:00
Thomas Faber
4f370ea5fd [CODEOWNERS] Remove 'CMakeLists.txt' rule, which is too noisy. 2019-08-04 12:55:51 +02:00
Eric Kohl
7550e9efbf [DEVMGR] Add the code to uninstall a device from the property page 2019-08-04 11:20:04 +02:00
Katayama Hirofumi MZ
5bbc2c6308 [SETUP][INF] Fix font substitutes (#1794)
Fix font substitutes. CORE-16264

- Modify muifonts.h.
- Modify font.inf.
2019-08-04 16:10:15 +09:00
Katayama Hirofumi MZ
dc1aa8010a [FONTS][SETUP][BOOTDATA] Add Lucida Console font (#1793)
Add "Lucida Console" fonts. CORE-16264

- Add "Lucida Console" font by duplicating "DejaVu Sans Mono" font and renaming it.
- Delete some "Lucida Console" font substitutes.
- Add LICENSE file.

I used FontForge to rename it. Its family name is "Lucida Console". Its display name is "Lucida Console". Its font filename is lucon.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-04 15:38:45 +09:00
Katayama Hirofumi MZ
f7307637a6 [MEDIA][FONTS] Add Arial Black font (#1792)
Add "Arial Black" font. CORE-16264

- Add "Arial Black" font that is based on "Archivo Black" font of Omnibus-Type.
- Add LICENSE file.

"Archivo Black" is similar to MS "Arial Black" in its metrics. I used FontForge to rename the font. The font filename is ariblk.ttf. The family name is "Arial Black". The display name is "Arial Black". The Underline Position is hacked for workaround of FontForge's bug.
2019-08-04 15:37:34 +09:00
Katayama Hirofumi MZ
9cd11eb103 [WIN32SS][NTGDI] Fix condition of bold emulation (#1787)
- Define EMUBOLD_NEEDED macro to determine the condition of bold emuration necessity.
- Use this macro.
- Loose the condition.
2019-08-04 15:15:52 +09:00
Katayama Hirofumi MZ
04a361d091 [FONTS][SETUP] Add Trebuchet MS fonts (#1791)
Add "Trebuchet MS" fonts. CORE-16272

- Add "Trebuchet MS", "Trebuchet MS Bold", "Trebuchet MS Bold Italic" and "Trebuchet MS Italic" fonts by duplicating "Open Sans" fonts and renaming them.
- Delete some "Trebuchet MS" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Trebuchet MS". Their display names are "Trebuchet MS", "Trebuchet MS Bold", "Trebuchet MS Bold Italic" and "Trebuchet MS Italic". Their font filenames are trebuc.ttf, trebucbd.ttf, trebucbi.ttf and trebucit.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-04 12:11:55 +09:00
Katayama Hirofumi MZ
dbb4432b25 [FONTS][SETUP][BOOTDATA] Add Times New Roman fonts (#1790)
Add "Times New Roman" fonts. CORE-16272

- Add "Times New Roman" and "Times New Roman Italic" fonts by duplicating "Liberation Serif" fonts and renaming them.
- Delete some "Times New Roman" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Times New Roman". Their display names are "Times New Roman", "Times New Roman Bold", "Times New Roman Bold Italic" and "Times New Roman Italic". Their font filenames are times.ttf, timesbd.ttf, timesbi.ttf and timesi.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-04 11:22:51 +09:00
Mark Jansen
c057a07d79 [WIN32SS] Improve font loading failure logging 2019-08-04 01:55:18 +02:00
Mark Jansen
35dc022e14 [WIN32SS] Only access a font face if it was actually loaded 2019-08-04 00:41:12 +02:00
Shy Zedaka
ce2f52d054 [SYSDM] Fix Re-sizing License Prompt (#1789)
CORE-16278
2019-08-03 23:34:20 +02:00
Pierre Schweitzer
d49a53ca99 [SMSS] Use the appropriate security descriptor when creating the LPC port 2019-08-03 21:56:15 +02:00
Eric Kohl
611989943e [DEVMGR] Change the menu id prefix from IDC_ to IDM_. 2019-08-03 21:52:00 +02:00
Eric Kohl
38d3c4d8da [DEVMGR] Fix the indentation of the menu resources. No code changes! 2019-08-03 16:37:54 +02:00
Eric Kohl
5d4f69bf35 [WINLOGON] Load the notification dlls on demand
Do not keep the notifications loaded until shutdown. Load and unload them when a notification routine must be called.
2019-08-03 15:05:20 +02:00
Oleg Dubinskiy
47303268e1 [USBAUDIO] Fix compilation issues 2019-08-03 14:55:57 +02:00
Eric Kohl
d1a2983c00 [DEVMGR] Fix wonky action menu
Patch by Pi_User5.

CORE-10364
2019-08-03 14:54:18 +02:00
Katayama Hirofumi MZ
23faa89d09 [FONTS][SETUP] Add Franklin Gothic Medium fonts (#1786)
Add "Franklin Gothic Medium" fonts. CORE-16272

- Add "Franklin Gothic Medium" and "Franklin Gothic Medium Italic" fonts by duplicating Alexei Vanyashin's "Libre Franklin" fonts and renaming them.
- Delete some "Franklin Gothic Medium" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Franklin Gothic Medium". Their display names are "Franklin Gothic Medium" and "Franklin Gothic Medium Italic". Their font filenames are framd.ttf and framdit.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.

Alexei Vanyashin's "Libre Franklin" fonts are available at https://github.com/alexeiva/Libre-Franklin .
2019-08-03 19:03:27 +09:00
Katayama Hirofumi MZ
bb1878157b [FONTS][SETUP] Add Palatino Linotype fonts (#1785)
Add "Palatino Linotype" fonts. CORE-16272

- Add "Palatino Linotype", "Palatino Linotype Bold", "Palatino Linotype Bold Italic" and "Palatino Linotype Italic" fonts by duplicating "DejaVu Serif" fonts and renaming them.
- Delete some "Palatino Linotype" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Palatino Linotype". Their display names are "Palatino Linotype", "Palatino Linotype Bold", "Palatino Linotype Bold Italic" and "Palatino Linotype Italic". Their font filenames are pala.ttf, palab.ttf, palabi.ttf and palai.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-03 16:24:32 +09:00
Katayama Hirofumi MZ
5ce98c8519 [FONTS] s/Geogia/Georgia/ 2019-08-03 11:28:10 +09:00
Katayama Hirofumi MZ
e282f99ce5 [FONTS][SETUP] Add Geogia fonts (#1784)
Add "Geogia" fonts. CORE-16272

- Add "Geogia", "Geogia Bold", "Geogia Bold Italic" and "Geogia Italic" fonts by duplicating FreeSerif fonts and renaming them.
- Delete some "Geogia" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Geogia". Their display names are "Geogia", "Geogia Bold", "Geogia Bold Italic" and "Geogia Italic". Their font filenames are georgia.ttf, georgiab.ttf, georgiaz.ttf and georgiai.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-03 10:43:09 +09:00
Katayama Hirofumi MZ
faa3237d46 [FONTS][BOOTDATA][SETUP] Add Courier New fonts (#1783)
Add "Courier New" fonts. CORE-16272

- Add "Courier New", "Courier New Bold", "Courier New Bold Italic" and "Courier New Italic" fonts by duplicating FreeMono fonts and renaming them.
- Delete some "Courier New" font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Courier New". Their display names are "Courier New", "Courier New Bold", "Courier New Bold Italic" and "Courier New Italic". Their font filenames are cour.ttf, courbd.ttf, courbi.ttf and couri.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-03 09:05:14 +09:00
Katayama Hirofumi MZ
1463f4b02a [FONTS][SETUP][BOOTDATA] Add Arial fonts (#1781)
Add Arial fonts. CORE-16272

- Add "Arial", "Arial Bold", "Arial Bold Italic" and "Arial Italic" fonts by duplicating Liberation Sans fonts and renaming them.
- Disable some Arial font substitutes.
- Add LICENSE file.

I made these font files by using FontForge. Their family name is "Arial". Their display names are "Arial", "Arial Bold", "Arial Bold Italic" and "Arial Italic". Their font filenames are arial.ttf, arialbd.ttf, arialbi.ttf and ariali.ttf. The Underline Positions are hacked by adding an integer value for workaround of FontForge's bug.
2019-08-02 20:37:53 +09:00
Katayama Hirofumi MZ
7547757892 [WIN32SS][NTGDI] Improve IntGetOutlineTextMetrics (#1760)
Improve size checking of IntGetOutlineTextMetrics function.
2019-08-02 20:28:30 +09:00
Hermès Bélusca-Maïto
44cddadba8 [KERNEL32] Minor enhancements for CreateRemoteThread(). (#804)
- Add some cleanup code in failure code paths, instead of asserting.
- Move BasepNotifyCsrOfThread() helper to the only file where it is used.
- Don't use ERROR_DBGBREAK in failure paths but just DPRINT the error
  message: we handle the failures properly.
- When creating the remote thread, sync its service tag with the parent
  thread's one.
2019-08-01 19:12:49 +02:00
Hermès Bélusca-Maïto
effdb6f232 [KERNEL32][RTL] Diverse fixes/improvements for thread stack creation code. (#802)
- kernel32!BaseCreateStack() is compatible with ntdll!RtlpCreateUserStack().
- When checking whether a stack guard page can be added, its size has to
  be accounted for in the checking logic.
- We have to satisfy the PEB::MinimumStackCommit constraint.
- We cannot use PEB::GuaranteedStackBytes in BaseCreateStack() since it is
  nowhere initialized (default is 0). It gets initialized to a non-zero
  value when the user manually calls SetThreadStackGuarantee().
  https://www.installsetupconfig.com/win32programming/windowsthreadsprocessapis7_6.html

- RtlpCreateUserStack(): Fix memory leak in failure case.
- RtlpFreeUserStack() doesn't need to return anything.

See also commit 1bc59379 (r59868).

CORE-11319
2019-08-01 19:04:13 +02:00
Katayama Hirofumi MZ
4895f21efa [MEDIA][FONTS] Add Hebrew MS Sans Serif (ssee1255.fon) 2019-08-01 12:29:43 +09:00
Katayama Hirofumi MZ
6642dbc470 [WIN32SS][NTGDI][NTUSER] Make gusLanguageID USHORT (#1776)
Every language ID is an unsigned integer.

- Make gusLanguageID unsigned.
- Make the return value type of UserGetLanguageID unsigned.
2019-07-31 22:24:01 +09:00
Katayama Hirofumi MZ
87279857bb [FREETYPE] Improve font rendering with font hinting workaround (#1771)
CORE-15762, CORE-16232
It seems some fonts are blurry or in bad rendering because of FreeType Font Hinting implementation.
This PR is subpixel2.patch from CORE-16232, based on the following comment:
https://bugs.launchpad.net/ubuntu/+source/freetype/+bug/1722508/comments/29
2019-07-31 21:57:42 +09:00
Katayama Hirofumi MZ
4cfe7f84bb [SETUP] Add codepage-specific font substitutes (#1772)
Add codepage-specific font substitutes for i18n. CORE-16266
2019-07-31 17:43:08 +09:00
Joachim Henze
3e581e44a9 [INTL] Addendum to CORE-16252
That change was not intended.in
commit 0.4.13-dev-740-g
8b67edd8fa

Thx to Stas'M for noticing the windres warning.
2019-07-31 01:58:42 +02:00
Joachim Henze
8b67edd8fa [INPUT][INTL][SYSSETUP] Limit Combobox height CORE-16252
v6 comboboxes default to displaying up to 30entries and
give a bad user experience in 2nd stage
where we usually have low vertical screen resolution.
Therefore limit the height of the expanded boxes to
bring us close to how they were drawn before 0.4.12-dev-882-g
e3e173ffaa

Adding CBS_NOINTEGRALHEIGHT gives similar result for both:
comctl32 v5 and v6 comboboxes.
2019-07-30 23:14:31 +02:00
Eric Kohl
034c6fd0c5 [LSASRV] Improvements to LsapLogonUser()
- Token handle duplication must be the last step because we cannot close the duplicated token handle if something fails.
- Call LsaApLogonTerminated(), delete the logon session and free the profile buffer if something fails.
2019-07-30 23:10:33 +02:00
Stanislav Motylkov
5cff9163e9 [CONFIGURE] Add MSVC compiler 19.22.27905 (VS Community 2019) (#1774) 2019-07-30 23:01:23 +02:00
Katayama Hirofumi MZ
f054844f33 [SETUP] Sort font substitutes (#1770)
Sort the font substitute setting lists in base/setup/lib/muifonts.h .
2019-07-30 22:05:11 +09:00
Katayama Hirofumi MZ
d31e814314 [SETUP] Delete 'Comic Sans MS' font substitutes (#1769)
Enable real 'Comic Sans MS' font by deleting the 'Comic Sans MS' font substitutes. CORE-16251
2019-07-30 19:09:23 +09:00
Katayama Hirofumi MZ
7c9755b47d [WIN32SS][NTGDI] Fix and improve font dumping (#1768)
Fix and improve font dumping. CORE-16245
- FontGDI->FontObj is not a pointer.
- "%s" does null check, so we remove redundant null checks.
- Add FaceName and StyleName dumping.
2019-07-30 18:15:56 +09:00
Hermès Bélusca-Maïto
b382145539 [FREELDR] Improve some *GetFileInformation() traces. 2019-07-30 00:57:22 +02:00
Stanislav Motylkov
ef76709b3d [FREELDR] Fix remaining hwdisk and FATX bugs (#1766)
- DiskGetFileInformation() should return relative addresses -- relative to the beginning of the "device" (partition, or disk) in question.
- FatXSearchDirectoryBufferForFile() should assign file attributes.
- Minor code style improvements in FatOpenVolume().

CORE-16216 CORE-16248

Co-authored-by: Victor Perevertkin <victor@perevertkin.ru>
2019-07-30 00:27:36 +02:00
Tibor Lajos Füzi
48200015f7 [KBDHU] Fix Hungarian keyboard layout. (#1765)
CORE-15567
2019-07-29 21:55:24 +02:00
jimtabor
02db01f3a6 [NtGDI] Fix one size region test.
See CORE-16246, the clip region may be the same size but more complex
than the callers simple region.
2019-07-29 13:02:07 -05:00
Stanislav Motylkov
06b77b8572 [FREELDR] Implement proper partition type detection and handling (#1762)
- This allows to detect and dynamically handle different partitioning schemes.
- Implemented detection of MBR, GPT, Xbox-BRFR, and partitionless disks.
- Currently only MBR and Xbox-BRFR partitions are handled and tested.

CORE-9841 CORE-15768 CORE-16216 CORE-16248
2019-07-29 14:25:54 +02:00
Hermès Bélusca-Maïto
8831328081 [USER32] Fix build after 51d031cc ; addendum to f21871fb (r69249) and cf98f01e (r72650). CORE-10194 2019-07-29 01:38:43 +02:00
Eric Kohl
32861b84b9 [MSV1_0] Add debug messages to MsvpCheckWorkstations() and disable MsvpCheckLogonHours() for testing. 2019-07-29 01:22:37 +02:00
Hermès Bélusca-Maïto
51d031cc5d [USER32] Use the correct __REACTOS__ define. 2019-07-29 00:33:20 +02:00
Hermès Bélusca-Maïto
bdb60afc86 [NDK] Use the correct __REACTOS__ define. 2019-07-29 00:33:19 +02:00
Jose Carlos Jesus
f699cc96ac [NETSHELL][SYSSETUP] Minor improvements for pt_PT translation and object position adjustments (#1761) 2019-07-29 00:20:40 +02:00
Hermès Bélusca-Maïto
5064f3c47e [PSDK] ks.h : Fix some IOCTL values, caught by Ben Nottelling. 2019-07-29 00:20:07 +02:00
Eric Kohl
6b15e72206 [W32TIME] Use an event to stop the service
CORE-16180
2019-07-28 22:38:04 +02:00
Stanislav Motylkov
8f25e464c2 [FREELDR] Trivial improvements (#1757)
* [FREELDR] Fix uninitialized string in DiskGetBootPath()

CORE-16216 CORE-16248

* [FREELDR] xboxdisk: Add comment and fix code style
2019-07-28 18:20:53 +02:00
Hermès Bélusca-Maïto
b6135732d4 [DLLs] Fix .spec files regarding OLE-specific exports.
- Do not use hardcoded ordinals, add missing '-private'.
  Except for MSXML3, OLE32 and RSAENH, see commit bff824b2 for more details.

- SHSVCS: The 6 first exports are nonamed with ordinals. Replace exported
  commented stubs by actual exported stubs instead.

Co-Authored-By: Timo Kreuzer <timo.kreuzer@reactos.org>
2019-07-28 16:26:22 +02:00
Hermès Bélusca-Maïto
2becb000c8 [SPEC2DEF] Check whether OLE-specific exports do not have assigned ordinals, as they should be.
The check is done at the same time as when we check also that these
exports are marked PRIVATE or not.

This permits us to check for the same conditions as MS' LINK.EXE, but
here on GCC builds as well.

See the following pages for more details:
https://docs.microsoft.com/en-us/cpp/error-messages/tool-errors/linker-tools-warning-lnk4104
https://docs.microsoft.com/en-us/cpp/error-messages/tool-errors/linker-tools-warning-lnk4222

In this last page (LNK4222), the specified list of exports is incomplete.
Manual tests showed that the very same list as for LNK4104 is checked.
2019-07-28 15:50:30 +02:00
Eric Kohl
12aba91abb [MSV1_0] LsaApCallPackage: The messages MsV1_0EnumerateUsers, MsV1_0GetUserInfo and MsV1_0ReLogonUsers are obsolete. 2019-07-28 14:57:46 +02:00
jimtabor
665871527b [GDI32] Allow functions to access printing support.
Reapplying lost committed code.
2019-07-27 14:15:42 -05:00
jimtabor
4563ca28d3 [GDI32] Add more to Local DC structure.
Make the two structures identical. These are used for printing and
enhanced metafile support.
2019-07-27 14:13:14 -05:00
Eric Kohl
294af4a774 [PSDK] Add missing UnregisterDeviceNotification() to winuser.h. 2019-07-27 19:59:32 +02:00
Eric Kohl
353e05a4f3 [AUDIOSVC] Fix the coding style. No code changes! 2019-07-27 18:20:04 +02:00
Oleg Dubinskiy
6ee7cba77b [USETUP] Use "L" key instead of "D" for deleting partitions at 1st setup stage 2019-07-27 13:18:34 +02:00
Timo Kreuzer
08c6d21e1f [REACTOS] Fix warning C4146: unary minus operator applied to unsigned type, result still unsigned 2019-07-27 11:21:28 +02:00
Joachim Henze
64e182e429 [WIN32SS] Addendum to font alignment CORE-16133
addendum to 0.4.13-dev-707-g
0e4db883e5

Jim Tabor intended to structurally use flTextAlign over
lTextAlign internally within IntExtTextOutW().
He initially committed these changes in 0.4.12-dev-805-g
3377fe184e

But we unintentionally lost these changes via 0.4.13-dev-370-g
8f482af0a8

Many thanks to Doug Lyons who helped a lot with fixing CORE-16133.
2019-07-27 10:00:42 +02:00
Katayama Hirofumi MZ
d7aacdcc0d [MEDIA][FONTS] Add Comic Sans MS fonts (comic.ttf, comicbd.ttf) (#1754)
Add Comic Sans MS font files. CORE-16237

Add "Comic Relief" fonts by Jeff Davis under SIL Open Font License in the name of "Comic Sans MS". We cannot choose Comic Sans MS currently but it's font engine's bug.
2019-07-27 14:53:06 +09:00
Hermès Bélusca-Maïto
d433f03b56 [WINHLP32] All the lang resource files are in UTF-8. 2019-07-26 14:53:26 +02:00
Katayama Hirofumi MZ
8084c042f1 [USER32_APITEST] Add #include 'precomp.h' in MessageStateAnalyzer 2019-07-26 21:45:11 +09:00
Katayama Hirofumi MZ
9c5d8cf7db [USER32_APITEST] Move <strsafe.h> #inclusion 2019-07-26 21:30:36 +09:00
Katayama Hirofumi MZ
0e4db883e5 [WIN32SS][NTGDI] text/font vertical alignment patch CORE-16133
Based on Doug Lyons' patch. It partially fix CORE-16246 and CORE-16133.
Selection area is not fixed yet.
2019-07-26 19:13:00 +09:00
Serge Gautherie
c00dc46863 [CODEOWNERS] Add UniATA (#1689) 2019-07-24 19:59:07 +02:00
Shy Zedaka
112127593b [TRANSLATION] Hebrew Translations For Setup (#1750) 2019-07-24 19:56:48 +02:00
Oleg Dubinskiy
1a84d120a6 [DSOUND_NEW] Remove unused dsound_convert.c file (#1748) 2019-07-24 19:56:33 +02:00
Katayama Hirofumi MZ
782160bbc0 [USER32_APITEST][INCLUDE] Add MessageStateAnalyzer testcase (#1732)
I want to visualize the message stream and verify the states of each message. ROSTESTS-328

- Add a testcase named MessageStateAnalyzer into user32_apitest.
- Also fix type casts in <windowsx.h>.
2019-07-25 01:45:55 +09:00
Katayama Hirofumi MZ
1e91a1690d [USER32][NTUSER] Fix menu arrow drawing (of DrawFrameControl) (#1752)
CORE-13211
user32!DrawFrameControl drawed invalid menu arrow when the width is shorter than the height.

- Use the squared rectangle.
- Draw it in the transparent background mode.
- Save the old background mode of HDC.

This PR will fix UltraISO's bug.
2019-07-25 01:40:33 +09:00
Katayama Hirofumi MZ
77d3d25ae8 [MEDIA][FONTS] RAPPS checkmark fix (#1751)
The checkmarks of RAPPS were strange. This PR will fix the checkmark ("b") of 12px bitmap glyph of Marlett.ttf font file. CORE-14872
2019-07-24 15:39:10 +09:00
Katayama Hirofumi MZ
f9b494e2ca [MEDIA][FONTS] Add copyright notice of TransGaming Technologies
With some font error fixed. CORE-16226
2019-07-23 21:55:38 +09:00
Katayama Hirofumi MZ
b8383b4546 [MEDIA][FONTS] Renewal of Marlett.ttf (#1749)
Renewal of Marlett.ttf font file. CORE-16226, CORE-14872

- Based on Ged Murphy's Marlett.ttf (See 527f2f9057/media/fonts/Marlett.ttf).
- Erase the centered triangles.
- Adjustment of glyphs.
- Clarify the copyright ownership.
- Tested with 3 test programs (RadioAndCheck, PixelPerfectGlyph and MarlettCompare).
2019-07-23 16:03:30 +09:00
Doug-Lyons
77671f0337 [NETID][WINLOGON] Fix Computer Name Change to update Domain/Hostname on reboot. (#1684)
CORE-16123

- NETID: Correct the call when using the "Computer Name Change" in ReactOS.
- WINLOGON: Update the volatile "Hostname" and "Domain" variables from
  their non-volatile counterparts.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-07-22 00:49:47 +02:00
Bișoc George
eede1b9b7a [UMPNPMGR] Implement registry functions for SuppressUI and SuppressNewHWUI handling. (#1683)
CORE-15897

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-07-21 19:02:53 +02:00
Eric Kohl
e0c97c9eca [SRVSVC][WKSSVC] Set the stop pending status before stopping the services and stop the RPC listener on shutdown as well. 2019-07-21 18:56:59 +02:00
Eric Kohl
1f082ecc68 [WMISERV][WUAUSERV] Stop the service if the stop event creation fails. 2019-07-21 18:56:57 +02:00
Erdem Ersoy
85917e266a [TRANSLATIONS] Update Turkish translations (#1650)
Translations for Solitaire, Spider, WinMine, Notepad, Wordpad & Write, MSPaint, MPlay32, SndRec32, WinHlp32, SndVol32, TaskMgr and Calc.
2019-07-21 17:49:12 +02:00
Benjamin Aerni
5b9543c31a [W32TIME] Use a reasonable fallback of 9 hours. (#1724)
CORE-16181

This allows preventing spamming the time servers if the registry entry
becomes corrupted or missing. Also, disallow a setting of less than
2 minutes for the same reasons, and instead use the fallback of 9 hours.
2019-07-21 17:47:13 +02:00
Oleg Dubinskiy
7f59361911 [DSOUND_NEW] Completely fix gcc compilation (addendum to 25e98eb). (#1740)
CORE-16128
2019-07-21 17:02:34 +02:00
Bișoc George
4c4e3d6048 [OSK] Use new coordinates on keyboard layout changing (#1745)
CORE-16214
2019-07-21 16:52:25 +02:00
Katayama Hirofumi MZ
31d616ff73 [WIN32SS][GDI] Assume pso->sizlBitmap.cy positiveness (#1743)
We assume pso->sizlBitmap.cy is positive. CORE-15995

Because pso->sizlBitmap.cy is certificated as a positive value after initialization in SURFACE_AllocSurface, so we can safely omit abs and labs (absolute) function calls for it.
2019-07-21 21:39:05 +09:00
Michael Maltsev
a303932803 [ADVAPI32] Avoid excessive allocation in CheckTokenMembership. CORE-16094 2019-07-21 11:39:30 +02:00
Katayama Hirofumi MZ
17bc3d69f9 [MEDIA][FONTS] Shrink Marlett.ttf file size 2019-07-21 15:17:02 +09:00
Katayama Hirofumi MZ
023794c7c1 [FONTS][NTGDI] Change Marlett.ttf charset and delete charset hacks 2019-07-21 12:59:06 +09:00
Hermès Bélusca-Maïto
5666ea2061 [MSCONFIG][ROSAPPS] Remove explicit MINGW_HAS_SECURE_API since it is already enabled globally. CORE-16224 2019-07-21 01:06:54 +02:00
Hermès Bélusca-Maïto
3de67cec24 [WIN32K:NTGDI] Improve allocated resources cleanup in failure paths of IntGdiLoadFontsFromMemory().
- Use an auxiliary list where we add the new enumerated faces, for easy
  roll-back in case a failure happens during font loading. Only at the
  very end when font loading has been successfully done, the auxiliary
  list is appended to the corresponding global or per-proceess font list.

- Perform actual cleanup in case of failures.

- Introduce CleanupFontEntryEx() helper to simplify cleanup in
  IntGdiLoadFontsFromMemory() in failure paths; implement
  CleanupFontEntry() around it.

Additions:

- Perform string buffer NULL check in IntGdiAddFontResource().
- Reorder memory unmapping and section object dereferencing in
  IntGdiAddFontResource().
- Move DuplicateUnicodeString() upwards.
- Mark explicitly the Marlett font handling hacks.
2019-07-21 01:01:41 +02:00
Eric Kohl
eab73ad1a4 [SRVSVC] Make the server service stoppable. 2019-07-20 22:48:17 +02:00
Eric Kohl
4073a8c58d [WKSSVC] Make the workstation service stoppable. 2019-07-20 22:43:39 +02:00
Eric Kohl
8a631c8455 [WUAUSERV] Make the wuauserv service startable and stoppable. 2019-07-20 19:30:27 +02:00
Katayama Hirofumi MZ
ae99df1675 [WIN32SS][NTGDI] Support raster fonts (*.fnt and *.fon) (#1739)
Add raster font (*.fnt and *.fon files) support. CORE-16165

- Add IntGetCharSet() function to get the charset by index and/or the number of charsets.
- Make IntGdiLoadFontsFromMemory() a non-recursive function.
- IntGetOutlineTextMetrics() accepts raster fonts.
- Improve CharMap handling (especially TT_PLATFORM_APPLE_UNICODE).
- Write the raster font file info to the registry.
- Don't request font size for raster fonts in IntRequestFontSize() function.
2019-07-20 16:47:29 +02:00
Eric Kohl
eb532bc641 [WMISVC] Accept stop and shutdown commands when the service is running. 2019-07-20 15:51:39 +02:00
Timo Kreuzer
9efeefd506 [GEN_BASEADDRESS] Add framebuf.dll and framebuf_new.dll to exclude ist in gen_baseaddress.py 2019-07-20 13:56:18 +02:00
Timo Kreuzer
599843ac8e [TOOLS] Make gen_baseaddress.py python 3 compatible 2019-07-20 13:56:18 +02:00
Timo Kreuzer
5aab1831f7 [CMAKE] Update base addresses 2019-07-20 13:56:18 +02:00
Timo Kreuzer
3af7cb825f [NTOSKRNL] Replace overlapping strcopy with memmove
Fixes 4 GCC 8 warnings of the kind:
ntoskrnl/kdbg/kdb_cli.c:3015:21: error: 'strcpy' accessing 1 byte at offsets 0 and [0, 2147483647] may overlap 1 byte at offset 0 [-Werror=restrict]
                     strcpy(p2, p2 + j);
                     ^~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
95b3eebf71 [CRT] Use sprintf_s instead of sprintf
Fixes GCC 8 warning:
sdk/lib/crt/misc/i10output.c:83:25: error: '%d' directive writing between 1 and 11 bytes into a region of size 6 [-Werror=format-overflow=]
     sprintf(format, "%%.%dle", prec);
                         ^~
sdk/lib/crt/misc/i10output.c:83:21: note: directive argument in the range [-2147483648, 2147483646]
     sprintf(format, "%%.%dle", prec);
                     ^~~~~~~~~
sdk/lib/crt/misc/i10output.c:83:5: note: 'sprintf' output between 6 and 16 bytes into a destination of size 8
     sprintf(format, "%%.%dle", prec);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
b275f24406 [VFATLIB] Use RtlStringCbPrintfA instead of sprintf
Fixes GCC 8 warning:
sdk/lib/fslib/vfatlib/check/boot.c:173:27: error: '%02x' directive writing between 2 and 8 bytes into a region of size between 0 and 15 [-Werror=format-overflow=]
   sprintf(buf, "%s%u:%02x/%02x", first ? "" : ", ",
                           ^~~~
sdk/lib/fslib/vfatlib/check/boot.c:173:16: note: directive argument in the range [0, 2147483647]
   sprintf(buf, "%s%u:%02x/%02x", first ? "" : ", ",
                ^~~~~~~~~~~~~~~~
sdk/lib/fslib/vfatlib/check/boot.c:173:3: note: 'sprintf' output between 8 and 31 bytes into a destination of size 20
   sprintf(buf, "%s%u:%02x/%02x", first ? "" : ", ",
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    (unsigned)(p - (uint8_t *) b), *p, *q);
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
ddb56e8cca [OLEAUT32] Use snprintf instead of sprintf
Fixes GCC 8 warning:
dll/win32/oleaut32/oleaut.c:876:39: error: '%s' directive writing up to 99 bytes into a region of size between 92 and 291 [-Werror=format-overflow=]
     sprintf(typelibkey, "Typelib\\%s\\%s\\0\\win%u", tlguid, ver, sizeof(void *) == 8 ? 64 : 32);
                                       ^~                     ~~~
dll/win32/oleaut32/oleaut.c:876:5: note: 'sprintf' output between 18 and 316 bytes into a destination of size 300
     sprintf(typelibkey, "Typelib\\%s\\%s\\0\\win%u", tlguid, ver, sizeof(void *) == 8 ? 64 : 32);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
8f050e66fd [FREELDR] Use RtlStringCbPrintfA instead of sprintf
Fixes GCC 8 warnings like:
boot/freeldr/freeldr/disk/scsiport.c:806:31: error: 'partition(0)' directive writing 12 bytes into a region of size between 1 and 64 [-Werror=format-overflow=]
     sprintf(PartitionName, "%spartition(0)", ArcName);
                               ^~~~~~~~~~~~
boot/freeldr/freeldr/disk/scsiport.c:806:5: note: 'sprintf' output between 13 and 76 bytes into a destination of size 64
     sprintf(PartitionName, "%spartition(0)", ArcName);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
791b1ad7bd [FASTFAT] Copy an entire field, instead of half-copying it with RtlCopyMemory
Fixes GCC 8 warning:
sdk/include/crt/mingw32/intrin_x86.h:76:12: error: 'memmove' offset [21, 40] from the object at 'DirContext' is out of the bounds of referenced subobject 'Attrib' with type 'unsigned char' at offset 19 [-Werror=array-bounds]
     return memmove(dest, source, num);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
3120320c65 [FRAMEDYN] Fix broken asm (.code64 is for x64 only) 2019-07-20 13:56:18 +02:00
Timo Kreuzer
1b70ddd834 [KERNEL32] Improve path name handling
Fixes GCC 8 warning:
dll/win32/kernel32/client/loader.c: In function 'LoadLibraryA':
dll/win32/kernel32/client/loader.c:129:17: error: 'strncat' specified bound 13 equals source length [-Werror=stringop-overflow=]
                 strncat(PathBuffer, "\\twain_32.dll", 13);
                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
cdca4e9036 [MSPAINT] Don't use SIZEOF on a pointer
Fixes GCC 8 warning:
base/applications/mspaint/definitions.h:16:31: error: division 'sizeof (LPWSTR {aka wchar_t*}) / sizeof (WCHAR {aka wchar_t})' does not compute the number of array elements [-Werror=sizeof-pointer-div]
 #define SIZEOF(a)  (sizeof(a) / sizeof((a)[0]))
                     ~~~~~~~~~~^~~~~~~~~~~~~~~~
base/applications/mspaint/main.cpp:134:55: note: in expansion of macro 'SIZEOF'
                 lstrcpyn(pon->lpOFN->lpstrFile, Path, SIZEOF(pon->lpOFN->lpstrFile));
                                                       ^~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
2800837dc0 [MSGINA] Fix copying the TokenSource string
TOKEN_SOURCE::SourceString is an 8 char non-null-terminated string. Copy it as such.

Fixes GCC 8 warning:
dll/win32/msgina/lsa.c:195:5: error: 'strncpy' output truncated before terminating nul copying 8 bytes from a string of the same length [-Werror=stringop-truncation]
     strncpy(TokenSource.SourceName, "User32  ", sizeof(TokenSource.SourceName));
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
f3a9b524f1 [ADVAPI32] Fix copying the TokenSource string
TOKEN_SOURCE::SourceString is an 8 char non-null-terminated string. Copy it as such.

Fixes GCC 8 warning:
dll/win32/advapi32/misc/logon.c:638:5: error: 'strncpy' output truncated before terminating nul copying 8 bytes from a string of the same length [-Werror=stringop-truncation]
     strncpy(TokenSource.SourceName, "Advapi  ", sizeof(TokenSource.SourceName));
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
e825783b75 [PSDK] Remove default value for BSTR parameter in msxml2.idl
Fixes GCC 8 warning:
In file included from base/applications/msconfig_new/xmldomparser.hpp:26,
                 from base/applications/msconfig_new/toolspage.cpp:11:
sdk/include/psdk/msxml2.h:12705:20: error: ISO C++ forbids converting a string constant to 'BSTR' {aka 'wchar_t*'} [-Werror=write-strings]
         BSTR uri = L"x") = 0;
                    ^~~~
2019-07-20 13:56:18 +02:00
Timo Kreuzer
48f3efa254 [PSDK][CRT] Add some casts to make GCC 8 happy 2019-07-20 13:56:18 +02:00
Timo Kreuzer
846cd55294 [PSDK] Add DECLSPEC_SELECTANY to GUIDs to make GCC 8 happy 2019-07-20 13:56:18 +02:00
Timo Kreuzer
cd9f9e8b94 [CMAKE] Globally enable secure CRT functions
"This is what Windows does" (tm)
2019-07-20 13:56:18 +02:00
Timo Kreuzer
f96407441c [CRT] Remove _wctime_s from time.h 2019-07-20 13:56:18 +02:00
Timo Kreuzer
4b79367647 [CMAKE] Define _GLIBCXX_HAVE_BROKEN_VSWPRINTF to fix build with GLIBCXX and our c++ headers 2019-07-20 13:56:18 +02:00
Timo Kreuzer
58b615f668 [CMAKE] Disable some overly sensitive warnings
-Wno-unused-const-variable
-Wno-unused-local-typedefs
-Wno-deprecated
2019-07-20 13:56:18 +02:00
Thomas Faber
aa46da57d4 [ACPICA] Update to version 20190703. CORE-16202 2019-07-20 08:47:50 +02:00
Shy Zedaka
10798fa3ff [TRANSLATION] Hebrew Translation for Services (#1741) 2019-07-19 17:08:33 +02:00
Stanislav Motylkov
74bcf3083d [FREELDR] Abstract VGA BIOS specific code (#1736)
* [FREELDR] Abstract VGA BIOS specific code

WinLdrSetupSpecialDataPointers() uses INT 10h video interrupts, but they are not available on Xbox, so make them machine-specific.

CORE-16204 CORE-16210

* [FREELDR] Abstract getting extended BIOS data area

WinLdrSetupSpecialDataPointers() uses INT 15h AH=C1h to get extended BIOS data area, but it's not available on Xbox, so make it machine-specific.

CORE-16204 CORE-16210
2019-07-18 23:09:59 +02:00
Stanislav Motylkov
7547f85b7e [FREELDR] Abstract floppy drive detection code (#1735)
Make floppy detection code machine-specific, because Xbox CMOS cannot be used to detect floppies. Based on a patch by Matt Borgerson.

CORE-16204 CORE-16207

Co-authored-by: Matt Borgerson <contact@mborgerson.com>
2019-07-18 22:50:48 +02:00
Stanislav Motylkov
bca8093b89 [FREELDR] Fix memory initialization on Xbox
- Refactor and use PC memory map init functions
- This fixes filesystem detection and probably some other problems

Based on a patch by Matt Borgerson.

CORE-16204 CORE-16206

Co-authored-by: Matt Borgerson <contact@mborgerson.com>
2019-07-18 22:49:51 +02:00
Stanislav Motylkov
8c55fdd17c [FREELDR] Whitespace improvements - no code changes 2019-07-18 22:49:51 +02:00
Stanislav Motylkov
31aca248a1 [FREELDR] hwdisk: Add sanity checks to avoid infinite loop (#1731)
CORE-16204 CORE-16205
2019-07-18 22:49:11 +02:00
Joachim Henze
5dbc677cdd [BOOTDATA][SETUP] Fix regression CORE-16200 font rendering
By removing font substitution for 'Microsoft Sans Serif'.
Thanks to the patches author Katayama Hirofumi MZ.

This is a partial revert of the guilty rev
master guilty 0.4.13-dev-9-g
811faed421

RC guilty 0.4.12-RC-13-g
8d3def0529

VBox test result:
https://reactos.org/testman/compare.php?ids=68497,68499

The same fix has been applied before to 0.4.12-RC-44-g
ca0e00e8af
2019-07-16 22:51:42 +02:00
Katayama Hirofumi MZ
34bf24756a [SDK][INCLUDE] Add WM_WTSSESSION_CHANGE message (#1730)
- Add WM_WTSSESSION_CHANGE messages to <winuser.h>.
- Add WTS_* constant macros.
2019-07-15 23:03:06 +09:00
Bișoc George
b292acb5f7 [OSK] Implement "Always on Top" feature (#1729) 2019-07-15 15:59:06 +02:00
Katayama Hirofumi MZ
d3cdbad206 [SDK][INCLUDE] Add WM_INPUT_DEVICE_CHANGE and WM_INPUT (#1728)
- Add WM_INPUT_DEVICE_CHANGE and WM_INPUT messages.
- Add the relevant constant values.
2019-07-15 20:32:53 +09:00
Katayama Hirofumi MZ
d46edf494d [SDK][INCLUDE] Add MENUGETOBJECTINFO structure (#1727)
- Add MENUGETOBJECTINFO structure to <winuser.h> header.
- Add MNGOF_TOPGAP and MNGOF_BOTTOMGAP constant macros.
2019-07-15 19:59:38 +09:00
Katayama Hirofumi MZ
47e183c521 [SDK][INCLUDE] Add HANDLE_WM_* macros to <windowsx.h> (#1726)
- Add the following macros into <windowsx.h> header: HANDLE_WM_COPYDATA, HANDLE_WM_DEVICECHANGE, HANDLE_WM_DISPLAYCHANGE, HANDLE_WM_HOTKEY, and HANDLE_WM_MOUSEWHEEL.
- Fix HANDLE_WM_CONTEXTMENU macro.
2019-07-15 19:58:34 +09:00
Jose Carlos Jesus
69454b4302 [TRANSLATION] Add Portuguese (neutral) translation. (#1702)
Add Portuguese (neutral) translation for intl.cpl, main.cpl, msgina.dll, msports.dll, welcome.exe and rundll32.exe, and fix the one in mshtml.dll .
2019-07-15 00:07:50 +02:00
Hermès Bélusca-Maïto
e2d6f61085 [NTOS:INBV] Fix the bitmaps' palette and recompress them in RLE. (#1649)
They don't need to have a zeroed-out palette now that we can
automatically reset it from within the code.

Co-authored-by: Yaroslav Kibysh <yanet.prod@gmail.com>
2019-07-14 22:23:52 +02:00
Hermès Bélusca-Maïto
64a53b304e [NTOS:INBV] Express some coordinates in terms of screen size. (#1649) 2019-07-14 22:23:51 +02:00
Yaroslav Kibysh
dc2eb409c1 [NTOS:INBV] Implement BitBltPalette() and BitBltAligned() and use them for aligning bitmaps. (#1649)
Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-07-14 22:23:50 +02:00
Hermès Bélusca-Maïto
3625238ecb [NTOS:MM] Add a MmChangeKernelResourceSectionProtection() helper. (#1649)
This allows setting the memory protection of the kernel's resource
section as will. MmMakeKernelResourceSectionWritable() is re-implemented
around this helper.
2019-07-14 22:23:49 +02:00
Hermès Bélusca-Maïto
a3e22b99a4 [NTOS:INBV] Classify the bitmap resources. (#1649)
See "How to change Windows XP boot logo" at
http://www.reversing.be/article.php?story=20061209171938444
as well as the "Boot Editor for WinXP" program for more details.
2019-07-14 22:23:48 +02:00
Hermès Bélusca-Maïto
e095695a64 [UMPNPMGR] Fix build. 2019-07-14 22:17:50 +02:00
Eric Kohl
47e90b5ea4 [UMPNPMGR] PNP_GetDeviceStatus: Move the code that retrieves the status of a device into a separate function so that we can use in other functions. 2019-07-14 21:50:06 +02:00
Timo Kreuzer
ad60726288 [ACPICA] Fix MSVC x64 build
See CORE-16082
2019-07-14 11:35:50 +02:00
Victor Perevertkin
6997a7a36f [DOCS] Add myself to CODEOWNERS file 2019-07-14 01:58:53 +03:00
Serge Gautherie
ccf8bff3ec [NTOS:MM] Fix MmGetFileNameForAddress() callers. (#1723)
MmGetFileNameForAddress() calls RtlCreateUnicodeString().
This also fixes a leak in MiQueryMemorySectionName().
2019-07-14 00:32:23 +02:00
Timo Kreuzer
46c052e0f2 [DOCS] Replace MAINTAINERS file with CODEOWNERS 2019-07-13 19:27:40 +02:00
Eric Kohl
433c9d327e [SETUPAPI] Implement CM_Delete_DevNode_Key_Ex()
CM_REGISTRY_USER is not supported yet.
2019-07-13 14:26:57 +02:00
Katayama Hirofumi MZ
7e683b1509 [MEDIA][FONTS] Add Turkish MS Sans Serif (sserifet.fon) CORE-16166 2019-07-12 09:50:38 +09:00
Katayama Hirofumi MZ
81a958b073 [MEDIA][FONTS] Add Greek MS Sans Serif (sserifeg.fon) CORE-16166 2019-07-11 16:09:24 +09:00
Thomas Faber
2d419e90f9 [NTOS:PNP] Reduce the default buffer size in EnumerateDevices. CORE-15882 2019-07-10 10:58:47 +02:00
Thomas Faber
b8e091a44c [NTOS:PNP] Handle arbitrary subkey name lengths in EnumerateDevices. CORE-15882
This also makes it necessary to fix a bug in the previous code:
ZwEnumerateKey will not account for space for a null terminator, so to
ensure we have space, we must allocate the additional WCHAR, but not
include it in the buffer size passed to the function.
2019-07-10 10:58:45 +02:00
Mark Jansen
b5423ba70b [SHELL32] Fix SHCreateDirectoryExW showing an error on success
CORE-15145
2019-07-09 22:52:17 +02:00
Katayama Hirofumi MZ
96beae8f52 [MEDIA][FONTS] Add Cyrillic MS Sans Serif (sserifer.fon) 2019-07-09 12:56:09 +09:00
Eric Kohl
93f77f2625 [SETUPAPI] CM_Delete_DevNode_Key[_Ex]: Use DEVINST instead of DEVNODE because we are using DEVINST anywhere else. 2019-07-08 00:08:22 +02:00
Eric Kohl
86e8a477b6 [SETUPAPI] CMP_RegisterNotification: When a window is registered, pass the window text to PNP_RegisterNotification(). 2019-07-07 23:47:01 +02:00
Joachim Henze
b5478a7873 [WIN32SS][FREETYPE] Fix performance regression FreeBASIC console output CORE-16177
By restoring historic state of GreExtTextOutW() / IntExtTextOutW()

This reverts guilty rev 0.4.12-dev-190-g
d6cfeaef51
as well as some follow ups that dealt with new errors popping up afterwards.
The revert got ack of Katayama Hirofumi MZ.

Test VBox on master: https://reactos.org/testman/compare.php?ids=68471,68475
Test KVM on master: https://reactos.org/testman/compare.php?ids=68472,68476

Analog revert was applied before to 0.4.12-RC-42-g
021f498cb2
2019-07-07 20:50:30 +02:00
Bișoc George
019e3ffe5f [SHELL32] Recycle-Bin: Validate the MaxCapacity value with respect to the available disk space. (#1688)
CORE-12313

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-07-07 19:01:09 +02:00
Hermès Bélusca-Maïto
8a30801516 [SHELL32] Recycle-Bin: Minor code enhancements.
- Use _countof() and ZeroMemory().
- Fix case of 'BitBucket' registry key (Windows-compatible).
- Simplify code.
- Minor code formatting.
2019-07-07 17:56:51 +02:00
Thomas Faber
36e9a6f8dd [CMAKE] Disable INIT section ld scripts for now. CORE-16183 ROSBE-154 2019-07-07 16:06:43 +02:00
Bișoc George
818d660868 [SHELL32] Enable the "Apply" button when user takes action on the edit box control (#1720)
CORE-12312
2019-07-07 14:47:44 +02:00
Eric Kohl
ece54dcd2f [SETUPAPI][UMPNPMGR] The 3rd parameter of PNP_RegisterNotification() seems to be the service name 2019-07-07 13:41:00 +02:00
Doug Lyons
e4898e6e0b [W32TIME] Implement w32time service. CORE-13001 2019-07-07 12:55:13 +02:00
Doug Lyons
119c99ef7e [TIMEDATE] Allow editing the time server combo box. CORE-13001 2019-07-07 12:45:45 +02:00
Doug Lyons
44b543bad3 [TIMEDATE] Handle manual time server entry. CORE-13001 2019-07-07 12:45:36 +02:00
Doug Lyons
33401f3875 [TIMEDATE] Use w32time compatible registry settings. CORE-13001 2019-07-07 12:45:17 +02:00
Thomas Faber
d19b792511 [W32TIME] Implement a rudimentary version of W32TimeSyncNow. CORE-13001 2019-07-07 12:45:03 +02:00
Thomas Faber
1938b7484e [TIMEDATE] Avoid the use of DisplayWin32Error in time sync utility functions. CORE-13001 2019-07-07 12:44:51 +02:00
Thomas Faber
aa24ad7429 [TIMEDATE] Separate time sync functions out into their own file. CORE-13001
This is in preparation for the w32time service, and based on
work by Doug Lyons.
2019-07-07 12:44:37 +02:00
Thomas Faber
fcd00d412e [NDIS] INIT/PAGE sections must be uppercase. 2019-07-07 08:22:16 +02:00
Thomas Faber
d9f9cb247c [PCI] The INIT section must be uppercase. 2019-07-07 08:18:12 +02:00
Thomas Faber
c4d8e2a6e9 [CMAKE] Ensure the INIT section is placed at the end of a module. CORE-14683
For MSVC, marking the section as discardable will do this automatically.
For GCC, we use a linker script that places it after the .reloc section
(which should be the last "real" section, check ld --verbose output for the
default linker script).

This fixes what seems to be a regression from r55835 (!).
2019-07-07 08:18:10 +02:00
Katayama Hirofumi MZ
c17a8770a3 [USER32] Switch to only one window (Alt+Tab) (#1718)
Fix app switcher (Alt+Tab)'s behavior when there is only one app window. CORE-16176
2019-07-07 09:05:10 +09:00
Mark Jansen
28a0aa9ae8 [CRT] Remove mingwm10.dll usage in tls support code
CORE-15491
2019-07-06 11:37:30 +02:00
Serge Gautherie
6ba611f39e [NTOS:MM] Fix MmSizeOfSystemCacheInPages value on AMD64
And add 'ASSERT(MmSystemCacheEnd == ...);'.

Addendum to d56a249089.
CORE-14259
2019-07-06 09:55:38 +02:00
Serge Gautherie
4253ba71fc [FLOPPY_NEW] Fix MSVC builds 2019-07-06 09:39:03 +02:00
Victor Perevertkin
042646ceac [IPHLPAPI] Use if_descrlen field for determining the length of
if_descr in IFEntry structure. This fixes heap corruption on GCC8.
CORE-16088
2019-07-05 22:49:12 +03:00
Thomas Faber
76e00fab7e [PORTCLS] Zero memory in operator new. CORE-16157
Fixes a regression from 99fa38809f, which
replaced the kcom.h/stdunk.h versions (which zero memory) with local
implementations (which don't).

Standard C++ does not guarantee that memory is zeroed but several classes
rely on this, in particular for their m_Ref and m_bInitialized members.

Ideally the constructors should be fixed to initialize all required members,
but that task is error-prone so for now we simply restore the previous
behavior.
2019-07-05 17:31:46 +02:00
Katayama Hirofumi MZ
595ae4c551 [GDI32_APITEST] Improve SetWorldTransform testcase (#1717)
Improve the testcase for gdi32!SetWorldTransform function. CORE-15554
2019-07-05 22:31:56 +09:00
Serge Gautherie
6d238e4513 [FASTFAT_NEW] Fix MSVC builds
CORE-14879
2019-07-04 21:16:12 +02:00
Colin Finck
5dadfdaa39 Fix FUNDING.yml syntax. 2019-07-04 09:12:50 +02:00
Colin Finck
85b2b73fed Update FUNDING.yml now that the "Sponsor" button in GitHub has been activated. 2019-07-04 09:11:04 +02:00
Pierre Schweitzer
56c4e83fb3 [KMTESTS:CC] Make buffer mapping tests more accurate 2019-07-03 21:39:35 +02:00
Stanislav Motylkov
a76e03d8bc [SHELL32][USERENV] Improve Russian translation (#1710)
CORE-16170
2019-07-01 21:43:22 +02:00
Serge Gautherie
a0d2170729 [NTOS:CC] CcWriteVirtualAddress(): Do not round 'Size'
Revert 'Properly align VACB writes' part of 2a80ae2bb6.

CORE-15384 CORE-16018
2019-07-01 21:30:25 +02:00
Bernhard Feichtinger
774246e95c [WIN32SS][GDI] Improve stub for EngQueryDeviceAttribute 2019-06-30 23:50:20 +02:00
Pierre Schweitzer
c2aa749bbd [REACTOS] Finally enable the LUID mapped devices
This allows users to have their own locally mapped DOS devices.
For instance, when a network drive is mapped, it is now mapped in the
user device maps and no longer in the global device map.
This avoids sharing mount points system wide whereas they shouldn't.

LUID mapped devices is the default W2K3 behavior.
Globally mapped devices can be restored by adding back this registry key.

https://twitter.com/HeisSpiter/status/1143615176450686976

CORE-16114
2019-06-30 23:07:54 +02:00
Pierre Schweitzer
4fd223729b [NTOSKRNL] When looping again in ObpLookupEntryDirectory, properly init root entry
This fixes looking in global directory for DOS drives that are globally mounted
(such as C: drive)

CORE-16114
2019-06-30 23:07:54 +02:00
Pierre Schweitzer
222ace7c6c [BASESRV] Implement LUID mapped drive arrival/removal notification
CORE-16114
2019-06-30 23:07:54 +02:00
Pierre Schweitzer
522821bb8b [SDK] Add RtlInitString to the NDK 2019-06-30 23:07:54 +02:00
Pierre Schweitzer
f13b6e025f [NTOSKRNL] Implement support for device maps in ObpLookupObjectName
This allows getting rid of the ?? hack in the kernel but this doesn't
allow enabling LUID device maps as ReactOS can no longer open a
session with them enabled. So, we must remain with device maps at
root

CORE-16114
2019-06-30 23:07:54 +02:00
Pierre Schweitzer
f529033555 [KMTESTS:OB] Add support for LUID mappings being disabled in ObSecurity tests
CORE-16114
2019-06-30 23:07:54 +02:00
Thomas Faber
6cde208c6b [SDK] Properly define ZwQueryInformationProcess 2019-06-30 23:07:54 +02:00
Katayama Hirofumi MZ
a2b4fad771 [MEDIA][FONTS] Disable sserife.fon font file 2019-07-01 05:17:29 +09:00
Oleg Dubinskiy
25e98eb0da [DSOUND_NEW] Add CMakeLists.txt + mostly fix gcc compilation 2019-06-30 20:06:36 +02:00
Timo Kreuzer
9590cd15f4 [FASTFAT] Fix use after free when volume is unmounted 2019-06-30 13:57:14 +02:00
Serge Gautherie
5e10c4ed32 [NETSTAT] ShowUdpTable(): Fix "tcp" copypasta 2019-06-30 13:55:05 +02:00
Katayama Hirofumi MZ
5bcd1768d2 [MEDIA][FONTS] Improve MS Sans Serif (sserife.fon) (#1703)
12pt Q.
14pt j and t.
2019-06-30 15:35:34 +09:00
Katayama Hirofumi MZ
0883b1b622 [MEDIA][FONTS] Rename khmzsser.fon as sserife.fon (#1703) 2019-06-30 14:50:42 +09:00
Katayama Hirofumi MZ
42fc2b24cf [MEDIA][FONTS] Add 'KHMZ Sans Serif' (khmzsser.fon) font (#1703)
Add a raster font file khmzsser.fon (KHMZ Sans Serif). CORE-15130
2019-06-30 13:26:05 +09:00
Eric Kohl
8f5fe0fa4f [UMPNPMGR] PNP_RegisterNotification: Add notification filter parameter checks 2019-06-29 18:16:13 +02:00
Hermès Bélusca-Maïto
b695971c7f [NETSTAT] Simplify some code; don't use exit(); call WSACleanup() on exit. 2019-06-29 18:10:43 +02:00
Hermès Bélusca-Maïto
ab7dc56d6c [NETSTAT] Formatting; use _wsystem() call; do not hardcode buffer lengths. 2019-06-29 17:32:53 +02:00
Alexey Gorgurov
f6f66fa987 [NETSTAT] Fix TCP/UDP output. (#1696)
CORE-16151

The underlying StringCchPrintfW() function must use %S for CHAR strings
and %s for wide chars.
See
https://docs.microsoft.com/en-us/cpp/c-runtime-library/format-specification-syntax-printf-and-wprintf-functions?view=vs-2019
for details.
2019-06-29 16:58:47 +02:00
Jose Carlos Jesus
86d4156c39 [TRANSLATIONS] Add/Update Portuguese (neutral) translations. (#1687)
Translations for SYSDM.CPL, SETUPAPI, SHELL32, LSASRV, SAMSRV, SYSSETUP,
USRMGR, THEMEUI, USERENV, WININET, MSCONFIG.
2019-06-29 16:55:33 +02:00
Eric Kohl
7eb6e42626 [UMPNPMGR][SETUPAPI] PNP_RegisterNotification() has got 9 parameters. 2019-06-29 13:38:42 +02:00
Timo Kreuzer
18e835b605 [SDK] Fix build with sal.h
* sal.h: add file header, uncomment _Interlocked_operand_ and PAL_STDCPP_COMPAT guard
* When including stl headers, define PAL_STDCPP_COMPAT
2019-06-29 12:13:09 +02:00
Timo Kreuzer
00c8ac9af7 [PSDK] Add sal.h from Microsoft GitHub (MIT license) 2019-06-29 12:13:09 +02:00
Timo Kreuzer
ca8ec85fa3 [SDK] Move kcom.h from psdk to ddk where it belongs 2019-06-29 11:09:23 +02:00
jimtabor
a8d6e12bc1 [User32] Sync Port Wine.
Patch :
Nikolay Sivov : Use correct brush color for centered image background.
Nikolay Sivov : Remove confusing comments.
2019-06-28 22:22:49 -05:00
jimtabor
65a814203f [User32] Sync Port Wine.
Patch :
Vijay Kiran Kamuju : Add DlgDirList wildcard checks.
Nikolay Sivov : Fix setting negative dialog item ids.
Alistair Leslie-Hughes : Don't reset focus if current dialog is a child.
Dmitry Timoshkov : If there is no dialog controls to set focus to then
set focus to dialog itself.
Zhiyi Zhang : Send notification for the focused button in
IsDialogMessage().
Huw Davies : Avoid using the comma operator in a while condition.

Patch skipped : a525631920d74e9d797f38305b89e63aed1c5c41 : Scale dialog
base units based on DPI awareness.
2019-06-28 21:52:04 -05:00
Pierre Schweitzer
e75bdce6cd [SDK] Add missing definitions
This fixes storport build
2019-06-28 22:11:54 +02:00
Eric Kohl
545692e89e [STORPORT] Improvements to the device enumerator code.
- Create PDO for the device
- Send a SCSIOP_INQUIRY command to the new PDO
- Delete the PDO if the inquiry command failed
2019-06-27 23:28:41 +02:00
Thomas Faber
d16c9a798a [LIBPNG] Update to version 1.6.37. CORE-16147 2019-06-27 12:52:12 +02:00
Thomas Faber
430656f0b9 [MBEDTLS] Update to version 2.7.11. CORE-16147 2019-06-27 12:52:00 +02:00
Thomas Faber
132ca99397 [DOC] Fix ACPICA version. CORE-16138 2019-06-27 12:51:41 +02:00
Mark Jansen
58362b229b [ATL] Add CRect::PtInRect 2019-06-26 21:20:43 +02:00
Hermès Bélusca-Maïto
05616105a5 [NTOS:MM] Fix MiLocateKernelSections() and MmMakeKernelResourceSectionWritable().
- MiLocateKernelSections(): Fix the calculation of MiKernelResourceEndPte,
  MmPoolCodeEnd and MmPteCodeEnd.

- MmMakeKernelResourceSectionWritable(): Fix PTE looping upper limit;
  use MI_MAKE_HARDWARE_PTE_KERNEL to build the updated read-write PTE.
2019-06-26 00:57:53 +02:00
Victor Perevertkin
12542f271d [FREELDR] Fix Release build 2019-06-26 00:56:21 +03:00
Hermès Bélusca-Maïto
f694d12f0c [NTOS:KE/MM] Some bug-fixes in the bugcheck code.
- Introduce the MmMakeKernelResourceSectionWritable() helper for
  making the kernel resource memory section writable, and use it
  in KeGetBugMessageText(). Indeed, this latter function patches
  in place the bugcheck resource message to trim any trailing
  newlines before displaying the message on screen.

  See also https://github.com/osresearch/uxen/blob/83bad53/dm/introspection-win7.c#L286
  that mentions it too.

  This fixes bugcheck text display (e.g. the MANUALLY_INITIATED_CRASH one)
  when using (at least) MSVC-built ReactOS, avoiding a Page-Fault
  exception during the bugcheck.

- Cover KeGetBugMessageText() in SEH since we are accessing kernel
  resources that could also be corrupted in bugcheck scenarii, and we
  don't want to further bugcheck.

- Fix newline trimming loop.

- KiDoBugCheckCallbacks():
  * Wrap the bugcheck CallbackRoutine call in SEH.
  * Add a FIXME concerning the need of further memory validation of CurrentRecord.

- Add a FIXME concerning the need to run the bugcheck-reason callbacks
  with the KbCallbackReserved1 reason, in KeBugCheckWithTf().
  Mentioned in http://blog.ptsecurity.com/2012/06/customizing-blue-screen-of-death.html
2019-06-25 21:01:49 +02:00
Hermès Bélusca-Maïto
35f800c6e2 [NTOS] Minor formatting enhancements only + typo fixes. 2019-06-25 21:01:48 +02:00
Victor Perevertkin
e831f8530b [USBSTOR] Do not print device descriptor by default.
Add SrbGetCdb macro
2019-06-25 19:04:20 +03:00
Victor Perevertkin
10260f40d9 [USBOHCI_NEW] Rename counter-intuitive field of Transfer Descriptor 2019-06-25 15:14:21 +03:00
Victor Perevertkin
9004e64b57 [USBOHCI_NEW] Zero out the transfer descriptor right after allocation.
Cleaned up transfer routines and added some more docs.
2019-06-25 15:03:26 +03:00
Victor Perevertkin
3fe397818a [USBOHCI_NEW] Simplify the MapTransferToTD routine and add some docs 2019-06-25 13:02:35 +03:00
Thomas Faber
3fb5ca3bee [UNIATA] Update to version 0.47a. CORE-15930 2019-06-25 09:26:09 +02:00
Thomas Faber
2e21126cb0 [ACPICA] Update to version 20190509. CORE-16138 2019-06-25 09:26:07 +02:00
Thomas Faber
0e6581440e [RTL] Fix failure check in RtlpCreateCriticalSectionSem. 2019-06-25 09:26:05 +02:00
Timo Kreuzer
dc0cd07d21 [CMIDRIVER] Try to fix build 3 2019-06-25 09:11:01 +02:00
Yaroslav Kibysh
f37fb1f7f8 [FREELDR] Always change video mode back to text-mode before starting up ReactOS.
CORE-16116

- This allows getting the /NOGUIBOOT mode working correctly, as the latter
  expects text-mode. Then, usetup (via BLUE driver) will change to a
  different text-mode, or, GUI boot will change (via BOOTVID) to VGA
  640*480 16-color.

- Always hide the VGA cursor.

- Remove also the deprecated boolean "Setup" in the *PrepareForReactOS()
  functions.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-06-25 02:32:09 +02:00
Hermès Bélusca-Maïto
306bcd9d73 [BLUE] Initialize the console with a default font for codepage 437. 2019-06-25 02:32:09 +02:00
Timo Kreuzer
aad4096475 [CMIDRIVER] Try to fix build 2 2019-06-25 00:54:00 +02:00
Timo Kreuzer
a14b509974 [CMIDRIVER] Try to fix build 2019-06-25 00:26:08 +02:00
Timo Kreuzer
99fa38809f [STDUNK][PORTCLS][CMIDriver] Fix issue with operator new/delete
Fix for MSVC warning "C2323: 'operator new': non-member operator new or delete functions may not be declared static or in a namespace other than the global namespace."

See https://docs.microsoft.com/en-us/cpp/porting/visual-cpp-what-s-new-2003-through-2015?view=vs-2019 section "Overloaded operator new and operator delete"
2019-06-24 21:17:00 +02:00
Timo Kreuzer
f565083d58 [GDI32_APITEST] Extend test for SetWorldTransform (#1686) 2019-06-24 21:16:10 +02:00
Katayama Hirofumi MZ
bf06c94e15 [WIN32SS][NTGDI] Strictly check in XFORMOBJ_iSetXform (#1676)
Check if the determinant of the given transformation matrix is non-zero. If zero, the function returns DDI_ERROR without change. CORE-15554
2019-06-24 21:32:40 +09:00
Hermès Bélusca-Maïto
ede3fddad7 [BOOTVID] Diverse enhancements.
- Import cmdcnst.h and vga.h headers from the 'vga_new' VGA Miniport Driver,
  that contain definitions related to VGA registers as well as command-stream
  functionality.

- Replace a bunch of hardcoded values by their corresponding defintions.

- Replace "Captain-Obvious" comments in VgaIsPresent() with actual
  explanations from the corresponding function in 'vga_new'.

- Simplify the VgaInterpretCmdStream() function, based on the
  corresponding one from 'vga_new'.

- Use concise comments in the 'AT_Initialization' command stream definition.

- Import the 'VGA_640x480' initialization command stream from 'vga_new'
  and use it as the full VGA initialization stream whenever the HAL
  does not handle the VGA display (HalResetDisplay() returning FALSE).
  Otherwise we just use the 'AT_Initialization' command stream that
  performs minimal initialization.

- Remove unused AT_Initialization and other declarations from ARM build.
2019-06-23 23:59:48 +02:00
Timo Kreuzer
a75e4db855 [INFLIB] Fix INFCONTEXT structure to be compatible with the official definition (#1603)
* [INFLIB] Fix INFCONTEXT structure to be compatible with the official definition.

This makes inflib work on x64.
2019-06-23 22:35:19 +02:00
Eric Kohl
a9c4c07955 [SETUPAPI][UMPNPMGR] PNP_UnregisterNotification: Add 2 unknown parameters 2019-06-23 21:45:54 +02:00
Eric Kohl
ca0406131c [SETUPAPI][UMPNPMGR] Improve CMP_RegisterNotification/PNP_RegisterNotification
Pass the notification filter to PNP_RegisterNotification as a byte-pointer to the filter and the size of the filter.
2019-06-23 19:31:34 +02:00
Hermès Bélusca-Maïto
8f04a09e74 [BOOTVID] Fixes for VgaIsPresent() and VidInitialize().
- VgaIsPresent(): Re-select the memory mode register before playing
  around with the sequencer flag. Otherwise the VGA may not be detected
  correctly from time to time.

- VidInitialize(): Simplify the initialization loop, reset AddressSpace
  to its "default" value of 1 when calling HalFindBusAddressTranslation()
  on 'NullAddress'.
2019-06-23 03:07:19 +02:00
Hermès Bélusca-Maïto
025cfb108b [BOOTVID] Simplify the code by introducing and using IO port helper macros.
- Move around two header includes.
- Remove a redundant assignment in VgaInterpretCmdStream().
2019-06-23 02:59:43 +02:00
Hermès Bélusca-Maïto
0f3f8b2a35 [VGA_NEW] Fix confusion between CRTC Controller and Graphics Controller registers. 2019-06-23 02:12:24 +02:00
Hermès Bélusca-Maïto
6c5d38c22a [NTVDM] Fix whitespace. 2019-06-23 02:12:24 +02:00
Hermès Bélusca-Maïto
78d20a9b3a [WIN32K] Fix spelling typo. 2019-06-23 02:12:23 +02:00
Joachim Henze
1158c24194 [WIN32SS] Fix multiple scrollbar redraw issues
This fixes:
- CORE-15911 "Scrollbars do not dissapear when Maximizing and not needed"
- CORE-10617 "ListView corrupt scrollbar upon resizing the column-header"

and will appease regression:
- CORE-15429 "Uninitialized scrollbars in 'My Computer'"

By applying clientFix.patch from CORE-15911 contributed by JIRA-user 'I_Kill_Bugs'.

https://reactos.org/testman/compare.php?ids=66723,66729

Earlier I already committed this fix into 0.4.12-RC-9-g
5ac548544f
2019-06-22 22:27:23 +02:00
Eric Kohl
89c936fdd6 [NETCFGX] Start a network adapter device after the custom install steps have been completed.
This could probably fix CORE-16103
2019-06-22 21:01:26 +02:00
Eric Kohl
8dc70d2454 [SETUPAPI] Implement SetupDiRestartDevices() 2019-06-22 21:01:25 +02:00
jimtabor
8c7705eb5d [Win32SS] Complete Print Driver Callbacks
This callback works. Haven't commit the rest yet. Still thinking about
the data packets types and shapes. Using wordpad to test this. It works,
loads and unloads due to incomplete driver support and no PDEV. It
crashes in ComCtl32 while loading a text file. When this gets committed
without a solution, the code will be commented out.
2019-06-22 12:02:51 -05:00
Andreas Maier
49165276f2 [COMCTL32] Fix CORE-14619 (Checkbox buttons theming regression) (#1674)
* [COMCTL32] Fix CORE-14619 (Checkbox buttons theming regression)

Fix cb_states / rb_states lookup table.

* [README.WINE] comctl32 is synced to WineStaging-3.3.

See commit b3fb8555 .
2019-06-22 16:36:14 +02:00
Bișoc George
42ce8519b6 [FASTFAT][FLTMGR][NTOS] Do not explicitly call ObfDereferenceObject() (#1636)
"Most code should not directly call the platform-specific ObfDereferenceObject() function but use the ObDereferenceObject() macro instead."

CORE-16081
2019-06-22 16:20:58 +02:00
Jose Carlos Jesus
be820b9ca3 [NEWDEV] Add Portuguese (neutral) translation. 2019-06-22 16:17:03 +02:00
Jose Carlos Jesus
0e6732586d [NETID] Add Portuguese (neutral) translation. 2019-06-22 16:16:58 +02:00
Jose Carlos Jesus
64a647a843 [NETCFGX] Add Portuguese (neutral) translation. 2019-06-22 16:11:55 +02:00
Bișoc George
4c9dc7302b [MAIN.CPL] Adjust the GROUPBOX control spacing for French resource (#1682)
CORE-12372
2019-06-22 15:37:59 +02:00
James Tabor
40c42305c3 [Win32SS] Add Driver Callback
Add user driver callback to be used later on.
2019-06-21 13:10:03 -05:00
Katayama Hirofumi MZ
d182f449fc [GDI32_APITEST] Fixup of 90be07f (#1675) 2019-06-21 15:50:53 +09:00
Katayama Hirofumi MZ
90be07f79a [GDI32_APITEST] Improve TextTransform (add translation) (#1675)
Add some coordinate translation tests. CORE-15554
2019-06-21 15:45:54 +09:00
Eric Kohl
214692ff5e [NETSHELL] Improvements to the network setup (2a/x)
Step 2a: Really check the binding between network components.

Next Step: Bind the Tcpip transport to all enumerated network adapters.
2019-06-20 22:08:39 +02:00
Eric Kohl
73ca084e96 [NETCFGX] Read a components bind value and implement the IsBoundTo method. 2019-06-20 22:08:38 +02:00
Hermès Bélusca-Maïto
84c20018e6 [NETSTAT] Really fix the build. 2019-06-20 21:15:12 +02:00
Hermès Bélusca-Maïto
dda5ec44b0 [NETSTAT] Simplify DoFormatMessage(), and fix build. 2019-06-20 20:59:23 +02:00
Lee Schroeder
bd3c852012 [NETSTAT] Convert the netstat utility to Unicode, and localize it. (#1657)
CORE-16119

Also, change its resource file description to reflect that the utility isn't just for TCPv4.
2019-06-20 20:48:07 +02:00
Eric Kohl
79a0f2b430 [NETCFGX] EnumClientServiceProtocol: Use the right parent key when trying to open the 'NDI' subkey.
This makes the description of the selected item show up in the network connection properties.
2019-06-20 20:08:36 +02:00
Hermès Bélusca-Maïto
4d5a2dd0f3 [NTOS:KE] Use multi-processor-aware KeGetPcr() instead of the legacy PCR. 2019-06-20 19:39:49 +02:00
Hermès Bélusca-Maïto
04906f2abb [NTOS:KE] Fixup for the NMI task handler: handle NMI recursion. -- Code was lost in commit 2efed8ef (r45040). 2019-06-20 19:39:44 +02:00
Hermès Bélusca-Maïto
3c8f19eb21 [NTOS:KE] Improvements for the Trap02 (NMI) and Trap08 (double-fault) exception handlers.
- Add FRAME_TSS FPO debug information for Trap02 and Trap08.
- Switch the active TSS in Trap08 in the very same way as is done in Trap02.

This allows to correctly debug NMI and double-fault exceptions with WinDbg,
by following the different TSS contexts, as described in:
https://blogs.msdn.microsoft.com/debuggingtoolbox/2008/02/22/special-command-analyzing-and-reconstructing-the-stack-using-the-k-command-and-its-variations/
https://blogs.msdn.microsoft.com/ntdebugging/2009/11/25/part-1-got-stack-no-we-ran-out-of-kernel-mode-stack-and-kv-wont-tell-me-why/
http://www.osronline.com/article.cfm?article=254 and http://www.osronline.com/article.cfm?article=328
2019-06-20 19:38:56 +02:00
Hermès Bélusca-Maïto
d15e36a1f1 [NTOS:KE][SDK:ASM] Code formatting/styling only.
- Un-hardcode the RPL_MASK value.
- s/KiUnexpectedInterrupt&Number/KiUnexpectedInterrupt&Vector/
- Use C-style comments in traphdlr.c as everywhere else in the file.
- Update the URLs for the MSDN "FPO" macro documentation.
2019-06-20 18:07:59 +02:00
Hermès Bélusca-Maïto
1dc4ba9da7 [DEVMGR] Add the missing pt-PT.rc translation file. Strange, I thought I added it before... 2019-06-20 18:04:26 +02:00
Mas Ahmad Muhammad
fd928f9d6e [CPL_DESK] Update Indonesian translation. 2019-06-20 17:31:57 +02:00
Mas Ahmad Muhammad
e3c779a855 [CPL_MMSYS] Update Indonesian translation. 2019-06-20 17:31:57 +02:00
Mas Ahmad Muhammad
40be6abdd8 [CPL_TIMEDATE] Update Indonesian translation. 2019-06-20 17:31:56 +02:00
Mas Ahmad Muhammad
37d345d8cc [CPL_CONSOLE] Update Indonesian translation. 2019-06-20 17:31:56 +02:00
Mas Ahmad Muhammad
456e06ae2a [CPL_APPWIZ] Add Indonesian translation. 2019-06-20 17:31:55 +02:00
Mas Ahmad Muhammad
aadd11c01d [CPL_ACCESS] Update Indonesian translation. 2019-06-20 17:31:54 +02:00
Mas Ahmad Muhammad
e189abe754 [SETUP_WELCOME] Update Indonesian translation. 2019-06-20 17:31:53 +02:00
Mas Ahmad Muhammad
682ea2206a [NEWDEV] Update Indonesian translation. 2019-06-20 17:31:53 +02:00
Mas Ahmad Muhammad
11f1b911d8 [IEFRAME] Add Indonesian translation. 2019-06-20 17:31:52 +02:00
Mas Ahmad Muhammad
7f09d9512c [DEVMGR] Update Indonesian translation. 2019-06-20 17:31:51 +02:00
Mas Ahmad Muhammad
867fdc24d9 [MSGINA] Update Indonesian translation. 2019-06-20 17:31:50 +02:00
Mas Ahmad Muhammad
31a28ab9e7 [WINLOGON] Update Indonesian translation. 2019-06-20 17:31:49 +02:00
Mas Ahmad Muhammad
859199ee16 [COMCTL32] Add Indonesian translation. 2019-06-20 17:31:49 +02:00
Mas Ahmad Muhammad
b4af5597c4 [SHUTDOWN] Add Indonesian translation. 2019-06-20 17:31:48 +02:00
Mas Ahmad Muhammad
bb499e4b4e [THEMEUI] Add Indonesian translation. 2019-06-20 17:31:47 +02:00
Mas Ahmad Muhammad
b72bbfbe27 [NOTEPAD] Update Indonesian translation. 2019-06-20 17:31:47 +02:00
Mas Ahmad Muhammad
d0629fde40 [COMDLG32] Add Indonesian translation. 2019-06-20 17:31:46 +02:00
Mas Ahmad Muhammad
d863ed20cc [SETUP_REACTOS] Add Indonesian translation. 2019-06-20 17:31:45 +02:00
Mas Ahmad Muhammad
4742f65936 [BROWSEUI] Add Indonesian translation. 2019-06-20 17:31:44 +02:00
Mas Ahmad Muhammad
8043460d24 [SHORTCUTS] Update Indonesian translation. 2019-06-20 17:31:43 +02:00
Mas Ahmad Muhammad
0c9923fdd8 [ROSAPPS_SHORTCUTS] Update Indonesian translation. 2019-06-20 17:31:39 +02:00
Jose Carlos Jesus
37c43a7414 [DEVMGR] Add Portuguese (neutral) translation. 2019-06-20 17:15:17 +02:00
Jose Carlos Jesus
666e6561d5 [CREDUI] Update Portuguese (neutral) translation. 2019-06-20 17:15:17 +02:00
Jose Carlos Jesus
af10e1fb74 [COMDLG32] Update Portuguese (neutral) translation. 2019-06-20 17:15:16 +02:00
Jose Carlos Jesus
4bbeb21f6d [COMCTL32] Update Portuguese (neutral) translation. 2019-06-20 17:15:15 +02:00
Jose Carlos Jesus
7df98d73b3 [BROWSEUI] Add Portuguese (neutral) translation. 2019-06-20 17:15:15 +02:00
Jose Carlos Jesus
64785cf7d3 [ACLUI] Add Portuguese (neutral) translation. 2019-06-20 17:15:14 +02:00
Filip Š
242b4b0e72 Create FUNDING.yml (#1658)
GitHub now supports sponsorships in the repository.
https://help.github.com/en/articles/displaying-a-sponsor-button-in-your-repository
2019-06-20 23:07:06 +09:00
Katayama Hirofumi MZ
641a0ea99b [WIN32SS][NTGDI] usWinAscent and usWinDescent must be treated as signed (#1670)
TT_OS2.usWinAscent and TT_OS2.usWinDescent must be treated as FT_Short. These values affect font metrics. This PR will fix CORE-14994.
2019-06-20 18:58:45 +09:00
Eric Kohl
e57f103d53 [NETCFGX] Add the interfaces INetCfgBindingInterface and IEnumNetCfgBindingInterface (stubs only). 2019-06-19 22:38:31 +02:00
Andreas Maier
8d6c9e844c [EXPLORER] Properly initialise tbBtn.iBitmap. CORE-14262.
In CNotifyToolbar::AddButton tbBtn.iBitmap (imagelist-index)
was inialised with 0. Tigthvnc adds the icon wihtout NIF_ICON flag.
So the wrong icon index was kept and later replaced.
2019-06-19 20:37:04 +02:00
Andreas Maier
7796df375a [EXPLORER] fix traces 2019-06-19 20:37:04 +02:00
Eric Kohl
ec9c8fdf25 [NETCFGX] Add the interfaces INetCfgBindingPath and IEnumNetCfgBindingPath (stubs only). 2019-06-18 22:35:46 +02:00
Eric Kohl
2da533a8a4 [NETCFGX] NetPropPageProvider: Handle the Min and Max values for INT, LONG and WORD types properly
CORE-15095
2019-06-18 21:47:29 +02:00
Mark Jansen
c8ef4912a7 [URLMON] Directly call cabinet!Extract instead of calling it via advpack!ExtractFilesW
CORE-15795
2019-06-17 19:51:58 +02:00
Jose Carlos Jesus
3fbbfc8f2f [REGEDIT] Update Portuguese (neutral) translations. (#1656) 2019-06-17 15:12:13 +02:00
Jose Carlos Jesus
210adcc213 [RAPPS] Add Portuguese (neutral) translation. (#1656) 2019-06-17 15:12:13 +02:00
Jose Carlos Jesus
ec8779fa30 [NOTEPAD] Update Portuguese (neutral) translation. (#1656) 2019-06-17 15:12:13 +02:00
Jose Carlos Jesus
285afe8851 [WLANCONF] Add Portuguese (neutral) translation. (#1656) 2019-06-17 15:12:12 +02:00
Jose Carlos Jesus
12632613ac [RUNONCE][USERINIT] Add Portuguese (neutral) translation. (#1656) 2019-06-17 15:12:12 +02:00
Jose Carlos Jesus
65dc8aba92 [APPWIZ.CPL] Update Portuguese Brazilian, and add Portuguese (neutral) translations. (#1656) 2019-06-17 15:12:08 +02:00
Jose Carlos Jesus
51d408b3fc [WINLOGON] Add Portuguese (neutral) translation. (#1656) 2019-06-17 15:12:08 +02:00
Jose Carlos Jesus
8aca2dafeb [ACCESS.CPL] Add & update Portuguese translation. (#1656) 2019-06-17 15:12:08 +02:00
Eric Kohl
1270e0a4fc [NETCFGX] Add the INetCfgComponentBindings interface to the NetCfgComponent class. 2019-06-17 14:57:08 +02:00
Eric Kohl
c6bc82b6e0 [UUID] Add some missing NetCfg IIDs. 2019-06-17 13:48:34 +02:00
Katayama Hirofumi MZ
c5246d68f5 [KERNEL32_APITEST] Improve SetComputerNameExW testcase (#1661)
Improve SetComputerNameExW testcase to check invalid characters. CORE-16122
2019-06-17 20:33:31 +09:00
Katayama Hirofumi MZ
0c7dc4e3e1 [SDK][INCLUDE] Update msgdump.h and winxx.h (TreeView and ListView support) 2019-06-17 20:29:03 +09:00
Katayama Hirofumi MZ
6b95727282 [REGEDIT] Adjust ListView column widths (#1663)
CORE-15187
2019-06-17 10:04:45 +09:00
Eric Kohl
78f13ae5ad [NETSHELL] Improvements to the network setup (1/x)
Step 1: Find the TcpIp transport and enumerate the installed network adapters using INetCfg.

Next Step: Find out how the binding process works and bind the TcpIp transport to all enumerated network adapters. This will replace the blind binding process we are using right now.
2019-06-17 01:18:05 +02:00
Eric Kohl
24b22db77e [NETCFGX] Resize a helper buffer to accommodate a device instance id.
This prevent NULL pointer exceptions in calls to INetCfgComponent::GetPnpDevNodeId().
2019-06-17 00:46:30 +02:00
Eric Kohl
76224b711b [MEDIA] Add netcfgx.dll to the EarlyRegisterDll list so that we can use it in the 2nd install phase. 2019-06-16 23:59:53 +02:00
Eric Kohl
9bf78b6a95 [NETCFGX] Set the ComponentId value when a NIC is installed. 2019-06-16 23:59:52 +02:00
Mark Jansen
f3d1d38041 [INPUT] Don't race the system to free an imagelist 2019-06-16 23:11:03 +02:00
Benjamin Aerni
939b25a15a [I8042PRT] Add Latitude E6400 to the hack list (#1665)
Let it make grow, grow, grow... !!
2019-06-16 23:00:53 +02:00
Mark Jansen
bcffdd0b16 [RASAPI32] Add RasClearConnectionStatistics stub
CORE-10092
2019-06-16 13:56:54 +02:00
Thomas Faber
00e882c2b1 [WIN32K:ENG] In PDEVOBJ_vRefreshModeList, find a proper match for the current display mode instead of assuming a constant index. CORE-15325 2019-06-16 12:45:58 +02:00
Hermès Bélusca-Maïto
28ed2347ef [HOSTNAME] Retrieve the DNS *host name* of the computer, and not the computer name.
CORE-16095, ROSTESTS-326
2019-06-16 01:00:40 +02:00
Doug-Lyons
077a1b8dba [ROSTESTS] Add a new test for "gethostname" in ws2_32_apitest. (#1630)
ROSTESTS-326

Make the test more robust; clean up on failures.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-06-16 00:15:55 +02:00
Mark Jansen
04712d418c [WIN32K] Use KeStackAttachProcess 2019-06-15 21:26:41 +02:00
Mark Jansen
97d1590914 [WIN32K] Attach to the target process before unhooking
CORE-16083
2019-06-15 21:26:41 +02:00
Mark Jansen
7a3937ddaf [WIN32K] Fix indenting in IntRemoveHook 2019-06-15 21:26:35 +02:00
Victor Perevertkin
1552434940 [NTFS] Do not print debug message for every function call by default 2019-06-15 19:24:27 +03:00
Hermès Bélusca-Maïto
16646fb19c [MAGNIFY] Minor whitespace / formatting fixes; use the new file headers + some code simplifications here and there... 2019-06-15 19:11:21 +02:00
Hermès Bélusca-Maïto
4e91b6d5db [MAGNIFY] Minor fixes for zoom handling.
- Zoom factor is unsigned.
- It is comprised between 1 and 9, other values are invalid.
- Check for value validity when reading the zoom string from the combo-list.
2019-06-15 18:33:28 +02:00
Bișoc George
9ade0e7b04 [MAGNIFY] Fix a string buffer misuage that led to division by zero exception. (#1655)
The iZoom variable was wrongly initialized to zero because the _ttoi()
called failed due to the fact the temporary string buffer was too small.
2019-06-15 18:12:54 +02:00
Serge Gautherie
b13990bd78 [SETUPAPI] Revert "Fix a typo in CM_Query_Resource_Conflict_List." (#1634)
Previous code was correct.
This reverts commit c47ad98f.
2019-06-15 17:55:33 +02:00
Baruch Rutman
22064d7787 [LPK] Fix for CORE-16115. (#1654)
Proposed changes:

- Use the total extent (width) and font metrics (height) as values
  to put in the lpSize variable instead of calling ScriptString_pSize()
  in the LpkGetTextExtentExPoint() function.

- Use GetTextExtentExPointWPri in more cases as another effort to get the data.

- Trailing whitespace fixes.
2019-06-15 17:37:51 +02:00
Baruch Rutman
1a7ffd29d6 [LPK] Update Wine BiDi code. (#1651)
Imports the changes from
ef07087f47
2019-06-15 17:24:38 +02:00
Joachim Henze
10f00f8c1c [MSI] Fix regression CORE-14646
Pressing Next-button in setup of "1C Enterprise (training version) 8.3.10.2252"
did not have any effect anymore. Setup could not be completed anymore.

The regression was introduced to ros by 0.4.8-dev-739-g
f8b992f2d3
and was confirmed being a Wine-regression in
https://bugs.winehq.org/show_bug.cgi?id=45445

Thanks to Fabian Maurer for communicating to Wine and thanks to
Thomas Faber for regenerating cond.tab.c from the fixed source file cond.y
using BISON.

I also committed the same fix to 0.4.12-RC-32-g152ee20.
2019-06-14 23:21:37 +02:00
Yaroslav Kibysh
ec14975612 [MSTSC] Center window at start 2019-06-14 19:12:40 +03:00
Eric Kohl
7b29f4d975 [NETCFGX] InstallNetDevice: Run the default device installer before making class-specific changes. 2019-06-13 14:16:25 +02:00
Eric Kohl
cd579382b5 [IPCONFIG] Indentation and coding style fixes. No code changes! 2019-06-13 02:35:53 +02:00
Giannis Adamopoulos
cc25a266f2 [COMCTL32] imagelist: Make the exported functions use the internal IImageList2
- Add a hack to rename the exported functions and use the Internal_ prefix for them so that the IImageList can use them with minimal code changes.
- Add the correct implementation of the affected exported functions making them now use the IImageList of the passed HIMAGELIST.

This indirection is possible because an HIMAGELIST is also a IImageList*.
This indirection is also needed because we can end up using image lists created by either comctl32 v5 or comctl32 v6.
This is how windows manage to use an HIMAGELIST created by comctl32 v5 when it is passed to comctl32 v6.
What really happens in this scenario is that the exported functions of both versions end up using the interface
stored in the object without checking if this interface is the version provided in the same dll or in the other.
2019-06-12 19:20:44 +03:00
Eric Kohl
419fb423ce [IPCONFIG] Show the Description and Physical Address for disconnected network adapters. 2019-06-12 18:04:50 +02:00
Eric Kohl
6734d4ca09 [IPCONFIG] Fix crash on 'ipconfig /all'
Ipconfig should not display invalid 'Lease Obtained' and  'Lease Expires' times because it did not yet receive any DHCP configuration.

Fixes CORE-11837
2019-06-12 17:48:35 +02:00
Eric Kohl
6866c0aede [NTOSKRNL][USETUP][UMPNPMGR] Pass user response data to NtPlugPlayControl(PlugPlayControlUserResponse).
- Windows requires 16 bytes of response data.
- Add the PLUGPLAY_CONTROL_USER_RESPONSE_DATA type.
- Usetup and Umpnpmgr must fail if NtPlugPlayControl(PlugPlayControlUserResponse) does not return STATUS_SUCCESS.
2019-06-12 13:48:27 +02:00
Yaroslav Kibysh
0e1e12b619 [SHORTCUTS] Update Ukrainian shortcuts. (#1639) 2019-06-11 23:23:46 +02:00
Yaroslav Kibysh
5d88df8c35 [ROSAPPS] Update Ukranian shortcuts. (#1638) 2019-06-11 23:01:44 +02:00
Hermès Bélusca-Maïto
9060b0cb7a Fix build (forgot a comma ;) 2019-06-11 22:36:10 +02:00
Hermès Bélusca-Maïto
41e7c818d1 [NTOS] IoSetHardErrorOrVerifyDevice(): Check whether the IRP is not associated with any thread. 2019-06-11 22:29:34 +02:00
Pierre Schweitzer
f6eb13a969 [NTOSKRNL] Rework ObpDeleteSymbolicLinkName and ObpCreateSymbolicLinkName
So that they handle LUID mappings and process device maps.

Get rid of the ObpParseSymbolicLinkToIoDeviceObject helper and introduce a
new helper ObpProcessDosDeviceSymbolicLink that will do the same things
but also handle name creation/deletion as well as device map handling.
All this is based on previous code (hence the same comments :-)).

What's left to do now is to add support for device maps in ObpLookupObjectName
2019-06-11 21:21:52 +02:00
Eric Kohl
acc821e1ea [UMPNPMGR] PNP_SetHwProf is not implemented in Windows XP and returns CR_CALL_NOT_IMPLEMENTED. 2019-06-11 16:32:44 +02:00
Pierre Schweitzer
95848cb538 [BTRFS] Fix MSVC build
CORE-16111
2019-06-11 12:50:49 +02:00
Pierre Schweitzer
92543df9e1 [BTRFS] Fix MSVC build
CORE-16111
2019-06-11 12:43:43 +02:00
Pierre Schweitzer
f381137c89 [BTRFS] Upgrade to 1.3
CORE-16111
2019-06-11 12:35:19 +02:00
Eric Kohl
90aa2c26f8 [NETCFGX] Improvements to the TCP/IP settings dialog.
- Separate the gateway settings from the DHCP settings.
- Enable Edit and Delete buttons only if an item in a list box has been selected.

CORE-9908
2019-06-11 06:58:42 +02:00
Victor Perevertkin
da1b08e842 [USBSTOR] Properly handle IRP_MN_QUERY_DEVICE_RELATIONS(BusRelations) for FDO.
This fixes Driver Verifier warnings
2019-06-11 04:39:43 +03:00
Victor Perevertkin
04409942d6 [USBSTOR] Register dumb IRP_MJ_SYSTEM_CONTROL handler.
This satisfies Driver Verifier
2019-06-11 04:39:43 +03:00
Victor Perevertkin
126abaf88f [USBSTOR] Improve handling of IRP_MN_QUERY_DEVICE_TEXT for PDOs
CORE-15883
2019-06-11 04:39:43 +03:00
Victor Perevertkin
40b25634ff [USBSTOR] Do not leak fields of DeviceExtensions upon device removal 2019-06-11 04:39:43 +03:00
Victor Perevertkin
fa530aee92 [DISK] Disable IsFloppyDevice check.
It wrongly marks USB flash drives as a floppy device
2019-06-11 04:39:43 +03:00
Victor Perevertkin
b7de5870e6 [USBSTOR] Weaken the type checks of a device.
This adds usb-cdrom support to usbstor.sys
2019-06-11 04:39:43 +03:00
Victor Perevertkin
7bb93db372 [USBSTOR] Refactor device reset and pipe reset code.
Return correct status codes from completion routines.
Reject requests while the device is being reset
2019-06-11 04:39:43 +03:00
Victor Perevertkin
aaa90f6986 [USBSTOR] Do not try to retry a failed request
for all cases except receiving a USBD_STATUS_STALL_PID status.
This decision should be made by higher-level driver (and classpnp drivers do it)
2019-06-11 04:39:43 +03:00
Victor Perevertkin
c7ed299aaa [USBSTOR] Issue a SCSI Request Sense after receiving
a CSW with failed status. CORE-15884
Based on Vadim Galyant's patches to usbstor
2019-06-11 04:39:43 +03:00
Victor Perevertkin
5046f1b3fa [USBSTOR] Keep CBW and CSW inside an IRP context.
Remove obsolete fields from the IRP context structure.
2019-06-11 04:39:43 +03:00
Victor Perevertkin
c452f7dab4 [USBSTOR] Refactor request issue code.
Pipe handle selection now made more correctly.
Simplified an MDL allocation for a request.
2019-06-11 04:39:43 +03:00
Victor Perevertkin
84f78cb0d7 [USBSTOR] Better handle CBW/CSW transfer errors
and set SrbStatus correctly.
2019-06-11 04:39:43 +03:00
Victor Perevertkin
3faf5efd49 [USBSTOR] Better validate SCSI IRPs.
Patch by Vadim Galyant
2019-06-11 04:39:43 +03:00
Victor Perevertkin
f3fd12b9be [USBSTOR] Rework the routines for sending internal SCSI requests.
Now for each request SenseBuffer is correctly set
and 3 attempts are made to be sure the STALL state is cleared and
the error is in something else.
Remove the usage of UFI_INQUIRY_DATA structure in favor of "standard"
INQUIRYDATA structure from scsi.h

Based in Vadim Galyant's patches to usbstor
2019-06-11 04:39:43 +03:00
Victor Perevertkin
ed6724cd7e [USBSTOR] Do not create a new Irp for USB requests - use the original one
from higher-level driver instead.
Refactored CSWCompletionRoutine for correct handling different CSW
statuses, more work to be done here.
2019-06-11 04:39:43 +03:00
Victor Perevertkin
b4c03399ba [USBSTOR] Do not attempt additional processing of SCSI requests.
Now the driver sends all requests transparently.
Inspired by Vadim Galyant's patches to usbstor
2019-06-11 04:39:43 +03:00
Victor Perevertkin
d17d15ab6c [FORMATTING][USBSTOR] Remove Captain Obvious and line-wasting comments.
Now the driver conforms with our current Coding Style.
No functional changes
2019-06-11 04:39:43 +03:00
Pierre Schweitzer
33604e0147 [NTOSKRNL] Fix ObpLUIDDeviceMapsEnabled initialization 2019-06-10 21:17:21 +02:00
Eric Kohl
8f285f71c9 [NETCFGX] Do not update the TCP/IP properties when the cancels the advanced properties dialog.
CORE-9908
2019-06-10 20:28:58 +02:00
Pierre Schweitzer
72d229b38c [NETPLWIZ] Add French translation 2019-06-10 19:01:30 +02:00
Eric Kohl
de0e19bc72 [NETSHELL] Network connections can't be renamed
Enable the 'Rename' and 'Delete' menu items for Administrators.
CORE-15348
2019-06-10 17:23:13 +02:00
Yaroslav Kibysh
27cfe08016 [CONSOLE] Update Ukrainian translation. (#1643) 2019-06-10 17:02:58 +02:00
Yaroslav Kibysh
f0163f124f [MSGINA] Update Ukrainian translation. (#1642) 2019-06-10 17:00:44 +02:00
Hermès Bélusca-Maïto
6afe79f361 [CMD] Fix typo in Norwegian translation. 2019-06-10 16:57:59 +02:00
Yaroslav Kibysh
cc387650c2 [CMD] Update Ukrainian translation. (#1641) 2019-06-10 16:56:38 +02:00
Yaroslav Kibysh
5ec32ee5f8 [RAPPS] Update Ukrainian translation. (#1640) 2019-06-10 16:47:55 +02:00
Yaroslav Kibysh
b2e4ff8cfd [SHELL32] Update Ukrainian translation. (#1637) 2019-06-10 16:45:20 +02:00
Pierre Schweitzer
a7b6a1a97d [MSGINA] Update French translation 2019-06-10 15:37:32 +02:00
Joachim Henze
3cc50cedaf [WIN32SS][NTUSER] Addendum to 0.4.12-dev-956-g0197c4f CORE-15893
Aims PixelPerfection for a regression that was introduced by
0.4.12-dev-954-g
1f619b2781

and then improved already by
0.4.12-dev-956-g
0197c4f875

The tweaking got ack of Jim Tabor. Test results:
https://reactos.org/testman/compare.php?ids=68026,68029
2019-06-10 15:33:31 +02:00
Pierre Schweitzer
651ba03c6d [NTOSKRNL] Taggify some allocs 2019-06-10 14:54:55 +02:00
Pierre Schweitzer
a5daa8894d [NTOSKRNL] Implement SepCleanupLUIDDeviceMapDirectory
This will clean up all the links (drive letters) created
by an user on session deletion once LUID device maps are
in use
2019-06-10 14:49:50 +02:00
Pierre Schweitzer
5ecc05003d [NTOSKRNL] On session last reference removal, dereference LUID device map 2019-06-10 12:30:49 +02:00
Pierre Schweitzer
ad80715b1a [NTOSKRNL] Implement NtSetInformationProcess:ProcessDeviceMap 2019-06-10 10:35:24 +02:00
Eric Kohl
f2f698587c [MSGINA] Add missing logon restriction messages. 2019-06-09 22:42:10 +02:00
Hermès Bélusca-Maïto
6fb3dcd312 [FASTFAT] Adjust the 'UnCleanCount', followng commit 9c3c0d12. 2019-06-09 19:05:24 +02:00
Hermès Bélusca-Maïto
4b6abeb352 [FASTFAT] Minor cleanup of the main header file. 2019-06-09 17:56:06 +02:00
Serge Gautherie
8a8453494f [SHELL32] SHCreateShellFolderView(): Fix parameter validation order. (#1632)
Fixes one modification from commit ae2a85d0.
CORE-16098
2019-06-09 15:57:45 +02:00
Eric Kohl
c1421c4108 [NETAPI32] Ignore usriX_logon_hours and usriX_units_per_week if usriX_logon_hours is NULL. 2019-06-09 15:25:13 +02:00
Eric Kohl
1b05c9586c [NETAPI32] Do not try to set usriX_max_storage. Just ignore it. 2019-06-09 14:50:07 +02:00
Eric Kohl
8319c73e2e [NTOS:IO] Implement the PlugPlayControl.PlugPlayControlEnumerateDevice request
Drivers for Intel Pro/1000 NICs seem to install properly.
2019-06-08 20:42:38 +02:00
Serge Gautherie
92e5fabb55 [BROWSEUI] Fix SHEnumClassesOfCategories() parameter validation. (#1622)
Addendum to fdfef818. CORE-11711
2019-06-08 20:05:54 +02:00
Hermès Bélusca-Maïto
ae2a85d003 [SHELL32] Fix some NULL-pointers validation.
- In the exported SHCreateDefaultContextMenu() and
  IDataObject_Constructor() functions (called amongst others by
  the exported CIDLData_CreateFromIDArray() function).

- In the exported SHCreateShellFolderView() function.

- In CDefView::GetItemObject(), where data was written to *ppvOut before
  ppvOut was being checked for NULL.
2019-06-08 19:43:02 +02:00
Yaroslav Kibysh
47d76db311 [BROWSEUI] Update Ukrainian translation. (#1626) 2019-06-08 18:43:13 +02:00
Yaroslav Kibysh
6a8e99e235 [NEWDEV] Update Ukrainian translation. (#1625) 2019-06-08 18:37:29 +02:00
Yaroslav Kibysh
da340662c6 [EXPLORER] Update Ukrainian translation. (#1624) 2019-06-08 18:30:03 +02:00
Yaroslav Kibysh
4d44e11f1e [SHELL32] Update Ukrainian translation. (#1623) 2019-06-08 17:58:42 +02:00
Hermès Bélusca-Maïto
ebc7a1f02d [README] Fix the phrasing. Addendum to 8bfab2d4. 2019-06-08 17:29:31 +02:00
Eric Kohl
c47ad98ff7 [SETUPAPI] Fix a typo in CM_Query_Resource_Conflict_List. 2019-06-06 19:12:44 +02:00
Eric Kohl
adc9bd48b7 [SETUPAPI] GetDeviceInstanceKeyPath: Create a new driver instance property if needed and SEH-protect calls to umpnpmgr. 2019-06-06 19:08:43 +02:00
Eric Kohl
5e3c8ce0c6 [UMPNPMGR] Implement PNP_GetClassInstance(). 2019-06-06 18:16:31 +02:00
Ender Ossel
8bfab2d457 Add an Alpha note for new users in the README (#1270) 2019-06-06 18:01:48 +02:00
Serge Gautherie
73938ee96f [ROSTESTS] Add missing '\n' to a few skip() 2019-06-06 17:33:59 +02:00
Hermès Bélusca-Maïto
fdfef818ef [BROWSEUI] Fix CSHEnumClassesOfCategories::Initialize() parameters validation. (#1559)
CORE-11711
2019-06-06 17:07:38 +02:00
Serge Gautherie
d6d1efe731 [BROWSEUI_APITEST] Add a test for SHEnumClassesOfCategories. (#1559)
CORE-11711
2019-06-06 17:07:08 +02:00
Serge Gautherie
1f8250f700 [BROWSEUI] browseui.spec: Fix SHEnumClassesOfCategories() parameters. (#1559) 2019-06-06 17:06:52 +02:00
Joachim Henze
8f482af0a8 [WIN32SS][FREETYPE] Avoid performance regression CORE-16020
by reverting essential parts of "Font rotation at arbitrary angles"
which was once committed in several steps:

Initial commit (PR#1207)
0.4.12-dev-243-g
f757a13519
broke font rendering for GTK apps CORE-15623

Second commit (PR#1238)
0.4.12-dev-558-g
64987cf273
restored font rendering in GTK apps but introduced slowdown CORE-16020

Katayama agreed to the temporal revert and will try to come up later
with a performance optimized version.
We revert in 0.4.12-RC and 0.4.13-dev.

The revert will cause failure-increases in gdi32:TextTransform
https://reactos.org/testman/compare.php?ids=67898,67901
2019-06-06 02:24:20 +02:00
Serge Gautherie
7eead93569 [BOOTLIB] Check DBG with #if, not #ifdef (#1621) 2019-06-06 01:53:53 +02:00
Serge Gautherie
3a98d96eac [LWIP] Fix src/core/init.c a bit (#1620)
Cherry-pick
http://git.savannah.nongnu.org/cgit/lwip.git/commit/src/core/init.c?id=c0b534e5318baf870e2152c70d4d11a3a86181f3
2019-06-06 01:51:46 +02:00
Serge Gautherie
394eb89227 [MBEDTLS] Use '#ifndef __REACTOS__', instead of '#if DBG & 0' (#1619)
- Don't use '|' on a '#if'
- Remove a personal comment.
2019-06-06 01:50:55 +02:00
Serge Gautherie
2f0b265e8d [DXSDK] Improve dxerr?.h a bit (#1617)
*Use '||', instead of '|', on a '#if'.
*Synchronize some white spaces and blank lines.
2019-06-06 01:50:24 +02:00
Serge Gautherie
96a4ab87d4 [NCFTP] Check _DEBUG with #ifdef, not #if (#1616) 2019-06-06 01:49:52 +02:00
Serge Gautherie
addfb61d8b [NTDLL_VISTA] Check _DEBUG with #ifdef, not #if (#1615) 2019-06-06 01:49:18 +02:00
Serge Gautherie
46259092f9 [ADVAPI32:REG] Remove some useless casts (#1614) 2019-06-05 18:37:07 +02:00
Serge Gautherie
7804cf035a [USER32] RegisterClipboardFormatA(): Enable a SetLastError() (#1612) 2019-06-05 18:15:02 +02:00
Eric Kohl
b8013fce52 [MC] Add syntax and help texts for the NET SHARE command. 2019-06-05 10:25:53 +02:00
Serge Gautherie
b84b755e2b [LOCALSPL] Check DBG with #if, not #ifdef
Addendum to r74433.
2019-06-05 03:32:52 +03:00
Serge Gautherie
cf27695269 [NTOS:MM] PeFmtCreateSection(): Improve AMD64 image failure case
Addendum to 98638cc2df.

CORE-15981
2019-06-04 18:22:19 +02:00
Serge Gautherie
38db074491 Misc addendum to CORE-14271 (#1529)
* [ADVAPI32] Simplify RtlCreateUnicodeStringFromAsciiz() return value check

RtlCreateUnicodeStringFromAsciiz() returns a BOOLEAN, not a BOOL.

No functional change.

Addendum to
CORE-14271

* [USER32] Simplify RtlCreateUnicodeStringFromAsciiz() return value check

RtlCreateUnicodeStringFromAsciiz() returns a BOOLEAN, not a UINT.

Also, add a FIXME.

No functional change.

Addendum to
CORE-14271

* [USER32] Simplify RegisterClipboardFormatA/W() a bit

No functional change.

* [UDFS] Simplify SeSinglePrivilegeCheck() return value check

No functional change.

Addendum to
CORE-14271
2019-06-04 16:56:33 +02:00
Mas Ahmad Muhammad
77ac92d817 [RAPPS] Add Indonesian translation. (#1598) 2019-06-04 15:52:22 +02:00
Mas Ahmad Muhammad
3300a8353c [EXPLORER] Add Indonesian translation. (#1598) 2019-06-04 15:52:20 +02:00
Mas Ahmad Muhammad
c08ba07498 [FORMAT] Update Indonesian translation. (#1598) 2019-06-04 15:52:18 +02:00
Mas Ahmad Muhammad
a0f8e3af28 [RUNDLL32] Update Indonesian translation. (#1598) 2019-06-04 15:52:16 +02:00
Mas Ahmad Muhammad
df14cbe011 [SUBST] Add Indonesian translation. (#1598) 2019-06-04 15:52:14 +02:00
Mas Ahmad Muhammad
a759d582c1 [SERVICES] Add Indonesian translation. (#1598) 2019-06-04 15:52:11 +02:00
Mas Ahmad Muhammad
8725d12db3 [RUNONCE] Add Indonesian translation. (#1598) 2019-06-04 15:52:09 +02:00
Mas Ahmad Muhammad
ba4f067a5c [FONTVIEW] Add Indonesian translation. (#1598) 2019-06-04 15:52:07 +02:00
Mas Ahmad Muhammad
b5002b5f1f [MSPAINT] Add Indonesian translation. (#1598) 2019-06-04 15:52:04 +02:00
Mas Ahmad Muhammad
a945e621f7 [OSK] Add Indonesian translation. (#1598) 2019-06-04 15:52:01 +02:00
Mas Ahmad Muhammad
9e72073b59 [REGEDIT] Update Indonesian translation. (#1598) 2019-06-04 15:51:58 +02:00
Eric Kohl
22df51edc2 [NET] Implement adding and deleting of network shares. 2019-06-04 10:11:22 +02:00
Serge Gautherie
347a74785e [WIN32KNT_APITEST] Replace remaining TESTX() (#1609)
Addendum to b7794e8112.
2019-06-04 11:48:04 +09:00
James Tabor
9f57320175 [GDI32] Meta File Fix Ups
Remove pointer hack. Safer since using wines Enhanced Meta headers with
unknown wine magic information.
2019-06-03 15:49:14 -05:00
Katayama Hirofumi MZ
a73c17fcd9 Revert "[USER32] Make App Switcher use the owner window's icon (#1299)" (#1605)
This reverts commit 484943d04f.
2019-06-03 08:47:43 +09:00
Eric Kohl
be88574f59 [STORPORT] Detect attached devices 2019-06-02 23:30:02 +02:00
Pierre Schweitzer
fd4752450f [NTOSKRNL] Add support for global DOS directory in ObpLookupEntryDirectory
If any exists, we'll loop over in that directory, trying to find the object
2019-06-02 21:46:35 +02:00
Serge Gautherie
92a9a445dd [WIN32KNT_APITEST:NTDD] Improve failure handling
And remove comments about ReactX.

ROSTESTS-315
2019-06-02 19:10:30 +02:00
Serge Gautherie
ba884619b0 [FORMATTING] Add/Remove a few spaces 2019-06-02 19:10:30 +02:00
Serge Gautherie
620d8c01ea [USER32_APITEST:WNDPROC] Improve failure handling
ROSTESTS-316
2019-06-02 19:08:17 +02:00
Serge Gautherie
c5d3ff03fb [USER32_APITEST:WNDPROC] 0 to NULL 2019-06-02 19:08:17 +02:00
Serge Gautherie
9a8b5ffc91 [FORMATTING] 3-spaces to 4-spaces
And a few additional formatting improvements.
2019-06-02 19:08:17 +02:00
Eric Kohl
631db82058 [STORPORT] Fix resource list size calculation 2019-06-02 14:24:35 +02:00
Katayama Hirofumi MZ
f7fc10c17c [WIN32SS][USER32] Fix Task Switcher more (#1602)
This PR will fix task switcher (Alt+Tab) as Win2k3. It became more reliable. CORE-15653
c.f. Raymond Chen's article: http://blogs.msdn.com/b/oldnewthing/archive/2007/10/08/5351207.aspx
2019-06-02 19:17:50 +09:00
Pierre Schweitzer
9c3c0d123b [NTOSKRNL] In case IopMountVolume call is a success, return its VPB
This fixes an extra (erroneous) reference being set on the VPB.

Based on a patch by Vadim Galyant

CORE-16080
2019-06-02 10:48:35 +02:00
Pierre Schweitzer
f8a4d31da4 [NTOSKRNL] On process primary token change, dereference device map 2019-06-02 10:00:17 +02:00
Katayama Hirofumi MZ
f8c51ecdd7 [SDK][INCLUDE] Update msgdump.h 2019-06-02 10:09:34 +09:00
woachk
8e048b8ae9 [NDK/TESTS] The world isn't only amd64 or i386 (#1596) 2019-06-02 00:39:57 +02:00
woachk
fcab77871e Update toolchain-msvc.cmake (#1593)
Adding armasm64 as the assembler. This on its own isn't too useful right now.
2019-06-02 00:38:56 +02:00
woachk
9fcf20a412 [CONFIGURE] Add support for VS16.1 (#1594) 2019-06-02 00:38:30 +02:00
Joachim Henze
bc3eed68ca [MSHTML] Fake Success in HTMLDocument_put_bgColor()
This avoids at startup of Instant Messenger "QIP 2005 8095"
a message-box with "OLE Error 8004001".
The issue is a subtask of CORE-11537
Many Thanks to the patches author
Andreas Maier <staubim@quantentunnel.de>
JIRA-nick: andy-123

Note you still need to install Gecko 2.40 and Samba 1.3 from rapps for QIP.
2019-06-01 22:53:16 +02:00
Pierre Schweitzer
de17b36037 [NTOSKRNL] Implement ObSetDirectoryDeviceMap 2019-06-01 21:22:30 +02:00
Pierre Schweitzer
7c618faa32 [NTOSKRNL] Implement SeGetLogonIdDeviceMap 2019-06-01 21:09:20 +02:00
Pierre Schweitzer
4bf7d54910 [NTOSKRNL] Implement ObpSetCurrentProcessDeviceMap 2019-06-01 18:58:36 +02:00
Pierre Schweitzer
57c6086806 [NTOSKRNL] Implement ObpReferenceDeviceMap() 2019-06-01 18:43:38 +02:00
Pierre Schweitzer
59806f7eb0 [NTOSKRNL] Stub SeGetLogonIdDeviceMap 2019-06-01 18:37:47 +02:00
Pierre Schweitzer
445e895932 [NTOSKRNL] Simplify NtQueryInformationProcess:ProcessDeviceMap implementation 2019-06-01 17:40:23 +02:00
Pierre Schweitzer
46b90ccb96 [NTOSKRNL] Add support for LUID mappings in ObQueryDeviceMapInformation 2019-06-01 17:40:18 +02:00
Pierre Schweitzer
1074a9aaff [NTOSKRNL] Implement support for PROCESS_DEVICEMAP_INFORMATION_EX in NtQueryInformationProcess 2019-06-01 15:18:52 +02:00
Pierre Schweitzer
b16a07fa69 [NTOSKRNL] Implement ObIsLUIDDeviceMapsEnabled and call it in NtQueryInformationProcess 2019-06-01 14:56:28 +02:00
Pierre Schweitzer
7898b2eaa3 [NTOSKRNL] Disable LUID mapping until it's properly implemented 2019-06-01 14:40:54 +02:00
James Tabor
931c72fde5 [NtUser] Fix Clipboard Synthesized Returns
Add supported for Meta file synthesized renderings.
See CORE-12143.
2019-06-01 07:23:58 -05:00
Pierre Schweitzer
848f7bb687 [NTOSKRNL] On device map freeing, make directory object temporary again 2019-06-01 13:59:13 +02:00
Pierre Schweitzer
221ed88141 [NTOSKRNL] De-duplicate code between Ob(f)DereferenceDeviceMap functions 2019-06-01 13:54:34 +02:00
Pierre Schweitzer
1b42731dca [NTOSKRNL] Add a few ASSERTs to ObpGetDosDevicesProtection for DBG builds 2019-06-01 13:51:40 +02:00
Pierre Schweitzer
8f655f9466 [NTOSKRNL] Implement ObpFreeDosDevicesProtection to free DACL 2019-06-01 13:44:55 +02:00
Pierre Schweitzer
933dddeb07 [NTOSKRNL] Modify ObpCreateDeviceMap so that it can handle any process
It is now able to set the newly created device map to any
process and will default to current process if none is provided.
It also sets system device map if no process is specified.
It also deferences existing device map in the process if needed.
Finaly, it will make the directory object permanant.
2019-06-01 13:35:41 +02:00
Katayama Hirofumi MZ
d5b88ff0ae [SDK][INCLUDE] msgdump.h registered message support 2019-06-01 16:21:33 +09:00
jimtabor
73558e94df [User32] Fix Clipboard Meta Test Results
Fix meta data handle returns.
2019-05-31 22:59:29 -05:00
jimtabor
da264743e1 [Win32SS] Support Clipboard Metafile
Major fix ups and plugging in missing code changes. Handle code is from
another project currently being developed for ReactOS.
See CORE-12143
2019-05-31 21:44:17 -05:00
Joachim Henze
07fa6fc38c [ROSTESTS][GLOBAL_MEM] GlobalAllocNFree might return SUCCESS even in failure case due to unintended semicolon ROSTESTS-323 2019-06-01 00:05:06 +02:00
Eric Kohl
42bcdb15a3 [NET] Start work on the SHARE command. List shares and display their properties. 2019-05-31 22:46:44 +02:00
Katayama Hirofumi MZ
6b5bb194b0 [KERNEL32_APITEST] dynamic linked RtlIsCriticalSectionLockedByThread (#1592)
Statically linked ntdll.RtlIsCriticalSectionLockedByThread had made kernel32_apitest unable to run in XP. CORE-16077
2019-05-31 20:23:30 +09:00
Katayama Hirofumi MZ
1010f3796e [USER32] Fix behavior of Task Switcher (Alt+Tab) (#1591)
Task Switcher didn't correctly behave on the windows with WS_EX_APPWINDOW extended style. CORE-15653
2019-05-31 17:02:47 +09:00
Katayama Hirofumi MZ
8d38373fd2 [KERNEL32_APITEST] Check CJK codepage before tests 2019-05-31 16:28:07 +09:00
jimtabor
268b21c2f9 [NtGDI] Support Clipboard Metafile
Fuctions that help transfer meta file data from one process to the next.
See CORE-12143.
2019-05-30 16:36:33 -05:00
jimtabor
e229b3eea7 [GDI32] Support Clipboard Metafile
Metafile patch from Katayama Hirofumi MZ. See CORE-12143.
2019-05-30 16:33:23 -05:00
Joachim Henze
2d3b72a070 [ROSAPPS][PICE] Fix a glitch at two places where code intends to replace invalid chars with spaces ROSAPPS-353
Found by some static code analysis tool reporting 'Condition always false'.
The fix is a selective back-port from the more recent version of pICE hardware.c
Revision: 1.6, Date: 2004/02/17 23:07:36

The most recent source of pICE atm can be found at
https://sourceforge.net/projects/pice/files/pICE%20source/build_20/

Thanks to DougLyons and JIRA user 'maddin200'.
2019-05-30 12:40:54 +02:00
Eric Kohl
fe3ae24369 [UMPNPMGR] Split the monolithic monster: service, rpc and installer. 2019-05-30 11:48:29 +02:00
Eric Kohl
e71a94da20 [UMPNPMGR] PNP_QueryArbitratorFreeData and PNP_QueryArbitratorFreeSize don't do anything useful today. 2019-05-30 01:02:09 +02:00
Joachim Henze
0d20e8988d [ROSAPPS][GETTYPE] Fix a copy-paste-issue when checking for Win2000 CORE-16073 2019-05-29 21:19:02 +02:00
Eric Kohl
adceb3807e [NETAPI32] Implement parts of NetGetDCName and declare some parameters optional. 2019-05-29 15:35:55 +02:00
Eric Kohl
78600cf223 [NETLOGON] Add the netlogon service. 2019-05-29 13:37:20 +02:00
Katayama Hirofumi MZ
ec14b4c50a [WIN32KNT_APITEST] Split win32knt_apitest to 3 modules (#1588)
Split win32knt_apitest to 3 modules (win32knt_apitest, win32knt_xpsp2_apitest and win32knt_2k3sp2_apitest) for usability. These 3 modules are different in linking (win32u.dll, win32u_xpsp2.dll and win32u_2k3sp2.dll). I think it's better to separate for clarity.
2019-05-29 20:32:32 +09:00
Eric Kohl
968bdeddf3 [NETAPI32] Implement NetpAllocWStrFromStr(), NetpAllocWStrFromAnsiStr() (not public, but useful) and NetpAllocWStrFromWStr(). 2019-05-29 12:59:44 +02:00
Katayama Hirofumi MZ
9a39315d46 [SYSSETUP] Set registry hostname in WriteComputerSettings (#1589)
Based on @Doug-Lyons's patch. CORE-16067
2019-05-29 19:59:40 +09:00
Eric Kohl
d0d7c5f045 [NET] Fix remaining issues with logon hours. 2019-05-28 17:23:43 +02:00
Eric Kohl
df31f870c8 [NET] Load the names of the days of week for the 'times' parser routine from the netmsg.dll. 2019-05-28 08:27:23 +02:00
Eric Kohl
e5b635ed10 [NET] Fix the timezone issue in the logon hours parser and display code of the USER command. 2019-05-27 17:00:56 +02:00
Timo Kreuzer
194180b1be [TELNET] Add missing curly braces to for-statement
Fixes GCC 8 warning:
base/applications/network/telnet/src/tnmain.cpp:171:8: error: this 'for' clause does not guard... [-Werror=misleading-indentation]
        for (j = cursor; j >= 0; j--)
        ^~~
base/applications/network/telnet/src/tnmain.cpp:174:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
         for (k = --j; k >= 0; k--)
         ^~~
2019-05-27 13:54:08 +02:00
Timo Kreuzer
454745e48c [TELNET] Add missing curly braces to while-statement
Fixes GCC 8 warning:
base/applications/network/telnet/src/tmapldr.cpp:70:3: error: this 'while' clause does not guard... [-Werror=misleading-indentation]
   while (buf[len])
   ^~~~~
base/applications/network/telnet/src/tmapldr.cpp:74:4: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'while'
    if (len && (buf[len-1] == ' ')) {
    ^~
2019-05-27 13:54:08 +02:00
Timo Kreuzer
fdf221cb17 [TELNET] Add missing curly braces to if-statelent
Fixes GCC 8 warning:
base/applications/network/telnet/src/tnmain.cpp:171:8: error: this 'for' clause does not guard... [-Werror=misleading-indentation]
        for (j = cursor; j >= 0; j--)
        ^~~
base/applications/network/telnet/src/tnmain.cpp:174:9: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
         for (k = --j; k >= 0; k--)
         ^~~
2019-05-27 13:54:08 +02:00
Timo Kreuzer
85d7a38c41 [TELNET] disable restrict warnings
Fixes GCC 8 warning:
base/applications/network/telnet/src/tnmain.cpp:190:13: error: 'char* strcpy(char*, const char*)' accessing 1 byte at offsets [0, 2147483647] and [0, 2147483647] may overlap 1 byte at offset 0 [-Werror=restrict]
       strcpy(&buf[cursor],&buf[cursor+1]);
       ~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-05-27 13:54:07 +02:00
Hervé Poussineau
74be88ac47 [LDR] Silence some debug logs when images overlap 2019-05-27 13:24:28 +02:00
Timo Kreuzer
801ec51a91 [BROWSEUI] Fix indentation
Fixes GCC 8 warning:
dll/win32/browseui/explorerband.cpp:1332:17: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
                 if (!SUCCEEDED(hr) || !pParent.p)
                 ^~
dll/win32/browseui/explorerband.cpp:1335:21: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
                     hr = pParent->SetNameOf(0, pidlChild, dispInfo->item.pszText, SHGDN_INFOLDER, &pidlNew);
                     ^~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
95269bc8d1 [GLU32] Fix indentation
Fixes GCC 8 warnings:
dll/opengl/glu32/src/libnurbs/internals/subdivider.cc:852:2: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
  if( jarc->pwlArc ) jarc->pwlArc->deleteMe( pwlarcpool ); jarc->pwlArc = 0;
  ^~
dll/opengl/glu32/src/libnurbs/internals/subdivider.cc:852:59: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  if( jarc->pwlArc ) jarc->pwlArc->deleteMe( pwlarcpool ); jarc->pwlArc = 0;
                                                           ^~~~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
207a0f520e [MSHTML] Convert tabs to spaces
Fixes GCC 8 warning:
dll/win32/mshtml/script.c:844:4: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
    if(!new_buf)
    ^~
dll/win32/mshtml/script.c:846:13: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
             This->size <<= 1;
             ^~~~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
2944d29969 [REISERFS] Convert a tab to spaces
Fixes GCC 8 warning:
drivers/filesystems/reiserfs/src/memory.c:874:5: error: this 'if' clause does not guard... [-Werror=misleading-indentation]
     if (Mcb->RfsdFcb)
     ^~
drivers/filesystems/reiserfs/src/memory.c:877:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'if'
  if (RfsdLoadInode(Vcb, &(Mcb->Key), &RfsdIno)) {
  ^~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
9dc6c14eca [TFTPD] Disable format-overflow warnings 2019-05-27 13:22:40 +02:00
Timo Kreuzer
1ac9e48465 [MINIZIP] Add curly braces to if-statement and fix indentation
Fixes GCC 8 warning:
sdk/lib/3rdparty/zlib/contrib/minizip/zip.c:521:5: error: this 'for' clause does not guard... [-Werror=misleading-indentation]
     for (i=(int)uReadSize-3; (i--)>0;)
     ^~~
sdk/lib/3rdparty/zlib/contrib/minizip/zip.c:529:7: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'for'
       if (uPosFound!=0)
       ^~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
51fbf9e8c0 [LIBXSLT] Disable misleading-indentation warnings
Fixes GCC 8 warning:
dll/3rdparty/libxslt/security.c:358:5: error: this 'else' clause does not guard... [-Werror=misleading-indentation]
     else
     ^~~~
dll/3rdparty/libxslt/security.c:365:2: note: ...this statement, but the latter is misleadingly indented as if it were guarded by the 'else'
  if (ret <= 0) {
  ^~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
089d59bc6c [RSAENH] Use StringCbPrintfA instead of sprintf
Fixes GCC 8 warning:
dll/win32/rsaenh/rsaenh.c:161:23: error: '%s' directive writing up to 259 bytes into a region of size 235 [-Werror=format-overflow=]
 #define RSAENH_REGKEY "Software\\Wine\\Crypto\\RSA\\%s"
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dll/win32/rsaenh/rsaenh.c:161:23: note: in definition of macro 'RSAENH_REGKEY'
 #define RSAENH_REGKEY "Software\\Wine\\Crypto\\RSA\\%s"
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dll/win32/rsaenh/rsaenh.c:1107:5: note: 'sprintf' output between 26 and 285 bytes into a destination of size 260
     sprintf(szRSABase, RSAENH_REGKEY, pKeyContainer->szName);
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
6129fbaf1e [USETUP] Use RtlStringCbPrintfA instead of sprintf
Fixes GCC 8 warning:
base/setup/usetup/usetup.c:3407:78: error: '%S' directive writing up to 521 bytes into a region of size 200 [-Werror=format-overflow=]
                 "Setup is currently unable to check a partition formatted in %S.\n"
                                                                              ^~
base/setup/usetup/usetup.c:3406:9: note: 'sprintf' output between 128 and 649 bytes into a destination of size 260
         sprintf(Buffer,
         ^~~~~~~~~~~~~~~
                 "Setup is currently unable to check a partition formatted in %S.\n"
                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 "\n"
                 ~~~~
                 "  \x07  Press ENTER to continue Setup.\n"
                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 "  \x07  Press F3 to quit Setup.",
                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                 PartEntry->FileSystem);
                 ~~~~~~~~~~~~~~~~~~~~~~
2019-05-27 13:22:40 +02:00
Timo Kreuzer
ead2156a29 [MINGW32] Add some definitions to fix building with GLIBCXX 2019-05-27 13:22:40 +02:00
Timo Kreuzer
81bdf4e360 [CRT] Add missing posix error codes
These are required by latest mingw-w64 stl and we are mixing this with our crt headers.
Define _CRT_NO_POSIX_ERROR_CODES in all modules that define their own constants.
2019-05-27 13:22:40 +02:00
Hervé Poussineau
8eb7a1a2f4 [CMAKE] Disable unused-const-variable warning
This prevents some errors like this one:

In file included from ../dll/win32/wldap32/ber.c:27:0:
../sdk/include/reactos/wine/debug.h:378:48: error: '__wine_dbch___default' defined but not used [-Werror=unused-const-variable=]
     static struct __wine_debug_channel * const __wine_dbch___default = &__wine_dbch_##ch
                                                ^
../dll/win32/wldap32/ber.c:29:1: note: in expansion of macro 'WINE_DEFAULT_DEBUG_CHANNEL'
 WINE_DEFAULT_DEBUG_CHANNEL(wldap32);
 ^~~~~~~~~~~~~~~~~~~~~~~~~~
2019-05-27 13:22:40 +02:00
Hervé Poussineau
5fe74532af [CMAKE] Disable --compress-debug-sections on GCC >= 7.0
This leads to 'bad reloc address in section .zdebug_info'
2019-05-27 13:22:40 +02:00
Katayama Hirofumi MZ
86046a9bf4 [WIN32SS][NTGDI] Don't use FLOAT in ftGdiGetGlyphOutline (#1576)
Don't use FLOAT variable in ftGdiGetGlyphOutline function. CORE-15838
2019-05-27 18:35:43 +09:00
Katayama Hirofumi MZ
c52b8288d1 [WIN32SS][NTGDI] Avoid allocation of zero size in NtGdiGetGlyphIndicesW (#1577)
In NtGdiGetGlyphIndicesW function, allocation of zero size had caused fatal failures.
Avoid allocation of zero size in ExAllocatePoolWithTag calls. Optimize for cwc == 0. CORE-12825
2019-05-27 16:52:45 +09:00
Eric Kohl
ccd95b9880 [NET] Implement a parser for the '/times' option of the 'user' command.
Work in progress:
- Does not obey to the users time zone.
- Accepts english abbreviations of the days of week only.
2019-05-27 09:27:53 +02:00
Katayama Hirofumi MZ
2db0e159a4 [KERNEL32] Fix SetComputerNameExW (#1583)
Based on @Doug-Lyons's patch. CORE-16058
2019-05-27 16:18:38 +09:00
Katayama Hirofumi MZ
dbc20b6484 [KERNEL32_APITEST] Check also 'NV Hostname' in SetComputerNameExW testcase (#1581)
Also test NV Hostname registry value in the testcase of kernel32!SetComputerNameW. ROSTESTS-322
2019-05-27 11:24:16 +09:00
Katayama Hirofumi MZ
ed0c613528 [GDI32_APITEST] Improve GetGlyphIndices testcase (#1582)
Strengthen the testcase for gdi32!GetGlyphIndicesW. CORE-12825
2019-05-27 11:19:44 +09:00
Jose Carlos Jesus
e2f898aa94 [EXPLORER] Update Portuguese Translation 2019-05-26 21:19:35 +02:00
Jose Carlos Jesus
7f5e960e32 [TRANSLATIONS] Update/Add Portuguese translations.
Translations for: reactos/setup, usetup, syssetup, netshell, shell32.
2019-05-26 21:19:31 +02:00
Katayama Hirofumi MZ
87f5d017a4 [KERNEL32_APITEST] Fix build 2019-05-27 02:34:32 +09:00
Serge Gautherie
de2b20d240 [KERNEL32_APITEST] Improve SetComputerNameExW test a bit (#1580)
Addendum to 8aeb6a9. ROSTESTS-227
2019-05-27 02:33:03 +09:00
Katayama Hirofumi MZ
a0be8d2c2d [WIN32SS][NTGDI] Improve Text Transformation (#1573)
Reduce gdi32_apitest!TextTransform failures. Optimize for speed. Add Width and Escapement parameters to FONT_CACHE_ENTRY structure.
CORE-15554
2019-05-26 16:12:35 +09:00
Hermès Bélusca-Maïto
5ca9c9c138 [CONSRV] Minor code cleanup. 2019-05-26 00:00:39 +02:00
Katayama Hirofumi MZ
8aeb6a920a [KERNEL32_APITEST] Add SetComputerNameExW testcase (#1578)
Add testcase of kernel32!SetComputerNameExW function. ROSTESTS-227
2019-05-25 21:15:24 +09:00
Katayama Hirofumi MZ
fabbd7c1c1 [WIN32SS][NTGDI] Don't use FLOAT for orientation (#1574)
Addendum to 0137096. Use 16.16 fixed-point values instead of FLOAT. CORE-15838
2019-05-24 08:24:21 +09:00
Oleg Dubinskiy
3b0e093aba [SETUP] Fix controls position in 1st stage GUI setup for Russian translation 2019-05-23 23:29:46 +02:00
Katayama Hirofumi MZ
0137096449 [WIN32SS][NTGDI] Don't use FLOAT in IntEscapeMatrix (#1572)
Appendum to 1a40284. Use a 16.16 fixed point value instead of FLOAT. CORE-15838
2019-05-23 19:40:54 +09:00
Hervé Poussineau
e5bffe49da [NTOS:KDBG] Use CONTEXT instead of KTRAP_FRAME
Change KdbpTrapFrameToKdbTrapFrame to prefer CONTEXT (if available) over
KTRAP_FRAME.
2019-05-23 11:04:40 +02:00
Hervé Poussineau
f7ec84eea0 [NTOS:KD] Remove some _WINDK_ usages
- Always include kd64.h
- Change KdpPrompt() prototype to be compatible between KDBG and _WINDK_
- Rename KdComponentTable to KdpComponentTable to prevent a conflict
- Add some functions stubs and global variables
2019-05-23 11:04:40 +02:00
Hervé Poussineau
f5e962ff2e [NTOS:KD] Remove dead code 2019-05-23 11:04:40 +02:00
Hervé Poussineau
95d5b39b57 [NTOS:KD] Remove CTRL+C pending support left over, likely broken by 5a6adb4f13 2019-05-23 11:04:40 +02:00
Hervé Poussineau
f6cec6d5cb [NTOS:KD] Remove /BREAK support left over, likely broken by 819a0ed90a 2019-05-23 11:04:40 +02:00
Katayama Hirofumi MZ
cba1a2f742 [WIN32SS][NTUSER] Fix msvc-x64 build 2019-05-23 08:32:41 +09:00
Joachim Henze
1a402847ed [FREETYPE] Fix regression CORE-16041 Font/Text Rotation Angles Too Small
Thanks to the patches author Doug Lyons
and the reviewers hbelusca and Katayama Hirofumi MZ.

The regression was introduced by
0.4.13-dev-24-g
61475b9fed
2019-05-22 23:15:09 +02:00
jimtabor
0f29b3faa7 [NtUser] Fix setting screen size.
Back set change size to the server information metrics.

Fixes CORE-15477. Still more work is required.

Patch based on reactosfanboy original patch.
2019-05-21 16:24:52 -05:00
Pierre Schweitzer
fe6c7f05e2 [NTOSKRNL] Use the security descriptor for all the symlinks 2019-05-21 19:28:17 +02:00
Pierre Schweitzer
95d303bf13 [NTOSKRNL] Simplify ObpCreateGlobalDosDevicesSD by using a SD on the stack
Rename it to ObpGetDosDevicesProtection to reflect the two previous changes:
its purpose is to return a DACL matching protection mode
2019-05-21 19:28:16 +02:00
Pierre Schweitzer
33f524c625 [NTOSKRNL] Use relaxed ACLs in ObpCreateGlobalDosDevicesSD when protection mode is not set 2019-05-21 19:28:16 +02:00
Pierre Schweitzer
1c4e44592c [NTOSKRNL] Save ProtectionMode value on boot 2019-05-21 19:28:16 +02:00
Eric Kohl
611e6d7d0e [NET] Start parsing the /times option of the USER command.
Only '/times:' and '/times:all' are accepted yet.
2019-05-20 22:36:10 +02:00
Victor Perevertkin
63286c6bbc [HIVESYS] Add missing UpperFilters for mouse and keyboard classes 2019-05-20 01:28:33 +03:00
Hermès Bélusca-Maïto
c4e2826c73 [CONSOLE][CONCFG][CONSRV] Provide support for specified additional TrueType fonts + bugfixes.
CORE-12451 CORE-13182 CORE-13196

- CONSOLE: Initialize the additional TrueType fonts cache.
  * Fix the font preview when a TrueType font has been selected.
  * Refresh the available fonts and the font preview when the selected
    code page is changed (Work In Progress), or when the OS pool of
    font resources has changed (WM_FONTCHANGE message).

- CONCFG: Implement support for the additional TrueType fonts cache:
  the contents of the cache is enumerated under the registry key
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont

  * Add helper functions and macros.
  * In CreateConsoleFontEx(), set the mandatory font pitch&family flags
    and remove those that we do not support.
  * In IsValidConsoleFont2(), update the validity checks and the
    documentation links.

- CONSRV: Load/refresh the additional TrueType fonts cache when needed.
2019-05-19 23:10:41 +02:00
Jose Carlos Jesus
73d7fd1415 [TRANSLATIONS] Update/Add Portuguese translations. (#1564)
Translations for: deskadp, deskmon, reactos/setup, usetup, syssetup.

Co-Authored-By: Bișoc George <fraizeraust99@gmail.com>
2019-05-19 17:04:47 +02:00
Eric Kohl
bb4fc96939 [MMSYS] Reset the speaker volume to its initial value when the user clicks the "Cancel" button
CORE-13815
2019-05-19 16:27:10 +02:00
Katayama Hirofumi MZ
68fcf906d9 [GDI32_APITEST] Strengthen TextTransform more (#1568)
Appendant to #1567. Add more tests for gdi32_apitest!TextTransform. CORE-15554
2019-05-19 19:11:12 +09:00
Katayama Hirofumi MZ
3a071a19ef [GDI32_APITEST] Fix MSVC build 2019-05-19 15:08:38 +09:00
Katayama Hirofumi MZ
7373cb3174 [GDI32_APITEST] Strengthen TextTransform testcase (#1567)
CORE-15554
2019-05-19 14:13:56 +09:00
Eric Kohl
23825149a2 [NET] Display the 'no logon hours' case in the USER command. 2019-05-18 21:21:39 +02:00
Eric Kohl
0ca929791a [NET] Implement proper output of logon hour ranges in the USER command. 2019-05-18 14:46:54 +02:00
Pierre Schweitzer
f3c71baa0c [BASESRV] Handle failures instead of asserting 2019-05-18 13:37:55 +02:00
Eric Kohl
4cf5013a54 [NET] Print raw logon hour ranges in the USER command. 2019-05-18 11:27:00 +02:00
Pierre Schweitzer
8159b205b6 [BASESRV] Take ObjectSecurityMode and ProtectionMode into account when creating DACLs 2019-05-18 11:05:30 +02:00
Pierre Schweitzer
f821e1742c [NTOSKRNL] Implement NtQuerySystemInformation(SystemObjectSecurityMode) 2019-05-18 10:37:25 +02:00
Pierre Schweitzer
a33a69b3f4 [NTOSKRNL] Save ObjectSecurityMode value on boot 2019-05-18 10:37:24 +02:00
Mark Jansen
98638cc2df [NTOS/MM] Recognize AMD64 image in PeFmtCreateSection failure case 2019-05-15 19:39:56 +02:00
Pierre Schweitzer
e97b412a76 [BASESRV] Strengthen default permissions for DOS devices
This is linked to previous work done on DOS devices creation
in basesrv. If this DWORD is not set (or 0), DOS devices will
be created with an ACL that make the symlink readable by any
and modifiable by any.
With protection mode set, the symlink will be still readable by
any but not modifiable by anyone but the owner.

This should also affect some objects managed by session manager.

By default, on W2K3, that protection mode is set.
2019-05-15 08:41:16 +02:00
Bișoc George
6a124ef38a [MAGNIFY] Initialize the common controls as the program has a manifest 2019-05-14 20:49:36 +02:00
Hermès Bélusca-Maïto
7a133609e7 [FIND] Improvements / bug-fixes. (#1553)
- Only include the strictly necessary headers.
- Get rid of the dependency on shell and user DLLs.
- fgetws() gets the string buffer size in number of characters.
- We can use the CRT functions for lengths of the arguments etc.

- The cFileName member of the WIN32_FIND_DATAW structure does not
  contain the full PATH to the enumerated file, but only its name.
  In order to use _wfopen(), build a full file path out of the
  directory part of the file specification and the full file name.

- Simplify a ConPrintf() call to make it "atomic".
- Fix the "confusion" lLineCount vs. lLineNumber vocable in the code.
- Do not emit an extra newline after having displayed the results for
  a given file.
- Uppercase the switches for performing the comparisons.
- Send the errors to the StdErr stream.
- Remove trailing whitespace.
2019-05-14 20:37:46 +02:00
Paweł Cholewa
1bd330cd81 [FIND] Rewrite of the find utility. (#1553)
This commit contains a complete rewrite of find console utility.
The goal of it was to make the source code easier to maintain
and to add a missing feature (/offline switch).

Additional changes:
 * now the program operates on Unicode strings;
 * added conutils and shlwapi as program's libraries;
 * added IDS_INVALID_SWITCH string into resources;
 * modified IDS_USAGE string to include /offline switch
   description.

https://ss64.com/nt/find.html was used for reference.
2019-05-14 20:37:38 +02:00
Hervé Poussineau
9a6eb70ff9 [HIDCLASS] Implement IRP_MJ_WRITE 2019-05-14 14:37:22 +02:00
jimtabor
2161dd85dc [NtUser] Fix Paint Messages
This is a HACK for forcing painting of non client areas. Paint code
seems very restricted.

See CORE-7166 & CORE-15934.
2019-05-13 11:31:58 -05:00
Pierre Schweitzer
0bcf43482b [APPVEYOR] Disable the clang-cl
The compiler hits an assert while building a file
The two "officially" supported compilers are working though

This will bring back green status for our CI on GitHub
2019-05-13 08:35:23 +02:00
Eric Kohl
a65a260919 [POWERCFG] Show the hibernate page only if the S4 power state is available 2019-05-12 23:52:08 +02:00
Eric Kohl
c58a2163d7 [POWERCFG] Add a separate power schemes dialog for ac-only systems
The layout issues will be fixed by a future patch.
2019-05-12 23:48:36 +02:00
Jose Carlos Jesus
1a23f3c9df [EXPLORER] Add Portuguese (Portugal) pt-PT.rc translation. CORE-15967 (#1558) 2019-05-11 22:31:00 +02:00
jimtabor
5418f394ab [Gdi32] Batch Type Select Mode for Testing
Do not allow setting hdc if no batch type is found.
See CORE-15988.
2019-05-11 11:22:06 -05:00
Pierre Schweitzer
34cbb45ff6 [BTRFS] Upgrade to 1.2.1
CORE-16004
2019-05-11 11:53:13 +02:00
Pierre Schweitzer
52550485e2 [UBTRFS] Upgrade to 1.2.1
CORE-16004
2019-05-11 11:25:13 +02:00
Pierre Schweitzer
883b1f31ac [BTRFS] Upgrade to 1.2.1
CORE-16004
2019-05-11 11:20:02 +02:00
Hervé Poussineau
927e1d0968 [HIDPARSER] Implement HidP_GetValueCaps 2019-05-10 11:35:01 +02:00
Hervé Poussineau
2d5a230810 [MOUHID] Correctly detect tablet devices
Some mice give a logical min/logical max which is the maximum move
that they can provide. Those were wrongly detected as absolute mice,
and mouse pointer was mostly stuck at the upper left corner of the
screen.
2019-05-10 11:35:01 +02:00
Eric Kohl
3a207cdf27 [POWERCFG] Fix-up the lid, power button and sleep button settings according to the power capabilities. 2019-05-09 23:56:37 +02:00
jimtabor
dc7f4f682f [Win32SS] Plug in Last Batch
Plugging in last batch after 12 years.
2019-05-09 12:35:21 -05:00
jimtabor
94b4b5c127 [NtGDI] Fix ExtSelectClipRgn Tests
Fix results from tests, add (last one) gdi batch support for
ExtSelectClipRgn. Left commented out test code in tree this time.
Pass Katayama Hirofumi MZ SelectClipRgn tests. After commit will plug in
the last batch. After 12 years.

See CORE-13817 and CORE-15906.
2019-05-09 12:33:21 -05:00
Pierre Schweitzer
e1e6cfd312 [BASESRV] Misc fixes: use BaseSrvHeap and silent a DPRINT 2019-05-09 08:57:43 +02:00
Eric Kohl
cc13842ad4 [POWERCFG] Do not re-initialize all paged directly when the hibernate file setting changes. Re-initialize the pages on PSN_SETACTIVE instead. 2019-05-08 23:31:00 +02:00
Pierre Schweitzer
bd7b0c96c6 [BASESRV] Make Buffer MAX_PATH big again 2019-05-08 20:39:57 +02:00
Pierre Schweitzer
20f5797386 [BASESVR] Take SessionId into account while creating BNO directory 2019-05-08 20:35:31 +02:00
Pierre Schweitzer
a802726577 [BASESRV] Fix the BNO string buffer usage
This avoids reinitializing it before use.
2019-05-08 20:08:13 +02:00
jimtabor
25198d5cbd [Win32nt|ApiTests] Add ExtSelectClipRgn test
For CORE-13817 and CORE-15906
2019-05-08 12:31:17 -05:00
Pierre Schweitzer
0a392b188a [BASESRV] Rewrite DOS devices management
This will notably bring support for DOS mapping with LUID devices
(not yet supported in the kernel, though).
This also reduces complexity (and thus memory usage) with the "history"
thing. Multiple targets are stored in the link target as MULTI_SZ string.

This fixes regressions introduced with kernel32 fixes/rewrites.
2019-05-08 18:34:28 +02:00
Pierre Schweitzer
ea7aca8bdd [KERNEL32] Drop unused line breaks 2019-05-08 18:34:28 +02:00
Pierre Schweitzer
eea0beca35 [BASESRV] Enable the ProtectionMode query code
And make it global
2019-05-08 18:34:28 +02:00
Pierre Schweitzer
6e4f0365e3 [BASESRV] Make SessionId global 2019-05-08 18:34:28 +02:00
Thomas Faber
f86360fdbc [NTOS:CM] Do not call ZwQueryObject with a zero-size buffer. CORE-15882
Actually fixes ntdll_apitest:NtLoadUnloadKey.
2019-05-07 13:52:50 +02:00
Serge Gautherie
627f0242ad [ROSAUTOTEST] Fix and improve some log handling (#1531)
* wmain(): Use endl instead of '\n', for 'System uptime'
* wmain(): Output "[ROSAUTOTEST] " in two cases: 'System uptime' and all CSimpleException.
2019-05-07 08:39:52 +02:00
Eric Kohl
535b8dda8d [POWERCFG] Implement the power scheme 'Save As' feature
CORE-12565
2019-05-06 23:55:42 +02:00
Eric Kohl
af14108ee2 [POWERCFG] Do not call other pages init routines when the hibernate setting changes. This will be fixed later. 2019-05-06 23:39:09 +02:00
Benjamin Aerni
3da616a918 [DDK][PSDK] Added the rest of the defines for netkvm 2019-05-06 23:11:45 +02:00
Hermès Bélusca-Maïto
6a67dfd191 [DDK][PSDK] Add some missing NDIS definitions/types. Caught by Benjamin Aerni. 2019-05-05 23:19:53 +02:00
Eric Kohl
1dcf8376f0 [POWERCFG] Fix power scheme deletion
CORE-12566, CORE-12567
2019-05-05 22:48:53 +02:00
Eric Kohl
077dcfedb9 [POWERCFG] Improve the error handling in AddPowerScheme() and keep track of the current power scheme. 2019-05-05 22:10:00 +02:00
Oleg Dubinskiy
4172325559 [NOTEPAD] Duplicate notepad.exe in SystemRoot. CORE-16003 (#1555)
This is also done on Windows for backwards compatibility with Windows 3.x/9x.
But, it's also used (i.e. "required") by some installers, like Doom 3 Demo installer and Battlefield 1942 Single Player Demo installer, for successful opening of their Readme file at the end of their installation!
2019-05-05 19:48:37 +02:00
Pierre Schweitzer
204bfa8574 [KERNEL32] Misc. fixes to DefineDosDeviceW
- Add support for LUIDDeviceMapsEnabled;
- Broadcast proper message in case of device removal;
- Use less memory for strings management;
- Make code a bit cleaner.
2019-05-05 18:33:15 +02:00
Thomas Faber
d3fa3b0ca2 [NTOS:CM] Check for correct status from ZwQueryObject. CORE-15882
Fixes regression in ntdll_apitest:NtLoadUnloadKey from d570482bc7.
2019-05-05 17:57:12 +02:00
Eric Kohl
b5e6280a72 [POWERCFG] Really fix the power schemes exceptions! 2019-05-05 17:05:59 +02:00
Pierre Schweitzer
5d20d512be [KERNEL32] Rewrite QueryDosDeviceW to handle global and local MS-DOS namespaces
It also comes with a small performance boost: instead of performing object
queries one after another, we query them all at once.
2019-05-05 14:18:09 +02:00
Thomas Faber
5706f6e9f4 [NTOS:PNP] Reduce the size of the pool buffer in IopGetParentIdPrefix. CORE-15882 2019-05-05 10:39:29 +02:00
Thomas Faber
2f1fab41fa [NTOS:CM] Reduce the size of some unnecessarily large stack buffers. CORE-15882 2019-05-05 10:39:26 +02:00
Thomas Faber
047a3bf79a [NTOS:CM] Simplify CmpGetRegistryPath to avoid unnecessary stack buffers. CORE-15882 2019-05-05 10:39:22 +02:00
Thomas Faber
d570482bc7 [NTOS:CM] Avoid a fixed-length stack buffer in CmpCmdHiveOpen. CORE-15882 2019-05-05 10:39:18 +02:00
Thomas Faber
26ab9f8a03 [NTOS:CM] Avoid a fixed-length stack buffer in CmpAddToHiveFileList. CORE-15882 2019-05-05 10:39:14 +02:00
Thomas Faber
f3a280f52b [NTOS] Use correct buffer size when calling MiResolveImageReferences. CORE-15882 2019-05-05 10:39:11 +02:00
Thomas Faber
ccb91bebbe [NTOS:PNP] Avoid a fixed-length stack buffer in IopActionConfigureChildServices. CORE-15882 2019-05-05 10:39:07 +02:00
Thomas Faber
e1b20681f5 [NTOS:IO] Avoid a fixed-length buffer in IopGetDriverObject. CORE-15882 2019-05-05 10:39:01 +02:00
Thomas Faber
6fdff1f970 [NTOS:KDBG] Avoid use of MAX_PATH. CORE-15882 2019-05-05 10:38:10 +02:00
Pierre Schweitzer
8d128aa441 [KERNEL32] Reduce QueryDosDeviceA memory footprint
by using TEB static unicode string (which is already
preallocated).
Also, properly handle RtlUnicodeStringToAnsiString failures.
Finally, make sure output buffer is properly 0 terminated.
2019-05-05 10:17:16 +02:00
Pierre Schweitzer
1ed7f27466 [KERNEL32] Reduce DefineDosDeviceA memory footprint
by using TEB static unicode string (which is already
preallocated).
2019-05-05 10:17:16 +02:00
Hermès Bélusca-Maïto
2ebda0e3d0 [CONSOLE.CPL] Fix the console screen preview when selecting TrueType fonts.
CORE-13182 CORE-13196

- Use the correct character height & width.
- Additions: use StringCch*() when initializing the dialog title.

[CONSRV:CONCFG] Minor fixes.

- When retrieving font characteristics in ConCfgReadUserSettings(),
  check for NULL/zero values that indicate that we should use default
  ones instead.
- Rename 'dwNumSubKeys' into 'dwNumValues'.
2019-05-05 01:20:19 +02:00
Eric Kohl
fa63416d87 [MC] Add message tranlations. Supplement to 3acec58f. 2019-05-04 23:13:28 +02:00
Eric Kohl
3acec58fb5 [NET] Replace remaining strings of the NET ACCOUNTS command by messages 2019-05-04 21:12:09 +02:00
Pierre Schweitzer
83d8fbf434 [ROSAUTOTEST] Don't disallow buffering for journal file
This fixes back journal in ReactOS "at low costs". Indeed,
because write are improperly aligned right now, journaling
just fails.
With that patch, Cc will take care of aligning writes and
journal will be written again. Because flush operations
happen at each and every write to the journal, we expect
changes to land on disk quickly (not as quickly as if
they were directly written). But that's a good trade off
between over engineering and fixing a broken feature.

CORE-15973
2019-05-04 11:54:39 +02:00
Pierre Schweitzer
ab69736a1d [AUTOCHK] Don't check any volume on boot
This will avoid triggering a FAT repair on
unclean FAT volumes.

If dosfstools.fsck works fine in Linux, its
usage on ReactOS triggers worse corruption
than unclean shutdown.

Given I've no time for debugging this, I
kill it off.

CORE-14638
2019-05-04 11:02:29 +02:00
Katayama Hirofumi MZ
262f712810 [WIN32SS][NTGDI] Correctly get/update ptlCurrent about TA_UPDATECP 2019-05-04 10:07:24 +09:00
Katayama Hirofumi MZ
cb9a9fa984 [WIN32SS][NTGDI] Wrap IntLPtoDP and IntDPtoLP macros by do { .... } while (0) 2019-05-04 09:56:09 +09:00
Mark Jansen
1292f5f881 [APPSHIM_APITEST] Fix 2k3 test failures 2019-05-02 22:07:49 +02:00
jimtabor
b3b40b35c9 [HIDParser] Fix MSVC build
Attempt to fix build for MSVC.
This effected local build GCC system with newer Ninja version. Not sure
if this has an effect.
2019-05-02 14:33:07 -05:00
Eric Kohl
5164c852e8 [POWERPROF] ValidatePowerPolicies: Do not fail because of legal power states which were set by FixSystemPowerState. 2019-05-02 20:39:58 +02:00
Hervé Poussineau
7033ab18df [HID] Use hidparser static library for HidP_* functions
hid.dll and hidparse.sys must understand the same HID preparsed data,
so use the same code in hid.dll and in hidparse.sys

At the same time, this permis implementation of some HidP_* functions.
2019-05-02 20:06:47 +02:00
Hervé Poussineau
2978d4b61b [HIDPARSE/HIDPARSER] Move HidP_* functions from hidparse.sys to hidparser library
Interface between both is not anymore the HidParser_* functions, but
the HidP_* functions and the AllocFunction/FreeFunction/DebugFunctions/
ZeroFunction/CopyFunction.
2019-05-02 20:06:47 +02:00
Hervé Poussineau
bef39dd62e [SERIAL] Immediately complete read IRP if all requested bytes have been found in circular buffer
Previously, we had to wait to receive another byte to finish the first IRP.
2019-05-02 20:06:47 +02:00
Hervé Poussineau
ebd39aa266 [I8042PRT] Do not assert on unknown IOCTL 2019-05-02 20:06:47 +02:00
jimtabor
2cc766b0c6 [NtGDI] Set Xform flags if a changed
Missed more flags changes.
2019-05-02 11:56:55 -05:00
jimtabor
b2ce1ae206 [NtGDI] Set Xform flags if a changed
Missed flags changes.
2019-05-02 10:16:50 -05:00
jimtabor
04a04659da [NtGDI] Adding Support for Viewport TextOut
Add Viewport changes to Text Out Batch.
2019-05-02 10:11:11 -05:00
Katayama Hirofumi MZ
dcaaf3e7af [COMDLG32] Fix treatment of wrong filename extension (#1545)
Fix treatment of wrong filename extensions upon GetOpenFileName/GetSaveFileName. CORE-15270
2019-05-02 22:48:01 +09:00
Pierre Schweitzer
bdaa8e5ad1 [NTDLL_APITEST] Query sector size for NtWriteFile tests 2019-05-02 13:59:47 +02:00
Pierre Schweitzer
64b6327dd7 [NTDLL_APITEST] Add tests for alignment for NtWriteFile
This mimics the usage of WriteFile which is done in rosautotest.

 CORE-15973
2019-05-02 12:09:34 +02:00
James Tabor
9d00413754 [GDI32] Add batch flag for Text Out
Set batch flag for Text Out with font and attributes change sets.
2019-05-01 23:24:53 -05:00
James Tabor
44b11ad6a9 [GDI32] Fix MS build
Fix old uncovered code.
2019-05-01 20:53:06 -05:00
James Tabor
b751c31c74 [GDI32] Update signal flags for batch.
Add removed flags for batch signaling. This will allow syncing of
changed Xfroms after batched drawing. Disable calls to kernel mode since
the code is closely identical. Kernel calls are for init time when
PDCATTR is normally zero. ReactOS seems to work better keeping this from
NULL.
While making code changes add Xform state flags from:
https://www.reactos.org/archives/public/ros-diffs/2019-May/070693.html

Test BOT results:
https://reactos.org/testman/compare.php?ids=67251,67254
https://reactos.org/testman/compare.php?ids=67253,67255
2019-05-01 20:33:09 -05:00
Bișoc George
f8b90805ff [OSK] Hotfix for PR #1536 (#1549)
CORE-15965
2019-05-01 22:22:08 +02:00
Mark Jansen
575ab6c760 [ACGENRAL] Add a test shim 2019-05-01 19:22:19 +02:00
Mark Jansen
0e9ca37517 [ROSAPPS] Add a test application for shims 2019-05-01 19:22:19 +02:00
Mark Jansen
1570f08b4d [APPHELP] Add ordinal import support 2019-05-01 19:22:19 +02:00
Eric Kohl
2872cfc3b7 [POWERCFG] Fix indentation. No code changes! 2019-05-01 13:16:38 +02:00
Katayama Hirofumi MZ
88fbb600bf [GDI32_APITEST] Improve SetMapMode testcase (#1547)
Check the relation of mode change and viewport change. CORE-14994
2019-05-01 18:28:18 +09:00
Katayama Hirofumi MZ
f7bc0543cb [WIN32SS][NTGDI] Fix ExtTextOut about TA_UPDATECP (#1546)
Add WORLD_XFORM_CHANGED flag to some positioning functions.
Fix IntExtTextOutW function for TA_UPDATECP alignment, so that it can correctly update the current position. CORE-14994
2019-05-01 16:51:00 +09:00
Katayama Hirofumi MZ
0ac563b3ec [KERNEL32_APITEST] JapaneseCalendar: Reiwa era has come! 2019-05-01 16:15:23 +09:00
Mark Jansen
2450dec427 [NTOS/MM] Ensure ImageBase is not used uninitialized 2019-04-30 18:57:43 +02:00
Hermès Bélusca-Maïto
77d234b049 [KERNEL32] Addendum to 0e3a0435 (PR #803): always return TRUE in the stub-plemented SetThreadStackGuarantee() to continue satisfying programs that use it. CORE-15989 2019-04-29 22:51:35 +02:00
Bișoc George
f681bad246 [OSK] Make the buttons themed
Our On-Screen Keyboard has a manifest and the buttons (the ones with BS_ICON styles) aren't rendered with the specific theme as it should be but instead it takes the classic theme.

The code relies on NM_CUSTOMDRAW notification, which is more intuitive and efficient than doing owner-drawn operations as NM_CUSTOMDRAW allows the controls to use styles whereas you cannot do it on owner-drawn controls.

CORE-15965
2019-04-29 21:31:29 +02:00
Katayama Hirofumi MZ
9ce337242b [WIN32KNT_APITEST] Forgot a extension in CMakeLists.txt 2019-04-29 19:42:04 +09:00
Katayama Hirofumi MZ
8bdfdd5c17 [WIN32SS][NTGDI][GDI32] Fix DPtoLP and NtGdiTransformPoints etc. (#1540)
Fix NtGdiTransformPoints, gdi32!DPtoLP, gdi32!LPtoDP and gdi32!SetMapMode functions. Fix CORE-15983. CORE-15983
2019-04-29 14:45:44 +09:00
Katayama Hirofumi MZ
45ec49ca2f [APITESTS] set_module_type(win32u module) 2019-04-29 12:49:54 +09:00
Katayama Hirofumi MZ
45bbb11a50 [APITESTS] Add NtGdiTransformPoints testcase (#1542)
Add a testcase for NtGdiTransformPoints function. set_module_type(win32u... win32dll) CORE-15983
2019-04-29 09:13:22 +09:00
Hermès Bélusca-Maïto
f21f750467 [KERNEL32_APITEST] Rename the 'Console.c' file into 'ConsoleCP.c' and its test-function as well, in order to reflect the actual name of the corresponding test. 2019-04-28 23:46:35 +02:00
Colin Finck
2c11c41115 Add a shared "port" directory for POSIX functions needed by multiple host tools (getopt/mkstemps) and import the one and only getopt from glibc.
This finally fixes our duplicated getopt functions from different sources and gives us an up to date and the most compatible implementation.
isohybrid actually relies on a glibc-specific getopt behavior that we previously hacked into the reactos_support_code.c implementation derived from BSD/mingw-w64.
widl also needs getopt and previously used an even older BSD-derived code.
2019-04-28 23:23:06 +02:00
Colin Finck
c02257ef57 [ISOHYBRID] Fix the remaining warnings properly.
I will send these changes upstream (minus the REACTOS_ISOHYBRID_EFI_MAC_SUPPORT ifdefs).
2019-04-28 23:22:53 +02:00
Timo Kreuzer
f47f45dbdd [TOOLS] Fix/suppress all MSVC/x64 warnings (#1525) 2019-04-28 23:21:48 +02:00
Hermès Bélusca-Maïto
0aed8b09a4 [CONSRV] Cache the console window system menu handle; simplify its initialization code. 2019-04-28 21:47:55 +02:00
Serge Gautherie
cf48f8bf8a [REACTOS] Replace remnant legacy SPIF_SENDWININICHANGE by SPIF_SENDCHANGE (#1526)
No functional change otherwise.
2019-04-28 21:19:42 +02:00
Bișoc George
89f6929dae [ACCESS] Reposition the "ToggleKeys" group box control (#1541)
CORE-15383
2019-04-28 20:21:38 +02:00
Andrew Boyarshin
458a26ab76 [WIN32SS:NTUSER] Use the 2nd parameter of NtUserGetThreadDesktop() as fallback. (#1065)
- The 2nd parameter is already passed in user-mode by GetThreadDesktop().
  It is then used by NtUserGetThreadDesktop() as a fallback for console
  threads.

- Lookup and validate the thread by using the IntTID2PTI() helper.
- Don't reference the desktop with too many access rights.
- Get rid of the old-school DECLARE_RETURN() & co. macros.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-04-28 19:27:45 +02:00
Katayama Hirofumi MZ
23ad2173f2 [WIN32SS][NTGDI] Fix wrong IN/OUT (#1539) 2019-04-28 17:24:57 +02:00
Eric Kohl
93b54d007f [POWERCFG] Fix minor power scheme issues
- Really fix the exception that occurs on closing the property sheet.
- Use the correct scheme ID when the current power scheme is set.
2019-04-28 13:18:52 +02:00
Serge Gautherie
f79ca12eda [ROSAUTOTEST] "Enforce" ending '\n' on C___Exception messages (#1533) 2019-04-28 12:20:37 +02:00
Serge Gautherie
853f7d84a0 [FORMATTING] appveyor.yml: Remove an extra space (#1538)
Addendum to 48f98e88.
2019-04-28 03:23:27 +02:00
Hermès Bélusca-Maïto
d70848b8b7 [WINSRV] Implement SrvGetThreadConsoleDesktop(). CORE-13470
It retrieves the handle to the desktop assigned to the specified
thread belonging to a console application, which is going to be
where the input thread of this console is.
2019-04-28 02:50:38 +02:00
Katayama Hirofumi MZ
2da24f7274 [COMDLG32] Follow up of #1514 CORE-7114 Don't load asterisk extension 2019-04-28 08:44:52 +09:00
Hermès Bélusca-Maïto
9256c808b1 [NFS] Fix a typo in the precompiled header. 2019-04-28 01:42:52 +02:00
Eric Kohl
ce218f70ec [POWERCFG] Fix an exception that occurs when the control panel is closed. 2019-04-27 19:01:35 +02:00
Hermès Bélusca-Maïto
0e3a043526 [KERNEL32] Add an (incomplete) pre-implementation for SetThreadStackGuarantee(). (#803)
This should remove some of the "SetThreadStackGuarantee(): stub" messages in some simple cases.
2019-04-27 18:41:50 +02:00
Hermès Bélusca-Maïto
30b800f8b5 [MODERN.MSSTYLES] Remove trailing whitespace. 2019-04-27 17:04:48 +02:00
Jake Collins
50cf16b302 [THEMES] Reorganize files for future compatability.
Moved current theme assets into their own dedicated
files in preparation for .theme support.

CORE-15970
2019-04-27 17:04:39 +02:00
Katayama Hirofumi MZ
6a7d8112c3 [COMDLG32] Save open/save location by extension (#1514)
Use the proper open/save initial folder for comdlg32.GetOpenFileName and comdlg32.GetSaveFileName. CORE-7114
2019-04-27 23:02:34 +09:00
Katayama Hirofumi MZ
3cc2169556 [SDK][INCLUDE] Use FALSE for BOOL in msgdump.h 2019-04-27 22:06:37 +09:00
Timo Kreuzer
fad4b34db7 [CMAKE] Fix LINK_DEPENDS usage
Up to CMake 3.3 LINK_DEPENDS was ignored in non-Makefile generators. See also http://www.cmake.org/pipermail/cmake/2010-May/037206.html. Since CMake 3.4 it is no longer ignored, but requires CMP0005 policy to be set to NEW and it requires a full path which was already correctly used on GCC, but not on MSVC builds.
2019-04-27 14:29:33 +02:00
Andrew Cook
716613cddc [CMAKE] Use new policies for CMP0005 and CMP0018 (#1481)
* [CMAKE] Fix for CMP0018
The new behaviour lets us explicitly disabling position independent code, avoiding the need to change undocumented variables

* LINK_DEPENDS is semicolon separated

* [CMAKE] Fix for CMP0005
it seems impossible to have cmake correct escape PROXY_CLSID_IS so move it to the header
2019-04-27 11:33:37 +02:00
Katayama Hirofumi MZ
3af58ea993 [SDK][INCLUDE] small fix for msgdump.h 2019-04-27 18:30:29 +09:00
Katayama Hirofumi MZ
39312ba688 [WIN32SS][NTGDI] Use UNICODE_NULL for consistency 2019-04-27 16:17:37 +09:00
Katayama Hirofumi MZ
19fc9415bf [WIN32SS][NTGDI] FireFox checkmark fix CORE-15303 (#1535)
The font size was a bit larger than expected. FireFox will show checkmarks correctly in View menu. CORE-15303
2019-04-27 09:38:01 +09:00
Eric Kohl
9a24e9799e [POWERCFG] Show the name of the power scheme in the delete confirmation message box 2019-04-26 23:12:36 +02:00
Eric Kohl
7251020e41 [POWERCFG] Some small cleanup
- Rename IDC_HYBERNATE... to IDC_HIBERNATE...
- Rename IDS_PORCENT to IDS_PERCENT
- Replace %1 by %s in IDS_CONFIG1 and IDS_CONFIG2
2019-04-26 21:52:30 +02:00
Katayama Hirofumi MZ
ae8417fd90 [WIN32SS][NTGDI] Keep FontSubstitutes enumeration CORE-15785 (#1532)
Fix CORE-15785. When LOGFONT.lfFaceName[0] == 0, then enumeration of font substitutes had failed. CORE-15785
2019-04-26 21:56:36 +09:00
Colin Finck
86ae6b029f [ROSAUTOTEST] A timeout of 120 seconds kills the msi:action test prematurely, so increase it to 170 seconds.
This is still below the 180 seconds before sysreg2 kills the entire VM.
I've added a comment to clarify that.
2019-04-26 10:31:02 +02:00
Timo Kreuzer
b7ab90d932 [PSDK] Improve lmrepl.h
Added public domain header. This file was originally imported in r8283 from w32api where is has no copyright.
2019-04-26 10:30:01 +02:00
Colin Finck
e34d3cf379 [REGTEST] Add regtest.cmd to the Run key inside regtest.cmd, so we're also started on the next reboot in case ReactOS crashed *and* the registry has been saved.
unattend.inf only allows to add RunOnce entries, which are in theory only executed on the first boot after installation.
For almost a decade, this worked anyway to start regtest.cmd again after a ReactOS crash, because the registry and thus the deletion of the RunOnce entry wasn't stored on disk in case of a crash.
Thanks to Sylvain for the hint!

As Explorer processes the Run key right after RunOnce and therefore picks up regtest.cmd a second time during the first boot, exit the script just after adding the Run key.
Otherwise, rosautotest.exe would be started twice, with catastrophic results.
2019-04-26 10:02:47 +02:00
Colin Finck
064dffe6c3 [ROSAUTOTEST] Cache the result of GetLastError(). 2019-04-26 08:47:15 +02:00
Colin Finck
7dd4d2256b [ROSAUTOTEST] Implement a process activity timeout of 2 minutes. If there is no log output within 2 minutes, the test process is killed, and we continue with the next test.
This is a rather graceful approach compared to sysreg2's 3 minute timeout before killing and restarting the entire VM.
Since we added autochk for FAT filesystems, the filesystem is often "fixed" after a reset with the consequence that ReactOS doesn't boot up anymore.
The sysreg2 restart code still remains for handling tests causing BSODs.
2019-04-26 08:47:15 +02:00
Eric Kohl
0ca4b50791 [POWERCFG] Fix the initialization of the power schemes page
CORE-4995
2019-04-26 00:03:27 +02:00
Oleg Dubinskiy
c8611aea13 [DPNHPAST] Import dpnhpast.dll from Wine (Staging) 4.5 2019-04-24 19:59:15 +02:00
Jared Smudde
7e18b6d0eb [BROWSEUI] Enable the Disconnect Network Drive menu item. (#1522)
CORE-13516, CORE-13518
2019-04-24 04:28:05 +02:00
Jared Smudde
bf431dd278 [MPR] Implement the function WNetDisconnectDialog(). (#1522)
CORE-13516, CORE-13518
2019-04-24 04:28:01 +02:00
Jared Smudde
d1404a7a2a [NETPLWIZ] Implement the Disconnect Network Drive dialog. (#1522)
CORE-13516, CORE-13518
2019-04-24 04:26:12 +02:00
Katayama Hirofumi MZ
9de816c971 [APPWIZ.CPL] Set a default shortcut-link description (#1520)
CORE-15511
2019-04-24 03:44:44 +02:00
Hermès Bélusca-Maïto
62823a08ce [SHELL32] Make the new-item menu work (aka. make it dynamic) when the .lnk handler doesn't have any ShellNew entry. 2019-04-24 03:41:41 +02:00
Hermès Bélusca-Maïto
0416c598f8 [SHELL32] Code formatting/style/whitespace fix + fix two memory leaks in failure paths of CNewMenu::LoadItem(). 2019-04-24 03:36:27 +02:00
Katayama Hirofumi MZ
8e60c2efee [SHELL32] Implement 'New Link' (Retrial of #1510), CORE-15511 (#1518)
Correctly create cache about ".lnk" and handling in the member functions.

Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-04-24 03:28:17 +02:00
Katayama Hirofumi MZ
f2512254e0 [MSPAINT] Set default extension .bmp (#1515)
Set the default extension of mspaint to .bmp. CORE-7114
2019-04-23 14:25:18 +09:00
Eric Kohl
8c30fdab1c [STOBJECT] Store the "Show x icon in the taskbar" setting for the hotplug, power and volume icons.
CORE-12365
CORE-12972
CORE-15234
2019-04-23 00:12:23 +02:00
Eric Kohl
22411ef223 [POWERCFG] Fix indentation and coding style. No code changes! 2019-04-23 00:09:10 +02:00
Eric Kohl
8fb2a2dd12 [STOBJECT][MMSYS][POWERCFG] Store the "Show x icon in the taskbar" setting for the hotplug, power and volume icons.
CORE-12365
CORE-12972
CORE-15234
2019-04-23 00:04:01 +02:00
Hermès Bélusca-Maïto
a7ddabcc12 [EXPLORER] Minor cleanup/comment fixes. 2019-04-22 21:25:41 +02:00
Hermès Bélusca-Maïto
884db2ea06 [NTOS:CM] In CmpParseKey(), do not assert but instead correctly return failure if CmpHandleExitNode() doesn't return a valid node, or CmpCreateKeyControlBlock() fails. 2019-04-22 21:09:10 +02:00
Hermès Bélusca-Maïto
627b1df579 [NTOS] Fix typos. 2019-04-22 19:41:19 +02:00
Hermès Bélusca-Maïto
2e1f594d5e [FREELDR] Add some missing UiDrawBackdrop() calls. 2019-04-22 19:33:20 +02:00
Hermès Bélusca-Maïto
05b052fee2 [OPENGL32] Fix the order of the specified callbacks for the DrvSetCallbackProcs() call.
References:
- https://github.com/OpenSWR/openswr/blob/master/ogldriver/wgl.cpp
- https://github.com/Igalia/mesa/blob/master/src/gallium/state_trackers/wgl/stw_icd.h
- "OpenGL Installable Client Driver, Version 1.101 -- Reference Guide" by Microsoft Corporation.
2019-04-22 18:29:43 +02:00
Bernhard Feichtinger
a8fa5394ef [OPENGL32] Fix usage of TEB members. 2019-04-22 17:42:13 +02:00
Bernhard Feichtinger
f5471b7b4b [NTOS][USERSRV] Silence noisy debug output. 2019-04-22 17:41:17 +02:00
Mark Jansen
774f497721 [SYSSETUP] Fix a broken DPRINT
Thanks to Thomas for spotting it.
2019-04-22 16:24:59 +02:00
Eric Kohl
754a35b210 [STOBJECT] Mark hotplug, power and volume context menu default items 2019-04-22 10:36:17 +02:00
Katayama Hirofumi MZ
cd489d8d9b [GDI32_APITEST] Fix build s/IGNORE/NO_CHECK/ 2019-04-22 14:20:42 +09:00
Katayama Hirofumi MZ
a6b84082e6 [GDI32_APITEST] Rewrite DPtoLP testcase (#1509)
Sorry, I had to rewrite gdi32!DPtoLP testcase. ROSTESTS-319
2019-04-22 13:48:57 +09:00
Katayama Hirofumi MZ
3a2a99efb6 [GDI32_APITEST] Rewrite LPtoDP testcase (#1508)
Sorry, I had to rewrite gdi32!LPtoDP testcase. ROSTESTS-319
2019-04-22 13:48:14 +09:00
Eric Kohl
eabae983e0 [POWRPROF] EnumPwrSchemes: Fix callback string lengths
The callback routine should get the real lengths of the name and description strings in bytes instead of the buffer sizes in characters. This fixes buffer overflows in powercfg.cpl.
2019-04-22 00:44:47 +02:00
Serge Gautherie
a57bc4f6c3 [ACGENRAL] Fix MSVC warning C4090 "different 'const' qualifiers" about a ShimLib_ShimFree() call (#1506)
Addendum to 007cc5cd.
CORE-7538
2019-04-21 21:15:11 +02:00
Katayama Hirofumi MZ
24647a270e [BOOTDATA] Add registry keys for ComDlg32 (#1511)
Add registry keys for ComDlg32. CORE-7114
2019-04-21 23:47:10 +09:00
Eric Kohl
cfe54aa4b5 [NTOSKRNL] Revert f71588ff as it seems to break the tests 2019-04-20 23:26:57 +02:00
Eric Kohl
f62a4b2015 [POWERCFG] Use a list of power schemes (power policy, id, name and description) rather than a bare array of power policies. This will simplify adding and deleting schemes quite a lot. 2019-04-20 22:48:38 +02:00
Eric Kohl
8896706566 [POWERCFG] Fix the undue change of monitor switch off time
CORE-12495
2019-04-20 14:43:16 +02:00
Eric Kohl
a117331947 [POWERCFG] Fix coding style and indentation. No code changes! 2019-04-20 14:36:22 +02:00
Pierre Schweitzer
335b906ca8 [NTOSKRNL] Drop the useless Timestamp field 2019-04-20 11:31:59 +02:00
Pierre Schweitzer
610cc5a6b6 [GDI32] Reduce verbosity on debug builds 2019-04-20 11:24:54 +02:00
Pierre Schweitzer
77b6899d89 [NTOSKRNL] Don't set VACB dirty on release if already dirty
CORE-15954
2019-04-20 11:23:35 +02:00
Katayama Hirofumi MZ
c714b7fd67 [ATL][ATLTEST] Adapt to RATL and improvements (#1501)
- Modify atldef.h for non-ReactOS environments.
- Update ATL testcase project files (from v120_xp to v140_xp).
- #define HAVE_APITEST and use it.
- s/NULL/0/
2019-04-20 08:35:39 +09:00
Hervé Poussineau
501116b68f [HIDCLASS] Implement IOCTL_HID_GET_FEATURE/IOCTL_HID_SET_FEATURE 2019-04-19 22:46:03 +02:00
Eric Kohl
afca8367ea [KERNEL32] GetSystemPowerStatus(): Set the BATTERY_FLAG_CRITICAL flag if the battery life gets lower than 5 percent. 2019-04-19 22:30:46 +02:00
Eric Kohl
333eb16f30 [KERNEL32] GetSystemPowerStatus(): Fix coding style. No code changes! 2019-04-19 22:28:11 +02:00
Eric Kohl
453e5bc2af [STOBJECT] Improvements to the power notification icon
- Use GetSystemPowerStatus() instead of querying each battery.
- Add an ugly AC power icon. Should be fixed or replaced.
- Display AC power, battery charging, battery depleting and error cases. The AC power case was missing.
- Update some strings because we are no longer using float for the charge percentage.

@Turkish translators: Please check and update the translation of IDS_PWR_CHARGING!
2019-04-19 21:54:37 +02:00
Andreas Maier
0263151f3c [DBGHELP] SymFromAddr: Handle 2 or more symbols at the same address correct.
There could be more then 2 symbols at the same addr.
Adjust function to handle that case correct.
2019-04-19 21:09:45 +02:00
Andreas Maier
b2bcd8afdd [DBGHELP] Set LastError for SymGetModuleBase-calls to ERROR_MOD_NOT_FOUND.
Correct last error in module_find_by_addr.
2019-04-19 21:09:45 +02:00
Andreas Maier
6175044aed [DBGHELP] set correct values in symt_fill_sym_info (SYMBOL_INFO).
* symtype: set to SymPdb not SymCv (may be for old pdb-files pre VS 6.0)
* flags: return SYMFLAG_PUBLIC_CODE for SymTagPublicSymbol if its a function.
* flags: do not return SYMFLAG_FUNCTION for SymTagFuncion.
2019-04-19 21:09:45 +02:00
Andreas Maier
9466a005e9 [DBGHELP] Add SYMFLAG_- and SYMTYPE_-defines. 2019-04-19 21:09:44 +02:00
Andreas Maier
e3447d02c1 [DBGHELP] use correct record in codeview_snarf_public.
Use public_vx iststead of data_vx for public symbols.
2019-04-19 21:09:44 +02:00
Andreas Maier
183294a12e [DBGHELP] search for debugfiles in modulepath too.
Debug symbols (like PDB, ...) could not be found if the direcory of
the module and application differs. Applying this patch they will
be found.
Dbghelp searches the module path too. (See MS docs).
2019-04-19 21:09:38 +02:00
Serge Gautherie
9f3eb1f9a2 [CMAKE] msvc.cmake: Remove now redundant '/we4028' special case
Addendum to 545a2c7936.

CORE-7538
2019-04-19 20:47:03 +02:00
Katayama Hirofumi MZ
48f98e88ed [APPVEYOR] Enable fast_finish (#1494)
It stops the remaining jobs if any error happened. It becomes less time for waiting for building.
2019-04-19 23:39:18 +09:00
Serge Gautherie
4126817f7f [BOOTDATA] AHKAppTests.cmd: Fix 'media' typo (#1502)
Addendum to df2a8c4. s/media/medium/
2019-04-19 22:12:16 +09:00
Mark Jansen
0efcfec044 [NTOBJSHEX] Reorder include files in the precompiled header 2019-04-18 21:17:00 +02:00
Mark Jansen
91ba017dfc [APPHELP] Fix warnings 2019-04-18 19:21:39 +02:00
Mark Jansen
aff8581f6d [RSHELL] Disable exceptions in atl when compiling without exceptions 2019-04-18 19:21:39 +02:00
Mark Jansen
10fa9bfe0a [SHELL32_APITEST] Disable exceptions in atl when compiling without exceptions 2019-04-18 19:21:39 +02:00
Mark Jansen
a255e1d693 [MSGINA_APITEST] Disable exceptions in atl when compiling without exceptions 2019-04-18 19:21:38 +02:00
Mark Jansen
537f4c2195 [NETREG] Use exceptions with stl 2019-04-18 19:21:38 +02:00
Mark Jansen
9f00854bad [MSGINA] Disable exceptions in atl when compiling without exceptions 2019-04-18 19:21:38 +02:00
Mark Jansen
d0a8b98bd8 [NTOBJSHEX] Disable exceptions in atl when compiling without exceptions 2019-04-18 19:21:38 +02:00
Mark Jansen
0f60294c56 [APPHELP_APITEST] Disable exceptions in atl when compiling without exceptions 2019-04-18 19:21:38 +02:00
Mark Jansen
f5731a41f8 [SHELL32] Use the same definitions for shell32 and it's static libs 2019-04-18 19:21:37 +02:00
Mark Jansen
9824a0154e [ATL] Retire atlnew 2019-04-18 19:21:37 +02:00
Mark Jansen
9853cc4d7e [ATL][ATL_APITEST] Add test + implementation for CAtlFileMapping 2019-04-18 19:21:37 +02:00
Pierre Schweitzer
bd75947372 [NTOSKRNL] Drop the no longer needed Dirty field
CORE-15954
2019-04-18 08:14:41 +02:00
Pierre Schweitzer
8b6696fcdb [NTOSKRNL] Don't mark VACB dirty on unpin
This could happen if BCB was marked dirty previously.
Marking VACB dirty on unpin could lead to a double write of
the VACB, even if clean.
Indeed, now that setting BCB dirty leads to marking VACB
dirty, the VACB can be flushed in between by the lazy-writer.
The BCB state is not reset on VACB flush, contrary to the VACB state.
Thus, on unpin even if the VACB was already flushed, we were
setting back the dirty state, leading the VACB to be flushed again.

This could bring a small performance downgrade. Though it remains
limited since this is mostly used for FS metadata.
Possibly it could lead to metadata corruption, but this is likely
less possible.

CORE-15954
2019-04-17 22:35:19 +02:00
jimtabor
feb9c045cf [NtGDI] Update Region code
Wine Sync/Port and update for Regions. See CORE-15906.
2019-04-17 14:43:24 -05:00
jimtabor
7fabc51d73 [GDI] Fixup attribute support for Regions
Start to fix CORE-13817 when GDI batch is turn on for SelectClipRgn.
2019-04-17 14:09:58 -05:00
Eric Kohl
f71588ff7a [NTOSKRNL] NtPowerInformation: Report an AC powered machine by default. 2019-04-16 20:41:21 +02:00
Pierre Schweitzer
98972036d9 [KMTESTS:CC] Add tests for CcCopyWrite
CORE-15384
2019-04-16 19:50:27 +02:00
Katayama Hirofumi MZ
083d6be31e [KERNEL32] Implement InvalidateNLSCache 2019-04-16 21:41:58 +09:00
Katayama Hirofumi MZ
a004233bd3 [KERNEL32] Fix handle leak and caching (follow-up of 7e38267) 2019-04-16 20:57:02 +09:00
Katayama Hirofumi MZ
7e3826786e [KERNEL32] Era first year is GANNEN 2019-04-16 11:10:00 +09:00
Katayama Hirofumi MZ
df2a8c40be [BOOTDATA] Improve AHKAppTests.cmd (follow-up of #1476) 2019-04-16 10:38:51 +09:00
Thomas Faber
a7634b8e1d [USBHUB_NEW] Support NULL HubExtension in USBH_PdoRemoveDevice.
Device removal can happen multiple times for PDOs.
2019-04-14 15:32:18 +02:00
Thomas Faber
477cf902e4 [USBHUB_NEW] Fix inverted check in USBH_RestoreDevice.
This allows re-enabling a disabled device.
2019-04-14 15:32:16 +02:00
Thomas Faber
46b0f6d9de [USBCCGP] Allow unconfiguring the device in USBCCGP_PDOSelectConfiguration.
Fixes device removal for USB audio devices.
2019-04-14 15:32:14 +02:00
Thomas Faber
528fc589c0 [USBCCGP] Do not try to unconfigure a device that is not configured.
Fixes handling failed IRP_MN_START_DEVICE.
2019-04-14 15:32:12 +02:00
Thomas Faber
6122f3f436 [COMCTL32] Remove an unnecessary include. 2019-04-14 14:35:29 +02:00
Hermès Bélusca-Maïto
3b7f710fc7 [BOOTDATA] Remove stray value. 2019-04-14 01:25:35 +02:00
Hermès Bélusca-Maïto
61475b9fed [WIN32SS:NTGDI] IntEscapeMatrix(): Use FreeType trigonometric functions instead of CRT ones. 2019-04-14 01:19:03 +02:00
Hermès Bélusca-Maïto
7334567211 [GDI32] Do not 'hard-assert' during the font-unit-test. 2019-04-14 01:17:15 +02:00
Hermès Bélusca-Maïto
4a96e0adbc [3RDPARTY] Addendum to 146096cd: Make some warnings non-fatal. 2019-04-13 18:24:01 +02:00
Jared Smudde
ca72c931f3 [OPENGLCFG] Edit the applet name so it uses the same capitalization scheme as the other Control Panel applets. 2019-04-13 17:07:55 +02:00
Jared Smudde
1a7dcb24ad [RAPPS] Fix blurry Theme category icon. 2019-04-13 17:07:30 +02:00
Oleg Dubinskiy
7a88727570 [DIRECTX] Fix typos in readme.txt (#1498)
See also PR #687.
2019-04-13 17:07:02 +02:00
Thomas Faber
5685ad4a12 [CMAKE] Don't use the PCH for generated files.
The PCH must be used with the same compiler flags it was generated with,
so don't use it for files that use modified flags.
2019-04-13 15:58:22 +02:00
Timo Kreuzer
545a2c7936 [CMAKE] Add 3 more critical warnings for MSVC
- C4311: pointer truncation from '<pointer>' to '<integer>'
- C4312: conversion from '<integer>' to '<pointer>' of greater size
- C4133: incompatible types - from '<x> *' to '<y> *'
- C4028: formal parameter different from declaration
2019-04-13 14:07:50 +02:00
Timo Kreuzer
146096cd2e [3RDPARTY] Make some warnings non-fatal 2019-04-13 14:07:50 +02:00
Timo Kreuzer
c2e16abc91 [DBGHELP] Fix 64 bit issue 2019-04-13 14:07:50 +02:00
Timo Kreuzer
f9a967b2ae [REACTOS] Fix misc 64 bit issues 2019-04-13 14:07:50 +02:00
Timo Kreuzer
d2feba3d53 [TREELIST] Fix 64 bit warnings 2019-04-13 14:07:50 +02:00
Katayama Hirofumi MZ
94a42d43b5 [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.
2019-04-12 07:56:04 +09:00
Katayama Hirofumi MZ
983cd57c1e [WIN32SS][NTGDI] Delete unnecessary (ULONG) cast CORE-15755 2019-04-11 18:23:32 +09:00
Katayama Hirofumi MZ
bc9f3ed887 [GDI32][NTGDI] Avoid integer overflow (follow-up of #1492) (#1495)
Follow up of #1492. CORE-15755
- Use RtlULongMult function to check integer overflows.
2019-04-11 17:57:57 +09:00
Katayama Hirofumi MZ
811faed421 [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.
2019-04-11 11:46:52 +09:00
jimtabor
cfdf36e442 [NtUser] Fix Theme Non Client Painting.
See CORE-7166 & CORE-15934.
2019-04-10 20:52:01 -05:00
jimtabor
84d518b190 [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.
2019-04-10 19:24:50 -05:00
Eric Kohl
29bf209767 [NET][MC] Move remaining generic strings from net.exe to netmsg.dll.
Translators, please check the translations!
2019-04-09 21:44:03 +02:00
Katayama Hirofumi MZ
ae80eb824e [GDI32] Improve IntFontFamilyListUnique function (#1491)
Make gdi32!IntFontFamilyListUnique function std::unique compatible. Previous code didn't set the first entry correctly. CORE-15785
2019-04-09 17:39:42 +09:00
Katayama Hirofumi MZ
672ac75033 [GDI32] add some DPRINT's for font enum functions 2019-04-09 16:44:57 +09:00
Foxlet
f50d58b367 [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@gmail.com>
2019-04-09 02:00:41 +02:00
Eric Kohl
88f899e132 [NET][MC] Move generic strings from net.exe to netmsg.dll.
Translators, please check the translations!
2019-04-08 22:48:06 +02:00
Eric Kohl
fb36723066 [NTOSKRNL] Initialize GUID_DEVICE_BATTERY properly 2019-04-08 21:19:57 +02:00
Joachim Henze
2e8c7cf423 [SDK] Raise KERNEL_VERSION_PATCH_LEVEL to 13 in the version.cmake 2019-04-08 18:25:01 +02:00
Stanislav Motylkov
e0e5363a73 [THEMES][CMAKE] Cmake file fixup for Modern theme
Addendum to 00ff951. CORE-13020
2019-04-08 16:28:22 +02:00
Jake Collins
00ff951038 [THEMES] Overhaul ReactOS modern theme. CORE-13020 (#1424) 2019-04-08 15:10:59 +02:00
Katayama Hirofumi MZ
c65156002c [SHELL32] Fix SHFileOperation Move operation (#1487)
Reduce failures of Move operation of shell32!SHFileOperation function. CORE-13450
2019-04-08 21:59:33 +09:00
Victor Perevertkin
5f4cf8a716 [USBHID] Do not assert if the device was unplugged during an operation. 2019-04-08 12:05:17 +03:00
Stanislav Motylkov
911031e840 [RAPPS] Update Russian translation
Addendum to 07f3691 and d5b4570.
2019-04-07 23:51:34 +02:00
Stanislav Motylkov
d2a2632fd9 [SYSSETUP] Update Russian translation
Addendum to 5d4d48a, 21b7648, and ea799b7.
2019-04-07 23:51:34 +02:00
Foxlet
ea799b74f1 [SYSSETUP] Add Mizu to syssetup. 2019-04-07 22:47:20 +02:00
Foxlet
28804dd71d [THEMES] Mizu Theme RC. 2019-04-07 22:47:20 +02:00
Foxlet
bb3c53c5a0 [FONTS] Add Source Sans font family.
Source Sans Pro sourced from https://github.com/adobe-fonts/source-sans-pro ,
Source Code Pro sourced from https://github.com/adobe-fonts/source-code-pro
2019-04-07 22:47:20 +02:00
Hervé Poussineau
11d11cf6d0 [CMAKE] Temporarly disable pch in some modules to fix travis-ci
Problem appeared after 09c4d0a74b
2019-04-07 21:00:49 +02:00
Hervé Poussineau
902b86eecf [UDFS] Fix macros to support 'bit' being a complex expression
This is for example used in udf_info/mount.cpp:
    UDFSetUsedBits(new_bm, i & ~(d-1), d);
2019-04-07 19:28:18 +02:00
Hervé Poussineau
5f69f99ce2 [UDFS] Keep same includes/defines on x64 as on other architectures 2019-04-07 19:28:18 +02:00
Hervé Poussineau
4d1a8f8f54 [NTOS:FSRTL] Use _SEH2_AbnormalTermination() instead of _abnormal_termination()
We're already using SEH2 macros, so also use SEH2 functions
2019-04-07 19:28:18 +02:00
Hervé Poussineau
33cf2c44c5 [MUP] Use _SEH2_AbnormalTermination() instead of _abnormal_termination()
We're already using SEH2 macros, so also use SEH2 functions
2019-04-07 19:28:18 +02:00
Hervé Poussineau
2baf7b5220 [SDK] Fix _SEH2_AbnormalTermination() macro in dummy SEH 2019-04-07 19:28:18 +02:00
Hervé Poussineau
10ecbaddd0 [ADVAPI32] Send correct type to ElfrChangeNotify()
This fixes the following compiler error:
../dll/win32/advapi32/service/eventlog.c:658:59: error: passing argument 3 of 'ElfrChangeNotify' makes integer from pointer without a cast [-Werror=int-conversion]
dll/win32/advapi32/eventlogrpc_c.h:391:20: note: expected 'ULONG {aka long unsigned int}' but argument is of type 'HANDLE {aka void *}'
2019-04-07 18:32:29 +02:00
Hervé Poussineau
cb031ac957 [ACLAYERS] Use correct prototypes
FARPROC is defined in windef.h as "typedef INT_PTR (WINAPI *FARPROC)();"
2019-04-07 18:32:29 +02:00
Hervé Poussineau
4c1cbd2b53 [EXT2] Add __REACTOS__ check around changes done in 76910c358f 2019-04-07 18:32:29 +02:00
Hervé Poussineau
09c4d0a74b [CMAKE] Prevent out-of-bound accesses in parser/lexer files
which try to remove path prefix from them.
2019-04-07 18:32:29 +02:00
Hervé Poussineau
15a828c86d [DHCPCSVC] Eliminate unused code and associated parameters
This is mostly the same as OpenBSD commit b4e4f16f2ae0ddf1e786bb12c99b8c51170a1a33
2019-04-07 18:32:28 +02:00
Hervé Poussineau
a3e870be51 [SDK] Remove double declaration of _alloca
_alloca() is already defined in sdk/include/crt/malloc.h
2019-04-07 18:32:28 +02:00
Eric Kohl
626aaf227c [NTOSKRNL] Use global power capabilities and report button presence
- Add and initialize a global power capabilities variable.
- Return the global power capabilities via NtPowerInformation.SystemPowerCapabilities.
- Report the presence of power button, sleep button and lid.
2019-04-07 16:42:58 +02:00
Joachim Henze
b71429059a [COMCTL32] Improve status bar margin for unthemed and themed CORE-15834
Improve further what was recently committed in
0.4.12-dev-361-g
da9accfba6
2019-04-07 15:15:25 +02:00
Katayama Hirofumi MZ
f762aa3dd2 [SHELL32] Fix explorer file item label background CORE-15937 2019-04-07 21:38:00 +09:00
Katayama Hirofumi MZ
15537c3bbe [KERNEL32] Support Japanese calendar (#1482)
Implement the Japanese calendar in kernel32. Locale info and date formatting. CORE-15920
2019-04-07 20:20:23 +09:00
Katayama Hirofumi MZ
a008bf8ef2 [KERNEL32_APITEST] Improve one-character Heisei tests (#1483)
One-character Heisei for CAL_SABBREVERASTRING locale info can be U+337B or U+5E73. And one-character Reiwa U+32FF, U+4EE4, and U+F9A8 are also added. Improve kernel32_apitest testcase. Thanks @ThFabba CORE-15920
2019-04-07 18:35:52 +09:00
Thomas Faber
89a587169b [ACPICA] Update to version 20190405. CORE-15926 2019-04-07 10:59:52 +02:00
Eric Kohl
5563525ad4 [NET][MC] Move the remaining STATISTICS and USER strings from net.exe to netmsg.dll.
Translators, please check the translations!
2019-04-07 09:23:01 +02:00
Katayama Hirofumi MZ
72990b29c5 [KERNEL32_APITEST] JapaneseCalendar must work even if not codepage 932"
Delete (GetACP() != 932) check.
2019-04-07 12:18:54 +09:00
Maxim Smirnov
ffb4b674c7 [FONT] Fix FontSmoothing 2019-04-07 01:42:29 +02:00
Katayama Hirofumi MZ
b8f5fed484 [BOOTDATA] Improve error message of AHKAppTests.cmd (#1476)
+    dbgprint "Insert ReactOS CD and try again."
2019-04-07 08:05:35 +09:00
Eric Kohl
cf16429c60 [NET][MC] Move STATISTICS SERVER strings from net.exe to netmsg.dll.
Translators, please check the translations!
2019-04-06 19:42:51 +02:00
Jérôme Gardou
f489c3fd07 [CMAKE] Clear CMAKE_<LANGUAGE>_IMPLICIT_LINK_LIBRARIES and
_IMPLICIT_LINK_DIRECTORIES

Othrewise, if you link a RC module with a static C library (as done for
fusion DLLs), you get the standard C libraries from GCC. This is not
what we want.

This might have to be done for MSVC builds. Check build.ninja to verify
this.
2019-04-06 17:43:38 +02:00
Jérôme Gardou
157a509a0f [CMAKE] Also set blank DEFINE_SYMBOL property for freeldr helpers 2019-04-06 17:43:38 +02:00
Jérôme Gardou
e24182f8c0 [GDI32] Use correct dependenxy for the winegdi library 2019-04-06 17:43:38 +02:00
Jérôme Gardou
aa91628b0e [ZLIB] use correct dependency for minizip library 2019-04-06 17:43:38 +02:00
Jérôme Gardou
979972b900 [CMAKE] unset EXPORT_SYMBOL for modules and shared libraries
We don't use that
2019-04-06 17:43:38 +02:00
Jérôme Gardou
23373acbb9 [CMAKE] Use modules instead of shared libraries
There is no need to compile our DLLs as shared libraries since we are
managing symbols exports and imports through spec files.

On my system, this reduces the configure-time by a factor of two.
2019-04-06 17:43:38 +02:00
Eric Kohl
050db4facb [NET][MC] Move NET USER strings from net.exe to netmsg.dll.
Translators, please check the translations!
2019-04-06 15:42:10 +02:00
Katayama Hirofumi MZ
afb47b845f [KERNEL32_APITEST] s/48815/0xBEAF/ 2019-04-06 21:59:35 +09:00
Eric Kohl
8120a5ec80 [NET][MC] Move NET CONFIG strings from net.exe to netmsg.dll.
Translators, please check the translations!
2019-04-06 13:39:42 +02:00
Katayama Hirofumi MZ
c7bebe40cb [KERNEL32] Improve MultiByteToWideChar (#1477)
Reduce MultiByteToWideChar failures. CORE-13349
2019-04-06 20:11:07 +09:00
Katayama Hirofumi MZ
3ce3b4c283 [KERNEL32_APITEST] Follow up of 89af984 2019-04-06 18:20:04 +09:00
Katayama Hirofumi MZ
89af984b16 [KERNEL32_APITEST] 5-byte, 6-byte, ... UTF-8 sequences 2019-04-06 17:48:15 +09:00
Timo Kreuzer
7cb02f432f [MC] Add missing message translations by copying the english version
Note: always translate the whole file! It's easier (use a script or simply a regex replace) and required by Visual Studio 2019.
2019-04-06 09:01:34 +02:00
Katayama Hirofumi MZ
eee53c734b [KERNEL32_APITEST] Careless 2019-04-06 13:55:03 +09:00
Katayama Hirofumi MZ
0cdee99e05 [KERNEL32_APITEST] Trivial 2019-04-06 13:51:34 +09:00
Katayama Hirofumi MZ
e015239426 [KERNEL32_APITEST] Forgot FreeLibrary 2019-04-06 13:48:05 +09:00
Katayama Hirofumi MZ
aa39ad97aa [KERNEL32_APITEST] Follow up of #1472 2019-04-06 13:34:21 +09:00
Katayama Hirofumi MZ
da2767364a also add modules/AHK_Tests to .gitignore 2019-04-06 12:05:15 +09:00
Katayama Hirofumi MZ
246b691c64 add modules/ahk_tests to .gitignore 2019-04-06 11:47:25 +09:00
Katayama Hirofumi MZ
6150baf414 [SHELL32] pl-PL.rc escape sequence fix 2019-04-06 11:41:08 +09:00
Adam Słaboń
21b7648f15 [SYSSETUP] Add Lunar theme option to 2nd setup stage
This adds Lunar theme option to the 2nd setup stage theme chooser page.
2019-04-06 01:10:52 +02:00
Eric Kohl
9f95e35ff3 [NET][MC] Replace strings for the ACCOUNTS, GROUP and LOCALGROUP commands by netmsg.dll messages. 2019-04-05 23:15:32 +02:00
Mark Jansen
5d4d48a850 [SYSSETUP] Add a theme chooser that can handle multiple styles 2019-04-05 21:56:31 +02:00
Katayama Hirofumi MZ
3400a27ca5 [KERNEL32_APITEST] Improve MultiByteToWideChar testcase (#1472)
Strengthen the testcase for kernel32!MultiByteToWideChar function. ROSTESTS-282
2019-04-05 22:04:04 +09:00
Katayama Hirofumi MZ
572e028de1 [SDK][ATL] Independence day of ReactOS ATL (#1473)
Today is the Independence Day of ReactOS ATL (RATL). CORE-12935
https://github.com/katahiromz/RATL
2019-04-05 19:45:45 +09:00
Petr Akhlamov
98c786f7d7 [FONTS] Update Libre Franklin to v1.501 (#1464)
Update Libre Franklin to release with cyrillic support.
https://github.com/alexeiva/Libre-Franklin/releases/tag/1.501
2019-04-05 11:15:47 +02:00
Adam Słaboń
7047aa80ef [TRANSLATION] Polish translation update
Polish translation update for calc, fltmc, magnify, notepad, osk, sndvol32, usetup, fdebug, appwiz, mmsys, sysdm, acppage, ziplfdr, browseui, cryptui, jscript, shell32, themeui and inf. Added translation for cyrptext, vcdcontroltool, and (not yet complete) getuname.
2019-04-05 10:34:10 +02:00
Katayama Hirofumi MZ
f55ded91a4 [SHIMGVW] Fix cursor (#1471)
Fix the cursor of shimgvw.dll. CORE-15219
2019-04-05 16:52:11 +09:00
Katayama Hirofumi MZ
6388b91a4d [CRT][USER32] fix wsprintf additional argument (%*s) (#1470)
Reduce wsprintf function failures ("%*s"). CORE-13955
2019-04-05 16:33:18 +09:00
Katayama Hirofumi MZ
2fd3a8f1b5 [KERNEL32_APITEST] Follow up of #1466 (#1469)
Skip tests if the current codepage is not Japanese. CORE-15920
2019-04-05 13:04:15 +09:00
Katayama Hirofumi MZ
eb8d1d929f [KERNEL32_APITEST] Japanese calendar testcase (#1466)
Add Japanese calendar-related tests. CORE-15920
2019-04-05 09:06:41 +09:00
Katayama Hirofumi MZ
d04b4e65d6 [SHELL32] Implement Explorer background image (Retrial of #801) (#1463)
IconArea_Image, IconArea_Text and IconArea_TextBackground values in desktop.ini in a folder will be supported. It denies network paths. CORE-5516
2019-04-05 07:59:35 +09:00
Katayama Hirofumi MZ
466dbc5929 [BOOTDATA] Japanese calendar-related registry info (#1468)
Add registry info about Japanese calendar. CORE-15920
2019-04-05 07:21:00 +09:00
Eric Kohl
a8dea717f2 [MC] Add spanisch, polish, romanian, turkish, chinese and taiwanese messages to the file by duplicating the english ones and translate messages that will be used by the NET ACCOUNTS command.
Translators, please check the translations.
2019-04-04 23:53:35 +02:00
Pierre Schweitzer
2a104321ee [UDFS] Fix an integer overflow leading to a buffer overrun
Spotted by GCC7
2019-04-04 15:08:21 +02:00
Katayama Hirofumi MZ
8bf795ff76 [GDI32_APITEST] Add LPtoDP testcase (#1462)
ROSTESTS-320
2019-04-04 10:44:52 +09:00
Katayama Hirofumi MZ
2c48ab4c0e [ROSTESTS][GDI32_APITEST] Follow up of #1459 (#1460)
ROSTESTS-319
2019-04-04 05:25:02 +09:00
Mark Jansen
d71712e909 [SYSSETUP] Ask for common controls v6 when using v6 features 2019-04-03 19:44:27 +02:00
Mark Jansen
bae083355d [SYSSETUP] Add a missing break 2019-04-03 19:44:16 +02:00
Katayama Hirofumi MZ
e157a5fe1c [GDI32_APITEST] Improve DPtoLP testcase (#1459)
ROSTESTS-319
2019-04-03 22:48:42 +09:00
Katayama Hirofumi MZ
234a78e09f [ROSTESTS][GDI32_APITEST] Follow up of #1457 (#1458)
Thanks, @SergeGautherie.
2019-04-03 20:42:21 +09:00
Katayama Hirofumi MZ
f65a62ea5b [ROSTESTS][GDI32_APITEST] Refactor testcases (#1457)
[ROSTESTS][GDI32_APITEST] Refactor testcases
2019-04-03 17:22:21 +09:00
Maxim Smirnov
39c0fd5722 [SHELL32] Fix version info in the file dialog 2019-04-03 00:51:24 +02:00
Alexandr A. Telyatnikov
6d5a81013c [UNIATA] Fix for uninitialized Lun pointer
This fixes crash on Intel AHCI init. CORE-15886
2019-04-02 18:02:07 +02:00
Julien Schueller
23d0aead53 [KERNEL32] Fix typo in kernel32.spec (#1453) 2019-04-02 15:48:41 +02:00
Katayama Hirofumi MZ
635534005b [WIN32SS][FONT] Fix font coordinate conversion CORE-15907 (#1452)
[WIN32SS][FONT] Fix font bounding box mapping for viewport CORE-15907
2019-04-02 22:39:26 +09:00
Timo Kreuzer
c334c17d69 [UDFS] Fix 64 bit issues 2019-04-02 10:53:23 +02:00
Timo Kreuzer
be97da34ac [NETAPI32] Fix NetUserEnum to work on x64
The previous implementation used the resume_handle parameter to return a pointer to the active enumeration context, but resume_handle is a DWORD. To support 64 bit pointers, the enumeration context is inserted into a global linked list and given a unique 32 bit value as identifier for later lookup.
The way the function is implemented, leaking a data structure while the MSDN description does not indicate that, seems a little questionable in general, but that is something that I leave to the original author to investigate.
2019-04-02 01:45:51 +02:00
Timo Kreuzer
61e35141e8 [SETUPAPI] Use ClassInstallReserved field instead of Reserved to store a pointer.
The Reserved field is ULONG and we need ULONG_PTR. ClassInstallReserved was unused so far. I have no idea whether this is correct, but it cannot be more incorrect than what we had.
2019-04-01 22:20:39 +02:00
Hervé Poussineau
0c4d21a5a1 Revert "[DXG] Define GUIDs only once", to fix MSVC build
This reverts commit 3a78dd4b31.
2019-04-01 18:00:59 +02:00
Hervé Poussineau
ef3ded6b97 [CMAKE] Enable -fno-aggressive-loop-optimizations only for GCC 4.8(+)
Previously, it was also enabled for GCC > 4.7, ie for example for GCC 4.7.1
2019-04-01 17:32:07 +02:00
Hervé Poussineau
2f46ab2104 [RAPPS] Fix compilation
DPA_Search() function requires 6 parameters, not 4!
2019-04-01 11:38:32 +02:00
Hervé Poussineau
6cc607bac2 [SETUPAPI] SetupDiGetDeviceInfoListClass: fix buffer overflow (and return correct results) 2019-04-01 11:38:32 +02:00
Hervé Poussineau
faa938e9dc [USERENV] Initialize variable before using it 2019-04-01 11:38:32 +02:00
Hervé Poussineau
6a1c78b37b [GLU32] Prevent a warning when comparing 'this' against 0 2019-04-01 11:38:32 +02:00
Hervé Poussineau
3a78dd4b31 [DXG] Define GUIDs only once 2019-04-01 11:38:32 +02:00
Hervé Poussineau
12c70fb4cf [UDFS] Really use 'logical or' when meant to
'binary or' was also working, but it is less clear.
2019-04-01 11:38:32 +02:00
Hervé Poussineau
76910c358f [EXT2] Correctly zero memory before using it 2019-04-01 11:38:32 +02:00
Hervé Poussineau
c8719ee865 [CRT] Correctly share get_ioinfo()/release_ioinfo() functions between code units
This fixes the following compiler errors:

../sdk/lib/crt/stdio/stat64.c:7:13: error: inline function 'release_ioinfo' declared but never defined [-Werror]
 inline void release_ioinfo(ioinfo *info);
             ^~~~~~~~~~~~~~
../sdk/lib/crt/stdio/stat64.c:6:16: error: inline function 'get_ioinfo' declared but never defined [-Werror]
 inline ioinfo* get_ioinfo(int fd);
                ^~~~~~~~~~
../sdk/lib/crt/stdio/file.c:186:5: error: 'init_ioinfo_cs' is static but used in inline function 'get_ioinfo' which is not static [-Werror]
     init_ioinfo_cs(ret);
     ^~~~~~~~~~~~~~
../sdk/lib/crt/stdio/file.c:183:19: error: 'get_ioinfo_nolock' is static but used in inline function 'get_ioinfo' which is not static [-Werror]
     ioinfo *ret = get_ioinfo_nolock(fd);
2019-04-01 11:38:32 +02:00
Hervé Poussineau
c3e2a54789 [SDK] Fix compilation error
../sdk/include/reactos/rosctrls.h:283:59: error: no matching function for call to 'CToolbar<TItemData>::SendMessageW(int, HWND__*&, int)'
         return SendMessageW(TB_SETTOOLTIPS, hWndTooltip, 0);
../sdk/include/psdk/winuser.h:5543:21: note: candidate: LRESULT ATL::CWindow::SendMessageW(UINT, WPARAM, LPARAM) <near match>
../sdk/include/psdk/winuser.h:5543:21: note:   conversion of argument 2 would be ill-formed
2019-04-01 11:38:32 +02:00
Hervé Poussineau
a15160cd45 [FREELDR] Prevent a warning in Xbox memory initialization 2019-04-01 11:38:32 +02:00
Hervé Poussineau
95671c25ec [CMAKE] Add -fno-aggressive-loop-optimizations flag
ReactOS/Windows headers contain lots of structures whose last field is
fieldName[ANYSIZE] or fieldName[1].
Starting with GCC 4.8, gcc considers that accessing items [2], [3], ...
are undefined operation, and may optimize those accesses by removing them!

Add flag -fno-aggressive-loop-optimizations to prevent this unwanted behaviour.
2019-04-01 11:38:32 +02:00
Hervé Poussineau
6668178cff [PSDK] Remove throw specifiers, deprecated in C++11 2019-04-01 11:38:32 +02:00
Bartosz Brachaczek
d256ff6006 [NTOSKRNL] Do not try to access OldBackTracking[-1]
It can be triggered by the existing "F<", "FILE.TXT" case in the tests.

CORE-15902
2019-04-01 08:28:00 +02:00
Bartosz Brachaczek
695e00fbbd [NTOSKRNL] Unify buffer size calculation in FsRtlIs{Name,Dbcs}InExpression
It better captures the intent now in FsRtlIsNameInExpressionPrivate and
fixes a slight overallotion by 4 bytes in FsRtlIsDbcsInExpression.

While at it, use the ANSI_DOS_DOT macro in the Dbcs version.

CORE-15902
2019-04-01 08:27:59 +02:00
Hermès Bélusca-Maïto
6eadbfb7e7 [TRANSLATION][USERINIT] Update Bulgarian translation.
Fixed the "installation failed" displayed error string.
Based on a patch by contributor 'WindowxDeveloper'.
2019-03-31 23:18:29 +02:00
WindowxDeveloper
5577e8fbe8 [TRANSLATION][RUNONCE] Add Bulgarian translation. 2019-03-31 23:05:32 +02:00
WindowxDeveloper
e78aa82d0a [TRANSLATION][WINLOGON] Improve Bulgarian translation. 2019-03-31 22:58:14 +02:00
WindowxDeveloper
6bcf552011 [TRANSLATION][SERVICES] Add Bulgarian translation. 2019-03-31 22:54:33 +02:00
Joann Mõndresku
6c9f1a8c26 [THEMES] Add artwork for Lunar.
Added original artwork for the new Lunar theme.
2019-03-31 22:13:24 +02:00
Adam Słaboń
8946920109 [THEMES] Add new ReactOS theme - Lunar. By Adam Słaboń and Joann Mõndresku.
Reuse some Lautus assets, adjust the theme configuration and include it in the build process.
2019-03-31 22:13:15 +02:00
jimtabor
2f5c0ee0a9 [NtGdi] Fix assert with Winamp
Fixes CORE-10774.

Reference:
Alexandre Julliard : Ignore empty rectangles in ExtCreateRegion.
8ac61c5a1e
2019-03-31 13:31:59 -05:00
Bișoc George
bd5fb32b79 [COVERITY][SPOOLSS] Fix a resource leak
Unload the library pointed by hWinspool when the function fails.

CID 1401149
2019-03-31 20:09:42 +02:00
Baruch Rutman
d5b4570d23 [RAPPS] Add themes category
Add category string to the rest of rc files

Update README
2019-03-31 20:08:25 +02:00
Raul Tambre
3592ca6545 [CONFIGURE] Add VS 16.0 support. 2019-03-31 20:02:56 +02:00
Raul Tambre
989667f0c2 [CONFIGURE] Simplify Visual Studio generator selection.
CMake >3.2 supports specifying the architecture through the -A parameter,
allowing the logic to be simplified.
Specifying the architecture like this is also required since Visual Studio 2019.
2019-03-31 20:02:55 +02:00
Bartosz Brachaczek
e9b438bfaa [NTOSKRNL] Addendum to 21d2c70: properly start DOS_START loop
Fixes last failing test.

CORE-15902
2019-03-31 19:35:25 +02:00
Maxim Smirnov
d29e216f99 [NTOSKRNL] In MmCreateImageSection, properly check whether cache was initialized
This fixes a crash that occurs if nul is typed in cmd.exe
2019-03-31 13:51:06 +02:00
Bartosz Brachaczek
8bc9935fcb [NTOSKRNL] Properly copy backtracking buffer content on realloc
CORE-15902
2019-03-31 11:44:01 +02:00
Bartosz Brachaczek
21d2c70bb4 [NTOSKRNL] Properly compare position to name length in FsRtlIsNameInExpressionPrivate
CORE-15902
2019-03-31 11:44:00 +02:00
Bartosz Brachaczek
5d5e9c8486 [NTOSKRNL] Don't overflow backtrack stack buffer
CORE-15902
2019-03-31 11:44:00 +02:00
Bartosz Brachaczek
b1ae592e7f [NTOSKRNL] Don't oversize buffer for backtracking in FsRtlIsNameInExpressionPrivate
CORE-15902
2019-03-31 11:44:00 +02:00
Pierre Schweitzer
180d7169e6 [KMTESTS:FSRTL] Add more tests for FsRtlIsNameInExpression
CORE-15902
2019-03-31 11:44:00 +02:00
Thomas Faber
ca86ee9c03 [MBEDTLS] Update to version 2.7.10. CORE-15895 2019-03-30 14:57:40 +01:00
Thomas Faber
ba1fb9ace9 [ACPICA] Update to version 20190329. CORE-15900 2019-03-30 14:57:35 +01:00
Thomas Faber
d605b5063f [NTOS:IO] Send IRPs to the correct device in IoVolumeDeviceToDosName. CORE-15415 2019-03-30 10:13:27 +01:00
Pierre Schweitzer
3a5063948e [MEH] Forgot that file :-( 2019-03-29 21:51:41 +01:00
Pierre Schweitzer
ef8b1a1907 [NTOSKRNL] We don't need an event if we don't issue an IRP 2019-03-29 21:47:34 +01:00
Pierre Schweitzer
28ba29e457 [NTOSKRNL] Implement support for FileFsDriverPathInformation in NtQueryVolumeInformationFile 2019-03-29 21:42:42 +01:00
Pierre Schweitzer
092c37f845 [NTOSKRNL] Do. Not. L. E. A. K. 2019-03-29 19:51:38 +01:00
Maxim Smirnov
5570cde271 [NULL] Use correct device characteristics value for the null device 2019-03-28 22:46:04 +01:00
Pierre Schweitzer
d75ccd01f7 [NTOSKRNL] Only allow direct device open for FileFsDeviceInformation 2019-03-28 22:39:38 +01:00
Pierre Schweitzer
ce6488df31 [NTOSKRNL] Add a quick path for FileFsDeviceInformation in NtQueryVolumeInformationFile
This allows querying volume information without issuing an IRP to the owner device.
The kernel is supposed to already have all the required information to return
to the caller.

Side effect: this allows querying volume information for devices not implementing
IRP_MJ_QUERY_VOLUME_INFORMATION such as null.sys
This fixes opening null device in Python.

Fix based on debugging by Maxim Smirnov in PR #1442

CORE-14551
2019-03-28 22:39:38 +01:00
Bișoc George
f8e0b4675f [OSK] Initialize the common controls
On-Screen Keyboard has a manifest which is used for visual styles. However, the common controls aren't initialized and as a general rule the controls have to be loaded in the application's handle instance.
2019-03-28 19:02:48 +01:00
jimtabor
0197c4f875 [NtUser] Fix maximizing to window edge
Cover up the edge of the frame while maximizing the window to desktop.
Fixes CORE-15893.
2019-03-27 17:39:04 -05:00
Bișoc George
75a7cf89a7 [OSK] Fix an instance race condition
On-Screen Keyboard provides a mechanism to launch the application only once, to avoid multiple entry point instances. Such mechanism is based upon mutex objects, although it could happen that the program may end up creating two or more mutexes (a race condition).

CORE-15877
2019-03-27 22:34:03 +01:00
jimtabor
1f619b2781 [Win32SS] Fix maximized window positioning.
Fix CORE-5177 TaskMgr and ProcExp possionong when maximized.
2019-03-26 15:56:57 -05:00
Thomas Faber
1fe58c4058 [LIBXML2] Update to version 2.9.9. CORE-15854 2019-03-26 10:14:49 +01:00
Thomas Faber
743951eccf [LIBTIFF] Update to version 4.0.10. CORE-15854 2019-03-26 10:14:47 +01:00
Yaroslav Kibysh
cc7c6d21f8 [DEVMGR] Fix Ukrainian translation (#1441) 2019-03-25 23:15:00 +01:00
Thomas Faber
8c358a4a90 [NTOS:FSTUB] Unfix format string warning until GUID definition is fixed. 2019-03-25 22:40:41 +01:00
Thomas Faber
a976ebb031 [NTOS:IO] Avoid an unnecessary stack buffer in OpenRegistryHandlesFromSymbolicLink. CORE-15882 2019-03-25 08:43:47 +01:00
Thomas Faber
b0bb3d0041 [NTOS:FSTUB] Fix a clang format string warning. 2019-03-25 08:41:55 +01:00
Thomas Faber
57225adaac [NTOS:IO] Fix always-false condition in IoCheckEaBufferValidity.
Spotted by clang.
2019-03-25 08:41:51 +01:00
Thomas Faber
faaf2dc0e6 [NTOS:KDBG] Fix uninitialized variable usage.
Spotted by clang.
2019-03-25 08:41:44 +01:00
Eric Kohl
5a2911d7d8 [SYSDM] Add the 'Copy to' dialog and move the 'Change Profile Type' dialog a little. 2019-03-25 00:19:58 +01:00
Brock Mammen
fb4c9fbcf2 Fix regression with double click action
The double click action is now triggered by the WM_LBUTTONDBLCLK message
instead of WM_NCLBUTTONDBLCLK.
2019-03-24 23:34:57 +01:00
Brock Mammen
e7ad10241f [EXPLORER] Add date tooltip to taskbar clock
CORE-11444
2019-03-24 23:34:57 +01:00
Stanislav Motylkov
36230bb214 [USER32] Edit: Fix caret and scroll position
Based on patch by JIRA contributor 'I_Kill_Bugs'. CORE-15780
2019-03-24 23:26:20 +01:00
Stanislav Motylkov
cd7011388e [COMCTL32] Edit: Fix caret and scroll position
Based on patch by JIRA contributor 'I_Kill_Bugs'. CORE-15780
2019-03-24 23:26:20 +01:00
Hermès Bélusca-Maïto
048c8c1605 [USER32] Add support for navigating a group of radio buttons using a keyboard.
Import Wine commit:
b1b8fb77be

"user32: Add support for navigating a group of radio buttons using a keyboard.
The patch approximates the behaviour observed in the message tests
but still doesn't make the message tests pass without failures.
"
by Dmitry Timoshkov.
See bug report https://bugs.winehq.org/show_bug.cgi?id=16845
2019-03-24 17:23:33 +01:00
Hermès Bélusca-Maïto
780f2ba215 [USER32][COMCTL32] Move the auto radio button group logic from BM_SETCHECK to WM_LBUTTONUP handler.
CORE-8526

Import Wine commit:
96d0af52eb

"user32: Move the auto radio button group logic from BM_SETCHECK to WM_LBUTTONUP handler.
This patch also changes the logic to get the control style with WM_GETDLGCODE
instead of GetWindowLong to make the message test pass.
"
by Dmitry Timoshkov.
See bug report https://bugs.winehq.org/show_bug.cgi?id=42010

- (ReactOS-only) Fix also the corresponding logic in COMCTL32.
2019-03-24 17:23:24 +01:00
Yaroslav Kibysh
a30e644dc4 [EXPLORER][SHPOLICY] Implement "NoSimpleStartMenu" policy (#1258)
- Enable "New Start Menu" control for all languages.
- Implement the "NoSimpleStartMenu" policy in shpolicy.c and its usage in explorer.
- Hide controls instead of disabling (as in Win XP/Vista).
2019-03-24 14:56:43 +01:00
Thomas Faber
b546130731 [UNIATA] Update to version 0.47. CORE-15870 2019-03-24 14:48:32 +01:00
Eric Kohl
89aaf0efca [IDL] Fix the declaration of function 7 (NetrBrowserStatisticsClear) 2019-03-24 13:02:10 +01:00
Thomas Faber
526fc76cac [SERIAL] Do not return NTSTATUS from an interrupt routine. 2019-03-24 09:25:17 +01:00
Eric Kohl
9a4676f19f [SYSDM] Get a profiles 'State' value and use it to display the profile type. 2019-03-24 06:50:24 +01:00
Baruch Rutman
7143e411c4 [GDI32] Integrate LpkGetTextExtentExPoint(). (#1362)
- Assume that GetTextExtentExPointWPri() uses the same kind of
  arguments as GetTextExtentExPointW().

- Add GetTextExtentExPointWPri() declaration to undocgdi.h.
2019-03-23 23:34:09 +01:00
Baruch Rutman
1078479358 [LPK] Implement LpkGetTextExtentExPoint(). (#1362)
- Add argument checking.
- Use logic from NtGdiGetTextExtentExW().
2019-03-23 23:31:02 +01:00
Yaroslav Kibysh
505d27cbef [SYSDM] Update Russian and Ukrainian translations (#1437) 2019-03-23 22:18:42 +01:00
Eric Kohl
d4b638d7c8 [SYSDM] Simplify AddUserProfile() by using fixed size buffers for account and domain names and handle unknown and deleted accounts properly. Also fix fonts for asian languages. 2019-03-23 20:58:03 +01:00
Stanislav Motylkov
cc99d3ad5f [SHELL32] Add line bar to About dialog for consistence
Addendum to f9d2931. CORE-15215
2019-03-23 19:11:28 +01:00
Eric Kohl
ea2ca8fa91 [SYSDM] Add the 'Change Profile Type' dialog. 2019-03-23 18:49:40 +01:00
Yaroslav Kibysh
3999e875be [SHPOLICY] Fix the missing backslash in SHRestricted. CORE-15666 (#1267)
Import Wine commit https://source.winehq.org/git/wine.git/?a=commit;h=dbbfa481539acd29de47ff6cd5cc2d24a2e01871

Original patch from Yaroslav Kibysh, reported to Wine and committed there by Fabian Maurer.
Thank you all!
2019-03-23 18:28:39 +01:00
Carlo-Bramini
3747699735 [WINVER] Fix WINVER theming. CORE-13343 (#1428)
Use and initialize common controls for theming support,
and include a manifest as well.
2019-03-23 17:45:27 +01:00
Bișoc George
65239bcf4b [OSK] Restore the previous window coordination
Implement the coordination dialog data saver. This allows OSK to launch using the previous placement values. Such behaviour can be seen with the XP's part of On-Screen Keyboard.
2019-03-23 16:34:48 +01:00
Hermès Bélusca-Maïto
b9148b8c62 [WTSAPI32][PSDK] Addendum to 27ed609a: Some of the WTS_INFO_CLASS values are NT6-SP1+ 2019-03-23 16:31:15 +01:00
Andrew Boyarshin
27ed609acd [WTSAPI32] Implement WTSConnectState and WTSClientProtocolType in WTSQuerySessionInformation
Since ReactOS doesn't actually support non-local WinSTA/WTS capabilities, this seems to be a good way to reduce spam in the log while providing correct behaviour.
Also call Unicode version from ANSI one to reduce code duplication.
2019-03-23 16:06:10 +01:00
Stanislav Motylkov
40dab7d5e5 [USER32] Edit: Fix rectangle overflow when inserting characters
Based on patch by JIRA contributor 'I_Kill_Bugs'. CORE-11475
2019-03-23 15:52:43 +01:00
Stanislav Motylkov
56ccf8d832 [COMCTL32] Edit: Fix rectangle overflow when inserting characters
Based on patch by JIRA contributor 'I_Kill_Bugs'. CORE-11475
2019-03-23 15:52:43 +01:00
Yaroslav Kibysh
8fb10879fc [ACPPAGE][SYSDM] Update Ukrainian translation (#1435) 2019-03-23 15:20:34 +01:00
Daniele Campione
fc3b8d598a [SNDVOL32] Small Italian translation update (#1431) 2019-03-23 01:07:37 +01:00
Eric Kohl
6c6e7b82fc [SYSDM] Implement the 'delete profile' button, except for deleting the profile. 2019-03-21 21:58:02 +01:00
Eric Kohl
b80400ed10 [SYSDM] Update the buttons on the user profile dialog after adding the profiles to the listview. 2019-03-21 21:58:01 +01:00
Stanislav Motylkov
ffc4e30ce5 [SYSDM] Update Russian translation
Addendum to 71f84a3.
2019-03-20 23:49:03 +01:00
Stanislav Motylkov
400a42458c [ACPPAGE] Update Russian translation
Addendum to ab3451a.
2019-03-20 23:49:03 +01:00
Eric Kohl
71f84a3b13 [SYSDM] Add some strings that will be used in the user profile dialog. 2019-03-19 23:19:41 +01:00
Stanislav Motylkov
8e05f5509c [MSI] Allow to pass product key validation check
CORE-14710 CORE-15864
2019-03-19 23:05:57 +01:00
Luo Yufan
4785291ff3 [SAMSRV] Update Chinese translation 2019-03-19 23:05:34 +01:00
Thomas Faber
49fbaa758e [RICHED20] Simplify MSVC thiscall & stdcall wrappers.
Imports Wine commit b64511c00a5.
2019-03-19 21:19:20 +01:00
jimtabor
343d6ea6dc Merge branch 'master' of https://github.com/reactos/reactos 2019-03-18 17:30:01 -05:00
jimtabor
68df5a50e6 [NtUser] Support SWP_FRAMECHANGED
Implement SWP_FRAMECHANGED support for non-changing window to force a
redraw.

Patch dedicated to Katayama Hirofumi MZ.
2019-03-18 17:28:33 -05:00
Eric Kohl
be54b37dd6 [USERENV] UnloadUserProfile: When a profiles ref count gets 0, delete the profile if the user is a member of the guests group. 2019-03-18 23:27:29 +01:00
Mark Jansen
ab3451aea1 [ACPPAGE] Revamp the 'edit' page to easier select different layers 2019-03-18 21:24:44 +01:00
Carlo-Bramini
df424955e0 [CALC] Update to version 1.12 -- Update whatsnew.txt 2019-03-18 01:34:07 +01:00
Carlo-Bramini
e5c8047e3d [CALC] Added "Minute of arc" and "Second of arc" to the "Angles" units. CORE-5939 2019-03-18 01:34:06 +01:00
Carlo-Bramini
dcea9e73c6 [CALC] Add new, and fix existing units conversions. CORE-5939
- Add support for new conversion units:
  * AREA: 'mu', 'rai'.
  * LENGTH: 'chi', 'cun'. 'sun' optimized.
  * TIME: 'nanoseconds'.
  * WEIGHT: 'Kan', 'Kin'.

- Add support for thailand measure system; invaluable help from
  this page: http://www.eppo.go.th/ref/UNIT-ALL.html

- Add ZHANG (Chinese), and DANBO, JEONGBO (Korean) units.

See details here:
https://en.wikipedia.org/wiki/Chinese_units_of_measurement
https://en.wikipedia.org/wiki/Korean_units_of_measurement

- Rewritten some units formula by using scientific notation.
- Improved precision of parsec unit coversion formula.
2019-03-18 01:34:06 +01:00
Carlo-Bramini
18b4718d54 [CALC] Fix wrong button size in french. CORE-12359 2019-03-18 01:34:05 +01:00
Carlo-Bramini
248acaba9a [CALC] Fix buttons transitions. Improve UI code readability. CORE-8526
- Improve code readability by using suitable UI function names.
2019-03-18 01:34:05 +01:00
Carlo-Bramini
adbafe6438 [CALC] Improvements and fixes for the numeric text output. CORE-8486
- Fixed bug 12.37 13/06/2009 into multiprecision display (unicode only).
- Fixed bug when calculator was closed with statistics dialog open.
- Fixed bug in XrY operator.
- Fixed error into conversion unit.
- Do not append decimal separator if "ERROR" messages are printed.
- Remove call to _tcslen() and use return value of GetDlgItemText() where possible.
2019-03-18 01:34:04 +01:00
Carlo-Bramini
8db51e6058 [CALC] Resource files formatting only. 2019-03-18 01:34:04 +01:00
Carlo-Bramini
857a951f48 [CALC] Improve the handling of configuration settings. CORE-3085, CORE-8486
Configuration is read from WIN.INI under W32S/Win9x/Me and from the registry
for all NT platforms.

Although with INI file mapping the keys are still saved in the registry
even on NT, I added handling of different platforms for writing directly
the configuration in the right place.
2019-03-18 01:34:03 +01:00
Carlo-Bramini
0b107f2e30 [CALC] Add theming support, requires Windows XP or later. CORE-13343
- Fix errors if a theme api is missing.
- Add callback to functions for drawing themed transparent background.
- Fix drawing glitch when theming is applied.
- Redraw on theme change: automatically redraw the window if the
  theme is changed while the application is active.
- Colours are now declared though RGB() macro.
- Removed safe DS_SHELLFONT declaration.
2019-03-18 01:34:02 +01:00
Carlo-Bramini
f6c565bc22 [CALC] Add support for HTML-Help. CORE-15019 2019-03-18 01:34:01 +01:00
Carlo-Bramini
ec1b499aac [CALC] Improve headers inclusion. 2019-03-18 01:34:01 +01:00
Carlo-Bramini
295eaf4e32 [CALC] Improve multi-precision support, and powers/roots. CORE-8486
- Added support for average of squares and mean of squares into statistical functions.
- pop() and push() functions in RPN engines now work with nodes instead of stack units.
- Moved the POW and SQR operations near the operators.
CORE-12766

- Fix number of digits for IEEE-754 constants.
- Show all available digits in exp notation.
CORE-14871

- Update help correspondingly.
2019-03-18 01:34:00 +01:00
Carlo-Bramini
28f493624a [CALC] Rename files only. 2019-03-18 01:33:51 +01:00
Eric Kohl
c8d44606d6 [USERENV] Implement GetProfileType(). 2019-03-17 17:51:32 +01:00
Eric Kohl
0f21a8a6e6 [USERENV] LoadUserProfileW: Check the user for Administators and Guests group membership and set the State value accordingly.
See https://www.pcreview.co.uk/threads/purpose-of-the-state-key-located-in-users-profiles.2939114/post-9722112
2019-03-17 12:44:54 +01:00
Eric Kohl
646ab9286c [NETAPI32] NetUserEnum, NetUserGetInfo: Get the user privileges and auth flags for info levels 1, 2, 3, 4 and 11. 2019-03-17 12:34:49 +01:00
Eric Kohl
cf6a5d6e7c [USERENV] Store the profiles load time, flags and state in the profile list. 2019-03-16 19:13:15 +01:00
Jared Smudde
6707efc534 [SHELL32] Disable the Hardware tab in the properties dialog for Network drives (#1249)
This matches Windows behaviour.
2019-03-16 15:37:56 +01:00
Stanislav Motylkov
c669003418 [MEDIA][INF] Improve network adapter names 2019-03-16 15:35:15 +01:00
Daniele Campione
ee65350fcf [SNDVOL32] Small Italian translation update (#1415) 2019-03-16 15:33:57 +01:00
Serge Gautherie
1631f37404 Merge pull request #1253 from SergeGautherie/SergeGautherie/PRonly_Log2Lines_handle_escape_cmd_Path-LineOut
[LOG2LINES] handle_escape_cmd(): Remove 2 unused parameters
2019-03-16 11:23:27 +01:00
Serge Gautherie
29c9e92c9e [LOG2LINES] Add a TODO, Use a snprintf()
Addendum to c5d8d8d.
2019-03-16 11:22:58 +01:00
Stanislav Motylkov
62595d39a6 [SYSDM] Update SMBIOS parsing code 2019-03-16 11:16:55 +01:00
Eric Kohl
7d28dfd184 [USERENV] Use a reference counter when loading and unloading profiles. Unload the hive only when the reference counter reaches 0. This fixes the remaining bugs in "userenv_apitest LoadUserProfile". 2019-03-16 07:45:30 +01:00
Joachim Henze
e3e173ffaa [COMCTL32] Combobox Implement logic for set and get dropdown height CORE-15833
by import of Wine commit
313c63e194
merged from current Wine head.

Thanks to patches author Fabian Maurer
and also Doug Lyons for tests and adding initial the merge-patch.
2019-03-16 02:11:00 +01:00
Eric Kohl
05886b83e9 [USERENV] Use a mutex to serialize profile loading and unloading. 2019-03-15 21:20:14 +01:00
Katayama Hirofumi MZ
332ca5f572 [OLE32] Implement WS_EX_ACCEPTFILES (#1403)
The window that has WS_EX_ACCEPTFILES extended style, should pretend like a drop target that accepts CF_HDROP data. CORE-11238
2019-03-15 22:31:13 +09:00
Benjamin Aerni
8d75f93cbc Updated release version on readme 2019-03-15 00:05:21 +01:00
Alexander Rechitskiy
fc1c5fa245 [README] Improve the layout of the Quick-Links; add the chat link (#1409) 2019-03-15 00:04:57 +01:00
Eric Kohl
30c501fc9f [USERENV] LoadUserProfileW: If a user profile has already been loaded, just open and return the profile key. 2019-03-14 23:49:16 +01:00
Mark Jansen
ee62837ec0 [SHIMENG] Implement experimental support for multiple hooks on the same function 2019-03-14 20:02:01 +01:00
Mark Jansen
6abe0e50aa [SDK][SHIMENG] Ensure that module entrypoints are not called while loading the shim engine
This is done by marking everything that is already loaded but not 'processed'.
After the shim engine is done initializing, the original state is restored,
with the exception of the shim engine itself.
CORE-15846
2019-03-14 20:02:01 +01:00
Mark Jansen
a1f6a6bdc3 [LDR] Do not call module entrypoints while loading the shim engine.
Manually call the shim engine entrypoint
CORE-15846
2019-03-14 20:02:01 +01:00
Mark Jansen
cfdb7d564c [SHIMENG] Don't crash on a shim not found
CORE-15846
2019-03-14 20:02:01 +01:00
Mark Jansen
0ebeced143 [SHIMENG] Find shims case-insensitive
CORE-15845
2019-03-14 20:02:00 +01:00
Mark Jansen
cdc8b721da [ACLAYERS] Add stubplemented IgnoreLoadLibrary shim
CORE-15845
2019-03-14 20:02:00 +01:00
Mark Jansen
996f559fd7 [APPSHIM_APITEST] Add test for IgnoreLoadLibrary
CORE-15845
2019-03-14 20:02:00 +01:00
Mark Jansen
0fdfdcb1ea [ACLAYERS] Simplify ForceDXSetupSuccess as suggested by Thomas 2019-03-14 20:01:47 +01:00
James Tabor
b4624f32f3 [GDI32] Fix issue after a Flush
While flushing the DC handle goes down with the flush. This was not a
regression, just untested old code.
2019-03-14 12:00:53 -05:00
Thomas Faber
b91cf860cd [UNIATA] Update to version 46e8. CORE-15843 2019-03-14 13:16:43 +01:00
Thomas Faber
48870fe35e [UNIATA] Remove an unnecessary ROS-diff. 2019-03-14 13:16:41 +01:00
Hermès Bélusca-Maïto
0e56ec8892 [WIN32SS:NTGDI] Fix missing text in labels and buttons for .NET apps. CORE-15000
There was a missing break statement in ftGdiGetGlyphOutline().
Found by JIRA contributor 'I_Kill_Bugs' :-)

Add also brackets around 'case's to make code navigation easier.
2019-03-14 01:36:45 +01:00
jimtabor
bc534efbc5 [User32] Support WM_COPYGLOBALDATA
Implement support for WM_COPYGLOBALDATA. Needs more tests.

Tested DropTest from CORE-15836.
2019-03-13 12:16:52 -05:00
Thomas Faber
77e0409ea9 [DOC] Update 3rd party readme file. CORE-15280 2019-03-13 09:52:51 +01:00
Thomas Faber
19f9a973e5 [MAINTAINERS] Add 3rd party library files that I've been syncing.
CORE-15280 CORE-14291 CORE-13739 CORE-13451 ...
2019-03-13 09:52:47 +01:00
Joachim Henze
76118320ea Revert "[FREETYPE] Fix 3 regressions in one patch"
This reverts commit 0.4.12-dev-856-g
98b7ecd280
CORE-15785, CORE-15558, CORE-15755.

As requested by Pierre, we have very strong indication, that it broke
https://build.reactos.org/builders/Test%20KVM and
https://build.reactos.org/builders/Test%20VBox
2019-03-12 18:57:21 +01:00
Hermès Bélusca-Maïto
47a1acedf7 [SETUPLIB][USETUP] Improve disk HW numbering, removable disk support, and "super-floppy" partitioning.
Nowadays more and more people try to install ReactOS from removable
drives (e.g. USB sticks) onto fixed HDDs, or try to install it into
USB sticks too.

Both fixed and removable drives, as well as partitions on these, are
represented in NT using the same device name format:

  \Device\HarddiskM\PartitionN ,

with an increasing disk number M. Using this number for building the
corresponding firmware-specific ARC multi(x)disk(y)rdisk(z) path used
by the NT/ROS loader (FreeLdr, ...) is then prone to error since there
may have  been  removable drives  inserted  and  accounted for in the
calculation  of  the disk number.  These drives must be  correctly
subtracted in order to generate the correct ARC path, valid once all
the removable drives have been ejected (which should also be the
situation seen from the BIOS when booting up, except of course if you
boot on a USB stick).

This problem is now solved. Note that it matters only for the disks
that have also been enumerated by the firmware (BIOS; Int 13h). We
don't have to care about the other drives, since the ARC path will be
of a different format and will not use the disk number (instead, the
SCSI coordinates are used).

We also try to enumerate all the disks found in all the possible disk
adapters and  controllers enumerated  in the Hardware registry tree
(and that are visible by FreeLdr) in order to cover all.

Finally, we detect whether a disk reports as  a "super-floppy",  i.e.
an unpartitioned disk with a valid VBR. This is indeed how a standard
floppy disk looks like, or how USB sticks are partitioned on Windows.
Such disk is reported has having only one single partition starting at
the beginning of the disk, with partition number == 0, its type being
FAT16 non-bootable.
This allows us to forbid creating any new partitions on such disks.
Note that accessing either \Device\HarddiskN\Partition0 or Partition1
on such a disk returns the same data.
Note also that on the contrary, regular MBR-partitioned disks would
report at least four partitions entries, instead of just one.

The other improvements are:

- Do *NOT* write any MBR on a disk partitioned as "super-floppy".
  CORE-13703

- Fix the computed disk identifier, of format: %08x-%08x-%c .
  The numbers are respectively the checksum of the first sector, and
  the disk signature. The terminating letter is A or X, depending
  whether the first sector ends with 0x55AA/0xAA55 or not (see also
  commit 5053f1f5).

- Warn if the user attempts to install ReactOS on a disk that is not
  visible by the  firmware of his computer,  because it may not be
  bootable.
2019-03-12 02:17:11 +01:00
Eric Kohl
85c5d035d9 [NETAPI32] NetUserAdd, NetUserSetInfo: Start to set parm_err in case of invalid parameters. 2019-03-12 01:02:47 +01:00
Eric Kohl
33eb43d6e7 [NETAPI32] NetUserSetInfo: Support the logon hours for level 2, 3, 4, 22 and 1020. Also make sure that we do not leak memory on invalid levels. 2019-03-12 00:20:07 +01:00
Eric Kohl
0425d866bf [NETAPI32] NetUserGetInfo: Build and return the users SID for level 4 and 23. 2019-03-11 22:31:36 +01:00
Joachim Henze
98b7ecd280 [FREETYPE] Fix 3 regressions in one patch
Fixes regression CORE-15785 (Zim Desktop Wiki 0.67 crashed) and
Fixes regression CORE-15755 (NLite 1.4.9.3 used wrong font)

without reintroducing regression CORE-15558 (AbiWord 2.6.8 font enumeration)

This is achieved by partial revert of
0.4.12-dev-320-g
6e4e5a004c
and got ack of Katayama Hirofumi MZ.

Thanks to patches author Doug Lyons.
Test-results: https://reactos.org/testman/compare.php?ids=66264,66267
2019-03-11 20:10:14 +01:00
Arnav Bhatt
c527f72f23 [TRANSLATION] Hindi translation of the shell extensions. (#1405) 2019-03-11 16:52:21 +01:00
Luo Yufan
a0506042a6 Merge pull request #1412 from njlyf2011/improve-zh-translation
[TRANSLATION] Update Traditional Chinese translation
2019-03-11 16:50:17 +01:00
Oleg Dubinskiy
b7850f1078 [EXPLORER] Show the Desktop Russian translation update 2019-03-11 16:49:24 +01:00
Thomas Faber
fc9d5d2f55 [USBUHCI_NEW] Fix an infinite loop. 2019-03-11 08:54:03 +01:00
Thomas Faber
026a12fe39 [USBPORT] Implement interface setting in USBPORT_OpenInterface. 2019-03-11 08:54:01 +01:00
Thomas Faber
ac20ab031c [USBPORT] Correctly handle alternate settings returned from USBPORT_ParseConfigurationDescriptor.
The last parameter of USBPORT_ParseConfigurationDescriptor is a pointer
to a boolean indicating whether any alternate interface settings were
found for the specified interface.
Interpreting it as an alternate setting value, as we did before,
would always override the alternate setting to '1' (if any alternate
descriptors were present), therefore selecting the wrong interface
setting, and possibly causing a buffer overflow on the InterfaceList's
Pipes array.

Found by Special Pool.
2019-03-11 08:53:55 +01:00
Thomas Faber
36c1cb0910 [USBPORT] Correctly find interface descriptor in USBPORT_ParseConfigurationDescriptor
There can be other descriptors between the config descriptor and the
first interface descriptor, so we specifically need to check for
the interface descriptor type and skip anything before that.
We also need to guard against bLength == 0, which would cause an
infinite loop, instead of doing a second bDescriptorType check.
2019-03-11 08:53:53 +01:00
Thomas Faber
1946f6bb25 [USBPORT] Acquire EndpointSpinLock in addition to MiniportSpinLock in USBPORT_ReopenPipe. 2019-03-11 08:53:52 +01:00
Thomas Faber
e47240fb37 [USBPORT] Release StateChangeSpinLock before acquiring MiniportSpinLock.
Found by Driver Verifier.
2019-03-11 08:53:50 +01:00
Thomas Faber
267f5633ee [USBPORT] Leave IRP status untouched for unhandled interfaces.
Found by Driver Verifier.
2019-03-11 08:53:49 +01:00
Thomas Faber
12a66769fc [USBPORT] Don't change the status of IRP_MJ_SYSTEM_CONTROL requests.
Found by Driver Verifier.
2019-03-11 08:53:47 +01:00
Thomas Faber
e10e6a85fb [USBHUB_NEW] Don't leak IRP_MJ_SYSTEM_CONTROL requests.
Found by Driver Verifier.
2019-03-11 08:53:45 +01:00
Thomas Faber
938f0e469d [NTOS:IO] Enable privilege check in NtLoadDriver. 2019-03-11 08:30:14 +01:00
Hermès Bélusca-Maïto
1d51b56882 [USETUP] Use for-loops; simplify the code. 2019-03-11 00:05:37 +01:00
Hermès Bélusca-Maïto
84f3e2df5d [SETUPLIB][USETUP] Remove CurrentDisk/Partition from the partlist lib code, and move these into the UI code.
- Add also some validation ASSERTs and simplify the code here and there.

- The installation partition is called "InstallPartition", while the
  global "CurrentPartition" is the disk region currently selected in
  the partition UI list, on which prtitioning operations are effectued.

- Extend CheckActiveSystemPartition() to use an optional alternative
  disk or partition in case the actual system partition (present in the
  first disk) cannot be used, e.g. because we don't support writes on it.
2019-03-11 00:05:37 +01:00
Hermès Bélusca-Maïto
0d9ebb67ce [SETUPLIB] Improve the discovery of the active system partition.
CORE-7749, CORE-6305, CORE-13205
2019-03-11 00:05:36 +01:00
Eric Kohl
08d3040377 [NET] Display the country along with the users country code. 2019-03-10 22:01:40 +01:00
Shy Zedaka
5b94d222ac [TRANSLATION] Update Hebrew translations (#1408) 2019-03-10 19:21:57 +01:00
Hermès Bélusca-Maïto
a543103068 [USETUP] Improve the formatter & check-disk state machine. CORE-7749
- Find or set the active system partition only once, when we start the
  formatting stage. If the system partition is to be created in some
  non-partitioned space, we create it.

- A file-system check is always scheduled for both the system and the
  installation partitions.

- If the system partition was already formatted (which usually means
  that it already existed on the system), don't ask for formatting it.

  CORE-13205

- For each partition to be formatted, the file-system menu list is
  re-created, in order to display only the FSes that are compatible
  with the selected partition, and allow to give the user the choice
  to keep the existing file-system only if the selected partition was
  already formatted.

- Check whether the user attempts to delete the partition on which
  the installation source is present, only if it is not "new" and is
  formatted.

- Check first whether the current partition is the system partition,
  before displaying the CONFIRM_DELETE_SYSTEM_PARTITION_PAGE.
2019-03-10 15:41:25 +01:00
Hermès Bélusca-Maïto
29cc1843d0 [SETUPLIB][USETUP] Minor improvements.
- Make some partitioning functions not dependent on the selected "CurrentPartition".
- Add some sanity checks.
- Improve some of the "is-partitioned" checks.
2019-03-10 15:41:20 +01:00
Hermès Bélusca-Maïto
c1fbc2d651 [SETUPLIB][USETUP] Factor out the usage of FS provider structures.
Similarly to FMIFS this structure should be private. Instead file-system
names are passed to the helper functions, allowing to use the names
returned by the FS drivers. The names are then internally mapped to the
corresponding FS providers.

In particular this allows to handle the "RAW" file-system and to assign
the 'Unformatted' flag to partitions having this FS.

Finally this helps us refining the checks performed to see whether the
current "active" system partition uses a supported file-system.
2019-03-10 15:41:05 +01:00
Mark Jansen
b18da6730e [ACLAYERS] Implement the ForceDXSetupSuccess shim
This shim is used on older installers that try to install DirectX,
but encounter errors doing so with the bundled setup.
CORE-15814
2019-03-10 12:45:35 +01:00
Mark Jansen
854af7f332 [APPSHIM_APITEST] Add tests for ForceDXSetupSuccess 2019-03-10 12:45:34 +01:00
Mark Jansen
76af1fb019 [ACLAYERS][ACGENRAL] Do not use the crt entrypoint. 2019-03-10 12:45:22 +01:00
Pierre Schweitzer
4e07b3b9f9 [AFD] Don't reallocate buffers if windows sizes didn't change 2019-03-10 12:27:30 +01:00
Timo Kreuzer
ba893e1172 [WIN32K] Keep a reference on an ETHREAD while THREADINFO exists 2019-03-10 11:14:40 +01:00
Eric Kohl
e5904abf94 [NET] Move the remaining IDS_GENERIC_PAGE strings into the command messages and fix a size restriction of ConPrintf(). 2019-03-10 09:55:15 +01:00
Eric Kohl
e2b8141eb6 [NET] Add help message for the NET USER command and move the IDS_GENERIC_PAGE string into the help messages. 2019-03-10 08:59:32 +01:00
Eric Kohl
eaee5e840b [NET] Implement the NET SYNTAX pseudo command. 2019-03-10 01:04:26 +01:00
Eric Kohl
4d8859cfd8 [NET] Fix some 'net help' and 'net user' issues. 2019-03-10 00:30:27 +01:00
Eric Kohl
462418fe38 [NETAPI32] Initialize parm_err 2019-03-09 20:26:00 +01:00
James Tabor
d57f7becc3 [Win32SS] Add TextOut to GDI Batch
Add fix ups to PolyPatBlt and freetype.
TextOut supports 580 characters w/o Dx and Dx at a max of 193 characters
with Dx*1, both if offset is 0.

Noticed a lot of over drawing with start menu from ComCtl32 SB_SETTEXT
going through User32 DrawText/Worker ExtTextOutW. Explain why it might
be slowing down.

If issues arise, commenting out lines in win32ss/include/gdi32p.h can
help.

Example:
else if (Cmd == GdiBCTextOut) cjSize = 0;//sizeof(GDIBSTEXTOUT); <----
this one most of all.
 else if (Cmd == GdiBCExtTextOut) cjSize = 0;//sizeof(GDIBSEXTTEXTOUT);

Test results:
https://reactos.org/testman/compare.php?ids=66260,66262
2019-03-08 22:21:41 -06:00
Stanislav Motylkov
6676b7c48b [BOOTDATA] Fix Volgograd time zone (UTC+04:00)
CORE-15831
2019-03-08 22:44:27 +01:00
Daniele Campione
e5873161f8 [SHUTDOWN] Small Italian translation update (#1397) 2019-03-08 15:49:56 +01:00
Arnav Bhatt
c17bcb65b9 [TRANSLATION] Hindi translation of SYSSETUP AND SAMSRV. (#1400) 2019-03-08 15:48:20 +01:00
Arnav Bhatt
3a85677531 Hindi translation of comdlg32. (#1391)
Hindi translation of comdlg32.
2019-03-07 10:05:08 +01:00
Foxlet
181a2b3359 [WALLPAPER] Add ReactOS Soft Blue (#1376)
CORE-15783
2019-03-06 23:14:08 +01:00
polar
2b954cee27 [WALLPAPERS] Added Silhouette collection (#1383)
CORE-13000
2019-03-06 23:12:18 +01:00
Mark Jansen
08deb1d9de [ZIPFLDR] Allow the shell extension to extract passworded zip files 2019-03-06 23:09:35 +01:00
Mark Jansen
a672665911 [ZLIB] Restore 'uncrypt' functionality in minizip 2019-03-06 23:09:35 +01:00
Mark Jansen
410320df06 [ZIPFLDR] Move CConfirmReplace to a new file 2019-03-06 23:09:35 +01:00
Mark Jansen
bff6dda91d [DRWTSN32] Print some extra exception info 2019-03-06 23:04:11 +01:00
Timo Kreuzer
8a4c5763da [NTOS:PS] Use NULL instead of 0 in ps/kill.c 2019-03-06 00:49:59 +01:00
Timo Kreuzer
33c6f6f4b5 [PSDK] Use CALLBACK instead of APIENTRY 2019-03-06 00:42:43 +01:00
Timo Kreuzer
22bacc6e08 [PSDK] Add missing D3DFORMAT enum members to d3d9types.h 2019-03-06 00:41:52 +01:00
Timo Kreuzer
c25857f291 [SPEC] Add missing newlines 2019-03-06 00:40:29 +01:00
Timo Kreuzer
addc01d90b [NTOS:KE] Add function comments 2019-03-06 00:39:25 +01:00
James Tabor
f35bb6e4c8 [NtGDI] Fix crash and simplify code.
Revert previous changes. simplify rendering check.
Fix missed unlocking which caused a crash.
2019-03-05 17:05:23 -06:00
James Tabor
12cfd71058 Merge branch 'master' of https://github.com/reactos/reactos 2019-03-05 16:03:31 -06:00
James Tabor
3377fe184e [NtGDI] Change TextOut
Separate TextOut for internal use.
Use flTextAlign internally.
Not sure why GetDeviceCap was used for determining rendering. SVN commit
logs are unavailable. Include code from wine that might make more sense.
2019-03-05 16:03:15 -06:00
Hermès Bélusca-Maïto
dbb69cb2d9 [BOOTDATA] Comment out (but still keep it for documentation purposes only) the overridden default user shell, since we use by default the one specified in HKLM Winlogon key.
If people want to override it for a given user, or at a global level, they can do it later.

See CORE-15807
2019-03-05 22:33:35 +01:00
Timo Kreuzer
f5f6ea2965 [REACTOS] Fix 64 bit issues 2019-03-04 21:58:42 +01:00
Timo Kreuzer
3d3377a5c0 [LIBTIRPC] Silence MSVC warnings 2019-03-04 21:58:42 +01:00
Timo Kreuzer
7dabd235ec [GDI32] Add casts to silence warnings on x64
The cast is required, because FARPROC is only compatible with function pointer types that return INT_PTR and the ones used return int/BOOL.
2019-03-04 21:58:42 +01:00
Timo Kreuzer
711dbd19f7 [GDI32] Fix bDDCreateSurface 2019-03-04 21:58:42 +01:00
Timo Kreuzer
2620930066 [DXG] Fix 64 bit build 2019-03-04 21:58:42 +01:00
Timo Kreuzer
72e43c4b33 [VGA_NEW] Fix 64 bit issues 2019-03-04 21:58:42 +01:00
Timo Kreuzer
403fec1b27 [SACDRV] Fix CHECK_PARAMETER_WITH_STATUS error handling macro 2019-03-04 21:58:42 +01:00
Timo Kreuzer
05f4951b8c [CDROM_NEW] Fix SLIST_ENTRY vs SINGLE_LIST_ENTRY issues 2019-03-04 21:58:42 +01:00
Timo Kreuzer
dfd876a96b [CLASSPNP] Fix SLIST_ENTRY vs SINGLE_LIST_ENTRY issues 2019-03-04 21:58:42 +01:00
Timo Kreuzer
42730f9373 [NTOS:EX] Fix 64 bit issues in ExfWaitForRundownProtectionReleaseCacheAware 2019-03-04 21:58:42 +01:00
Timo Kreuzer
252114a3a1 [PSDK] Improve definition of CBR_BLOCK
The cast doesn't exist in native headers, but this causes warnings.
2019-03-04 21:58:42 +01:00
Timo Kreuzer
6756e1adaf [PSDK] Fix PRINTDLG structure definition 2019-03-04 21:58:42 +01:00
Timo Kreuzer
6ddf034ab4 [MKISOFS] Silence MSVC warnings 2019-03-04 21:58:42 +01:00
Timo Kreuzer
73c776c744 [WIDL] Fix non-x86 builds 2019-03-04 21:58:42 +01:00
James Tabor
cf7bea11b2 [NtGDI] Use flag for text align mode.
Use the lTextAlign instead of the user one for internal use.
2019-03-04 12:17:00 -06:00
Eric Kohl
ac73ba7db6 [MSV1_0] Check logon hours and workstation names on logon. Also return the machine name on logon and fix the LOGONSERVER environment variable. 2019-03-04 17:26:27 +01:00
Ged Murphy
0649f25b48 [SHELL32] Implement SHTestTokenMembership and forward IsUserAnAdmin to it
Moved to the bottom of the file with the other ros functions to help keep wine syncs easier.
2019-03-04 11:54:43 +00:00
Eric Kohl
6748d72c9f [MSV1_0] Export LsaApLogonUserEx2 instead of LsaApLogonUser and remove the outdated logon functions. 2019-03-04 10:20:10 +01:00
Eric Kohl
ef4ee94feb [LSASRV] LsapLogonUser: Support LsaTokenInformationNull logins. 2019-03-04 01:37:15 +01:00
Eric Kohl
96466710f8 [MSV1_0] LsaApLogonUser: Pass the Authenticating Authority to the caller. 2019-03-04 01:37:14 +01:00
Pierre Schweitzer
e5b0087c8e [DCOMLAUNCH][WMISVC] Stop busy waiting shutdown 2019-03-03 23:14:37 +01:00
Colin Finck
bd0a28d1e4 Fix the MSVC version of ldexp filling up the FPU stack and bailing out with #IND after a few calls. Additionally, add it back to libcntpr.
MSVC was previously given a "result" variable to copy the fscale result from st(0). This led to another "fld" FPU stack push at the very end without popping the source value from the FPU stack.
Moreover, this copy isn't even needed: A simple "fstp st(1)" at the end pops an element from the FPU stack while effectively storing the result in st(0), the register used for returning a double value.
This problem didn't affect GCC, as it is only given the "fscale" instruction and does all necessary stack operations itself.

However, looking into the CRT sources, I found many other i386 implementations with inline assembly suffering from the same problem.
Fortunately, they have been replaced by pure assembly implementations a while ago, so it's time to finally remove them.
ldexp would have also been a candidate for a pure assembly implementation, but the required check for NaN and setting errno (verified on Win2003) already outweighs the benefits.
And we cannot just do a NaN check with FUCOMI as this is an i686/pentiumpro instruction while we're still targeting i586/pentium.

I'm also using this opportunity to clean up the ldexp.c header and only put in the remaining contributors as returned by "git blame".

Thanks to NightWolve1975 for reporting the problem! (https://twitter.com/nightwolve1975/status/1099042477531643912)
2019-03-03 16:11:27 +01:00
Pierre Schweitzer
2ab289a34a [DCOMLAUNCH] Add a DcomLaunch service stub
This stub is responsible for providing the UUID seed to the kernel.
For now, it generates a purely random seed - MAC address support
is to be added.
Because it's purely random seed and local the machine (not tied
to the MAC address) it's made so that ExUuidCreate keeps returning
RPC_NT_UUID_LOCAL_ONLY. It won't fix failing test for now.

Nota: this service shouldn't exist as it. It should be implemented
though rpcss DLL for both rpcss service (network service) and
dcomlaunch service (local system service).
Because rpcss is EXE based and wine-synced for now, I prefered
stubbing a new service. This will have to be changed at some point.
2019-03-03 14:25:19 +01:00
Joachim Henze
1d7287288d [SHELL32] Update all languages RCs to fix possible text truncation CORE-15765
IDD_BROWSE_FOR_FOLDER displays text controlled by the calling applications in
IDC_BROWSE_FOR_FOLDER_TITLE. Its old height could lead to text truncation
for existing 3rd party apps.
The new height value for IDC_BROWSE_FOR_FOLDER_TITLE
was inspired by IDC with the same from dialog IDD_BROWSE_FOR_FOLDER_NEW.
I could change all languages to the same height,
as dimensions of the dialog and surrounding controls were same.
2019-03-03 02:23:34 +01:00
Joachim Henze
026c575577 [MSI] In dialogs show titlebar buttons CORE-15301
Import the Wine fix
https://source.winehq.org/git/wine.git/?a=commit;h=84e6b331918d57f39e20a3063b67eb7fc0876288
Many thanks to the fixes author Fabian Maurer.
2019-03-03 01:26:59 +01:00
Joachim Henze
3b96148641 [TASKMGR] Update german rc to avoid text truncation in status-bar CORE-15615
which became a necessity after the second field was reduced in width
by commit 0.4.12-dev-363-g
473e0bfc83
2019-03-03 00:46:23 +01:00
Eric Kohl
e88a6b2053 [SETUPAPI] Implement CM_Next_Range() 2019-03-02 20:59:12 +01:00
Bișoc George
0bc8e2a5bb [COVERITY][SETUPAPI] Release the blocks of memory when done
pRange variable allocates blocks of memory from the heap by HeapAlloc() although this resource is never freed afterwards.

COVERITY CID 1427056
2019-03-02 20:39:09 +01:00
jimtabor
b6262a25fd Use GDI Batch for PatBlt
This should increase speed a bit. Makes a good argument to use
PolyPatBlt for more than one call.
PolyPatBlt is not fully tested yet.
2019-03-02 11:30:21 -06:00
Pierre Schweitzer
1114b89952 [NTOSKRNL] Fix MSVC2010 build 2019-03-02 11:10:37 +01:00
Pierre Schweitzer
c2b6c3a69f [NTOSKRNL] Fix ClockDiff aka fix MSVC build 2019-03-02 10:45:34 +01:00
Pierre Schweitzer
bbfb3caa36 [NTOSKRNL] Add a test for ExUuidCreate 2019-03-02 10:30:00 +01:00
Eric Kohl
28309096df [SNDVOL32] In record mode, rename the 'Mute' autocheckbox to 'Select', turn it into a checkbox and make it behave like a radiobutton. 2019-03-01 22:01:14 +01:00
Pierre Schweitzer
eb8b481cd4 [NTOSKRNL] Rewrite/fix our UUID generation implementation
So that it matches Windows behavior
Also implement ExUuidCreate that will generate UUID version 1

The implementation is based on the RFC 4122
2019-03-01 08:22:48 +01:00
Pierre Schweitzer
2d9673c68f [NTOSKRNL] Introduce the UUID_CACHED_VALUES_STRUCT structure
Source: https://blog.48bits.com/el-codigo-ntoskvinci/
2019-03-01 08:22:47 +01:00
Pierre Schweitzer
81c88c1029 [NTOSKRNL] UuidMutex -> ExpUuidLock 2019-03-01 08:22:47 +01:00
Bișoc George
d000a1e1c6 [OSK] Implement "Use Click Sound" feature
- Implement the save/load handler for this feature
- Check the "Use Click Sound" item state accordingly depending if it's enabled or disabled
- Use PlaySoundW() to play the wave sound file from resource
- Add the WAV sound click file. The work is made thanks to Midori Mizuno
2019-03-01 00:13:47 +01:00
Thomas Faber
1001e6089f [HDAUDBUS] Wait until the correct number of responses was received. CORE-15465
We previously only gave the device a hard-coded amount of time to respond,
which could lead to interpreting the contents of uninitialized memory as
a response. This would lead to an unreasonably large number of audio function
groups being detected.

A KSEMAPHORE mirrors what Haiku uses here, though it may not be the optimal
synchronization primitive for this case under Windows.
2019-02-28 10:27:06 +01:00
Thomas Faber
8530ae9950 [HDAUDBUS] Handle responses in a DPC instead of the ISR. 2019-02-28 10:06:18 +01:00
Thomas Faber
a7431880bd [HDAUDBUS] Fix a DPRINT. 2019-02-28 10:05:53 +01:00
Thomas Faber
1f76fb738a [HDAUDBUS] Prevent overflow of the AudioGroups array. CORE-14153 CORE-15465
This protects against crashing in case of faulty/malicious hardware,
but also works around a bug in HDA_SendVerbs that causes it to return
invalid data, thereby suggesting more groups than are actually present.
2019-02-27 11:04:23 +01:00
Bișoc George
8423d8b7e1 [SNDVOL32] Small Italian translation update 2019-02-26 23:04:23 +01:00
Thomas Faber
a8414f665b [HDAUDBUS] Implement HDA_Unload. Stub HDA_Power and HDA_SystemControl. 2019-02-26 09:58:53 +01:00
Thomas Faber
25b22131ca [HDAUDBUS] Correctly mask register values.
See https://github.com/haiku/haiku/blob/master/src/add-ons/kernel/drivers/audio/hda/hda_controller.cpp
and https://github.com/haiku/haiku/blob/master/src/add-ons/kernel/drivers/audio/hda/driver.h#L118-L140

This fixes various device reset failures and probably other issues.
2019-02-26 09:51:48 +01:00
Thomas Faber
584baf79d9 [HDAUDBUS] Implement PDO removal. CORE-14617 2019-02-26 09:51:38 +01:00
Thomas Faber
c8c0fc8d64 [HDAUDBUS] Implement FDO removal. CORE-14617 2019-02-26 09:51:21 +01:00
Thomas Faber
b05e5b0340 [HDAUDBUS] Use IoForwardIrpSynchronously instead of HDA_SyncForwardIrp. 2019-02-26 09:50:50 +01:00
Thomas Faber
789cfd3ddc [HDAUDBUS] Forward FDO requests instead of completing them. 2019-02-26 09:20:47 +01:00
Thomas Faber
ce6960b3f5 [HDAUDBUS] Use a switch for minor function codes. 2019-02-26 09:20:43 +01:00
Thomas Faber
9c7c2deff9 [HDAUDBUS] Split FDO/PDO PNP handling into separate functions. 2019-02-26 09:20:37 +01:00
Thomas Faber
b65ec6ffba [HDAUDBUS] Minor fixes:
* Add some forward-declarations
* Add some annotations
* Improve a DPRINT
2019-02-26 09:18:41 +01:00
Pierre Schweitzer
6ee2f9882c [MSAFD] Don't leak event while querying/setting socket options 2019-02-25 22:34:29 +01:00
Pierre Schweitzer
6bc61f63f1 [MSAFD] Implement socket options SO_SNDBUF and SO_RCVBUF 2019-02-25 22:34:29 +01:00
Pierre Schweitzer
6bf5a8a43d [AFD_APITEST] Add apitest for AFD window size options 2019-02-25 22:34:28 +01:00
Pierre Schweitzer
86483d6e22 [AFD] Don't allow caller to set broken values to window sizes
This will avoid 0-sized allocations, or -1-sized allocations.
So far, it's maxed by hard value stored in TCPIP.sys. I believe
this is not right and would deserve a true fix
2019-02-25 22:34:28 +01:00
Pierre Schweitzer
bb9eec7537 [AFD] Add default window sizes on socket creation 2019-02-25 22:34:28 +01:00
Mark Jansen
fa548efb41 [XDK] Remove _M_AMD64 special case 2019-02-25 20:00:35 +01:00
Mark Jansen
c01fa8e9c1 [APPHELP] Implement SdbRegisterDatabase[Ex]
CORE-11301
2019-02-25 20:00:35 +01:00
Mark Jansen
28a091ac12 [APPHELP][APPHELP_APITEST] Implement SdbGetDatabaseInformation
CORE-11301
2019-02-25 20:00:34 +01:00
Mark Jansen
5c05a29d3d [APPHELP] Implement ShimDumpCache and ShimFlushCache
These functions simply call into the Base* functions,
having a prototype that is compatible with rundll32
CORE-11301
2019-02-25 20:00:34 +01:00
Mark Jansen
f2f54a052e [SDB] Initial SdbRegisterDatabase stubs
CORE-11301
2019-02-25 20:00:34 +01:00
Mark Jansen
a9bd3da299 [APPHELP_APITEST] Add a test for shim database registration
CORE-11301
2019-02-25 20:00:34 +01:00
Stanislav Motylkov
12e78a9039 [MODULES][WALLPAPERS] Fix build (#1375)
Some file names still contained space instead of underline. Addendum to 0760802.
2019-02-25 11:41:41 +01:00
Luo Yufan
ca9cdce760 [TRANSLATION] Update Chinese and Traditional Chinese translations. (#1369) 2019-02-25 00:36:53 +01:00
Pierre Schweitzer
f6c50cb93d [MSAFD] Make WSPSetSockOpt() SO_RCVBUF stub return success 2019-02-24 21:25:39 +01:00
Timo Kreuzer
81727760e4 [NTOS::Mm] Fix inverted check in MiWriteProtectSystemImage 2019-02-24 20:34:02 +01:00
Dylan Navas
07608028b3 [MODULES] Fix CMakeLists.txt for wallpapers module. (#1294)
* Add all wallpapers to the ISO and can look how enable the module in ReadMe.txt
* Remove blanks in name.
* Moving to folder with same wallpaper style.
* Adding and updating CMakeLists.txt.
* Update ReadMe.txt.
2019-02-24 18:08:26 +01:00
Serge Gautherie
c5d1638e1e [KMTEST] Fix 3 Clang-Cl warnings about Status and Callbacks (#502)
* 1 "warning: variable 'Status' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]"
* 2 "warning: comparison of unsigned expression < 0 is always false [-Wtautological-unsigned-zero-compare]"
* Use a consistent type for "i" and fix a comment
* Also update licence header.

CORE-14306
2019-02-24 17:53:38 +01:00
Eric Kohl
77e3fbfad5 [MMSYS] Volume page: Initialize the volume trackbar before it might be disabled because the tick marks must be visible on a disabled trackbar. 2019-02-24 17:15:13 +01:00
Eric Kohl
601b2532e1 [MMSYS] Sounds page: Update the 'Play' button and the current item in the 'Program events' treeview when a sound is selected or deselected. 2019-02-24 16:56:55 +01:00
Eric Kohl
722797c779 [SNDVOL32] Disable only the 'Play' button, when no audio device is avaiblable. 2019-02-24 16:16:53 +01:00
Stanislav Motylkov
8c90a67da6 [MSGINA] Add bar bitmap to logon and shutdown dialogs 2019-02-24 15:52:49 +01:00
Stanislav Motylkov
fe1d611e0f [MSGINA] Improve Ctrl-Alt-Del invitation window 2019-02-24 15:52:49 +01:00
Stanislav Motylkov
f9d29319a6 [MSGINA] Implement rotation bar animation
Based on initial work by Bisoc George. Rotation bar image by Zcooger. CORE-15215
2019-02-24 15:52:49 +01:00
Eric Kohl
fb34029fde [MMSYS] Disable the 'Low' and 'High' text of the volume trackbar and the 'Place volume icon in the taskbar' checkbox when no sound device is available. 2019-02-24 15:36:08 +01:00
Raul Tambre
44aef85db1 [WINLOGON] Fix fallback keyboard layout flags 2019-02-24 15:21:38 +01:00
Eric Kohl
26b52c4e06 [SNDVOL32] Advanced Controls dialog: Implemented the Bass and Treble trackbars.
Please check if they are working correctly. I have no way to check them myself.
2019-02-24 12:50:37 +01:00
Eric Kohl
01c0d30f4f [SNDVOL32] Remove trailing whitespace 2019-02-23 17:27:43 +01:00
Eric Kohl
fba5a8fcdb [SNDVOL32] Resize the dialog and groupbox when there are two 'Other Controls' 2019-02-23 17:27:42 +01:00
Pierre Schweitzer
d1598788cd [WS2_32] Use SEH in WSCGetProviderPath() 2019-02-23 13:35:07 +01:00
Eric Kohl
2e797accd3 [SNDVOL32] Advanced Controls dialog: Initialize the Other Controls 2019-02-23 12:53:05 +01:00
Pierre Schweitzer
02e84521cc [WS2_32] Implement WSCGetProviderPath() 2019-02-23 10:57:30 +01:00
Eric Kohl
4ba3c904a8 [SNDVOL32] Advanced controls dialog: Remove the TBS_AUTOTICKS style from the trackbars and initialize them properly. 2019-02-22 23:33:47 +01:00
Eric Kohl
03c3dd5ab0 [SNDVOL32] Move the advanced controls dialog to a separate file and update its title on creation. 2019-02-21 22:27:44 +01:00
Serge Gautherie
6accaef3c7 [NDK] Fix 'DeletedChidren' typo (#1367)
On behalf of Vadim Galyant.
CORE-15769
2019-02-20 22:16:16 +01:00
Pierre Schweitzer
0996dac683 [VIDEOPRT] Don't return uninitialized memory 2019-02-20 21:02:11 +01:00
Mark Jansen
8467d6edd1 [SNDVOL32] Fix parsing dialog icons 2019-02-20 13:57:44 +01:00
Stanislav Motylkov
0eaeb9de4c [SNDVOL32] Add left and right balance icons 2019-02-20 13:57:44 +01:00
Thomas Faber
cf40421041 [NTOS:PNP] Correctly respect data size in PnpRegSzToString. CORE-15766
Spotted by Vadim Galyant.
2019-02-20 12:23:33 +01:00
Thomas Faber
c83d7ba185 [NTDLL_APITEST] Show that registry strings can be longer than MAXUSHORT. 2019-02-20 12:23:24 +01:00
Stanislav Motylkov
faac9169e6 [SNDVOL32] Add Russian translation
Addendum to fe5c50e and e6be187.
2019-02-19 18:37:28 +01:00
Michael Fritscher
4928e800a6 [FREELDR] PXE: Fix network packet size
1024 bytes should fit into a single network packet. CORE-15706
2019-02-19 16:04:20 +01:00
Eric Kohl
e6be187c04 [SNDVOL32] Add the 'Advanced Controls for Volume Control' dialog. It does nothing useful yet. 2019-02-19 00:02:08 +01:00
Mark Jansen
860f96f431 [MSI] Prevent uninitialized variable usage 2019-02-18 23:00:54 +01:00
Mark Jansen
2fade6ede4 [MSI] Do not leak rootkey 2019-02-18 23:00:54 +01:00
Mark Jansen
d766391231 [SHELL32] Abort change notifications on a nullptr
CORE-15703
2019-02-18 23:00:31 +01:00
Eric Kohl
95ed44ef63 [SNDVOL32] Implement the dialog resize code for the 'Advanced Controls' menu item and prepare for clicks on the 'Advanced' button. 2019-02-18 00:58:28 +01:00
Eric Kohl
fe5c50e182 [SNDVOL32] Fix the window height issue when the line selection changes and implement the 'Advanced Controls' menu item.
CORE-9108 CORE-15751
2019-02-17 14:04:39 +01:00
Thomas Faber
a951d66002 [RTL] Fix GCC build. 2019-02-17 09:59:49 +01:00
Thomas Faber
9d53c935f2 [ACPI] Update ACPICA library to version 20190215. 2019-02-17 09:51:20 +01:00
Thomas Faber
8dcdf82e71 [COMCTL32] Check for NULL pointer when handling BCM_GETIDEALSIZE.
Fixes crash in comctl32_winetest:button.
2019-02-17 09:51:18 +01:00
Thomas Faber
3445129dd3 [COMCTL32] Add NULL checks to SetWindowSubclass.
Imports Wine commit 04847e68f87 by Sven Baars.

Fixes crash in comctl32_winetest:subclass.
2019-02-17 09:51:16 +01:00
Thomas Faber
7246909a80 [RTL] Protect pointer validity check in RtlFreeHeap with SEH.
Fixes crash in kernel32_winetest:heap.
2019-02-17 09:51:12 +01:00
Hermès Bélusca-Maïto
3ddf59e1ed [CMLIB] Assign a signature to the in-memory HHIVE registry hive structure. CORE-15753
Makes the `!reg hivelist` WinDbg command working in ReactOS.

Dedicated to Mark Jansen.

See for more details:
https://webcache.googleusercontent.com/search?q=cache:fmHJX9eFGkkJ:https://blogs.technet.microsoft.com/ganand/archive/2008/01/05/internal-structures-of-the-windows-registry.aspx
and
http://moyix.blogspot.com/2008/02/enumerating-registry-hives.html
2019-02-17 01:21:37 +01:00
Hermès Bélusca-Maïto
70180ee06a [CMLIB] Minor code style changes only: Use slightly more explicit signature #define names so that we know to which hive structure they correspond. 2019-02-17 01:21:36 +01:00
Hermès Bélusca-Maïto
83fdb9a6d9 [NTOS:CM] Set and reset the CMHIVE HiveIsLoading flag adequately. Fix an assertion in CmFlushKey() and reset the CMHIVE ViewLockOwner when releasing the view lock. 2019-02-17 01:21:35 +01:00
Eric Kohl
86800fc498 [SNDVOL32] AUTORADIOBUTTONs are AUTORADIOBUTTONs, not PUSHBUTTONs 2019-02-16 20:36:46 +01:00
Eric Kohl
f721e03d2e [SNDVOL32] Change the menu item prefix from IDC to IDM 2019-02-16 19:23:44 +01:00
Mark Jansen
d7ae8690ab [WIN32K:NTUSER] Do not try to reposition an off-screen menu as if it were a popup menu
CORE-15733
2019-02-16 15:45:46 +01:00
Pierre Schweitzer
db3f3921b6 [KERNEL32] Stub SetThreadErrorMode()
Now, Steam crashes because of the stub of GetSystemTimePreciseAsFileTime

CORE-14966
2019-02-16 14:12:55 +01:00
Eric Kohl
0dd4b354b4 [SNDVOL32] Enable the balance and volume trackbars only if the line has a volume fader control. 2019-02-16 13:55:31 +01:00
Pierre Schweitzer
2b1f6c8b0d [MSAFD] Add an initial implementation of SIO_GET_EXTENSION_FUNCTION_POINTER IOCTL
Also stub the related functions the IOCTL will return, namely: WSAID_ACCEPTEX,
WSAID_CONNECTEX, WSAID_DISCONNECTEX, WSAID_GETACCEPTEXSOCKADDRS

This will allow Steam client not to fail in an ASSERT
related to the Steam client PlatformSocketsInit function.

Even though, this doesn't fix Steam running on ReactOS since its UI requires
a Windows 7 API from Kernel32: SetThreadErrorMode().

Nota: its crash got fixed thanks to the Wine sync done recently.

CORE-14966
2019-02-16 13:51:32 +01:00
Eric Kohl
cc820b7f9f [SNDVOL32] Disable the Mute checkbox for all lines that do not have a mute switch control 2019-02-16 12:59:01 +01:00
Pierre Schweitzer
24b2d59ab6 [E1000] Remove useless null check
CID 512827
2019-02-16 10:02:29 +01:00
Pierre Schweitzer
e1f4d2864a [E1000] Don't attempt to free uninitialized pointer
CID 1442660
2019-02-16 10:02:28 +01:00
Katayama Hirofumi MZ
a8002fc065 msgdump.h undocumented drag & drop support (#1359)
In sdk/include/reactos/msgdump.h, support Drag & Drop undocumented messages.
2019-02-16 17:27:25 +09:00
Pierre Schweitzer
22cb300805 [IPHLPAPI] Properly handle GetModuleBaseName failure
CID 1442662, 1442663
2019-02-16 09:05:15 +01:00
Pierre Schweitzer
93b0957641 [IPHLPAPI] Check pointers when returning module info from specific connection 2019-02-16 09:00:06 +01:00
Pierre Schweitzer
22f60faf43 [IPHLPAPI] Remove dead code
CID 513306, 1442673, 1442697
2019-02-16 08:48:08 +01:00
Pierre Schweitzer
f36cbf75e3 [FASTFAT] On volume open, update share access if volume was already open
It was never updated afterwards, leading to a totally loss of share
access information amongst callers.
2019-02-14 10:48:32 +01:00
Pierre Schweitzer
c9c3622ef1 [VFATLIB] Don't forcibly delete LFN when not in RW mode 2019-02-14 10:13:32 +01:00
Bișoc George
35f7267a97 [USETUP] Check the status value of BuildInstallPaths() (#1349) 2019-02-13 15:22:28 +01:00
Julian Kirsch
42515190c5 [NSLOOKUP] Fix crash in case of no network connectivity (#1354)
Prevent nslookup.exe from crashing when executed in a ROS VM with no network
interfaces. This is due to a NULL pointer dereference occurring if
`GetNetworkParams` in `main` fails with an error other than
`ERROR_BUFFER_OVERFLOW`. In this case, `pNetInfo` remains initialized to
NULL, causing `strncpy` to crash.
2019-02-13 13:12:52 +01:00
Bișoc George
67a3747722 [CRYPTEXT] Add Romanian & Italian translations (#1352) 2019-02-13 13:11:17 +01:00
Bișoc George
a95a8c0276 [OSK] Romanian & Italian translations update (#1353) 2019-02-13 13:10:54 +01:00
Andrew Cook
99ec8ff00c [RAMDISK] Fix unterminated query table 2019-02-13 09:33:10 +01:00
Timo Kreuzer
2a5bf96891 [CRT] Implement thread/fiber safe support for MSVC and Clang-CL
This is the most trivial (but also most efficient) implementation possible. Should be good enough for now.
2019-02-12 19:31:33 +01:00
Timo Kreuzer
dc77e7d379 [CRT] Use alias names for rot functions when compiling with Clang-CL
Clang-CL does not support #pragma function like CL. The alternative to this approach is to disable all intrinsics for this single source file, but that is not trivial to do, as it can only be done by removing a compiler switch, which we have no CMake support for. Therefore this solution is simpler and as good.
2019-02-12 19:31:33 +01:00
Timo Kreuzer
0493e8e432 [MVDM] hack-fix Clang-CL build 2019-02-12 19:31:33 +01:00
Timo Kreuzer
cf5926c207 [CPPRT] Implement __std_terminate wrapper for Clang-CL 2019-02-12 19:31:33 +01:00
Timo Kreuzer
68abf035c6 [NDK] Fix INIT_SECTION for Clang (use the GCC definition) 2019-02-12 19:31:33 +01:00
Timo Kreuzer
afe203a1a5 [CRT] Don't define _DECLSPEC_I on Clang builds 2019-02-12 19:31:33 +01:00
Eric Kohl
f6e819fcb8 [SNDVOL32] Read the Style value from the registry and use it as the default display mode. The /n option is no longer needed.
CORE-15743
2019-02-11 23:44:01 +01:00
Eric Kohl
45f0d7413c [SNDVOL32] Disable the balance trackbar for mono channels.
CORE-15743
2019-02-11 21:16:32 +01:00
Stanislav Motylkov
008344fd09 [MEDIA][INF] Fix E1000 driver date
DriverVer date format is mm/dd/yyyy
2019-02-11 19:35:34 +01:00
Victor Perevertkin
53ce7d4370 [CONFIGURE] Do not create another "reactos" directory in build directory. This makes configure.sh consistent with configure.cmd 2019-02-11 09:55:17 +01:00
Pierre Schweitzer
63b13ad939 [NTOSKRNL] Simplify object type name printing 2019-02-11 09:03:58 +01:00
Hermès Bélusca-Maïto
7bbf8ae688 [WIN32SS:NTUSER] Bugcheck in case two mandatory initialization steps are not fulfilled.
- Bugcheck VIDEO_DRIVER_INIT_FAILURE in case initializing video fails.
- Bugcheck WIN32K_INIT_OR_RIT_FAILURE (Windows-compatible) in case
  the USER subsystem version does not match.
2019-02-10 22:44:24 +01:00
Hermès Bélusca-Maïto
1e74ca5075 [BUGCODES] Add WIN32K_INIT_OR_RIT_FAILURE to the list. 2019-02-10 22:44:23 +01:00
Hermès Bélusca-Maïto
38be848f68 [USBSTOR][USBSTOR_NEW] Fix a comparison made for assigning the ScsiInquiryData->RemovableMedia flag.
Now removable drives are really reported as such.

See https://github.com/reactos/reactos/pull/308/files#r163224294
for more details.
2019-02-10 22:40:59 +01:00
Hermès Bélusca-Maïto
a56a2e95a2 [DISK.SYS] Add a HACK so that we can use NT5+ NTOS functions with this NT4 driver for removable devices.
This is needed in order to avoid an infinite recursive loop between
disk!UpdateRemovableGeometry() and ntos!IoReadPartitionTable().
This does not happen with NT5+ disk_new.sys because it doesn't call
IoReadPartitionTable() in that situation.
2019-02-10 22:39:12 +01:00
Eric Kohl
397fe9c817 [SNDVOL32] Implement the volume and balance trackbar for mono and stereo lines. 2019-02-10 22:17:15 +01:00
Pierre Schweitzer
6295cc506e [OOPS] That was not meant to be pushed/commited 2019-02-10 20:52:55 +01:00
Pierre Schweitzer
d2c71d761e [CRYPTEX] Add French translation 2019-02-10 20:43:14 +01:00
Stanislav Motylkov
718ced9f3a [CRYPTEXT] Add russian translation
Addendum to d56d9c1.
2019-02-10 20:41:35 +01:00
Eric Kohl
4ac1512259 [SNDVOL32] Initialize and update the volume and balance trackbars. Moving the trackbars has no effect yet. 2019-02-10 19:34:22 +01:00
Eric Kohl
b995880ee4 [SNDVOL32] Fix coding style issues. No code changes! 2019-02-10 18:09:31 +01:00
Baruch Rutman
d56d9c1aaa [CRYPTEXT] Make extension localizable, and add an icon for certificate files (#1347)
- Localize error message and shell file extension description.
- Added Hebrew resources.
- Added Icon.

The icon is the Tango icon named "certificate". If anybody has a idea for more fitting icon please recommend it.

Follow up of #1343

CORE-15736
2019-02-10 17:57:43 +01:00
Hermès Bélusca-Maïto
c0d97cec88 [NETCFGX] Fix an assignment typo. 2019-02-10 17:30:56 +01:00
Serge Gautherie
237110604b [CMAKE] msvc.cmake: Remove 2 now redundant '/GF' (#1239)
Addendum to 5e673f3.
CORE-14373
2019-02-10 16:46:23 +01:00
Bișoc George
8bde4de2d6 [USETUP][REACTOS] Check the status return value of InitDestinationPaths() (#1264)
- Within the function's body code, check the status values returned by the called functions.
- Change the BuildInstallPaths's function type to NTSTATUS instead of VOID (and check the status of InitDestinationPaths() as well.
2019-02-10 16:43:51 +01:00
Bișoc George
3cd3d896b7 [OSK] Implement standard/enhanced keyboard handler (#1338)
- Add the respective standard keyboard resource.
- Implement the standard/enhanced keyboard dialog switcher.
- Implement save/load handler.
- Move the warning box conditinal check (bShowWarning) to wWinMain application entry point (this will prevent the modal welcome box from displaying each time the user switches into another dialog).

CORE-14428
2019-02-10 16:04:16 +01:00
Luo Yufan
02eeee15f0 [SETUP][INF] Add font substitute for CJK. (#1346)
Fix CJK font problem in Royale theme in ReactOS.

The reason for this PR is similar to the previous one (#1127).
CORE-15738
2019-02-10 15:46:19 +01:00
Mark Jansen
0bdca09a85 [IPHLPAPI] Preserve decoration in exported symbols
CORE-8462
CORE-15665
2019-02-10 13:44:08 +01:00
Eric Kohl
6cf443d6d7 [SNDVOL32] Disable the 'Advanced Controls' menu item by default. 2019-02-10 12:53:08 +01:00
Pierre Schweitzer
df829f7948 [NTOSKRNL] Also display sections name 2019-02-10 11:23:57 +01:00
Serge Gautherie
17af7f0c27 [UDFS] Correctly check SeSinglePrivilegeCheck() return value
SeSinglePrivilegeCheck() returns a BOOLEAN, not a NTSTATUS.

CORE-14271
2019-02-10 10:16:55 +01:00
Hermès Bélusca-Maïto
1b473cbeee [SDK:CMAKE] Fix LINK command-line from the VS IDE for CMake VSSolution configurations, when using MSVC "linker script" files.
MSBuild, via the VS IDE, uses response files when calling CL or LINK.
We cannot specify a custom response file on the linker command-line,
since specifying response files from within response files is forbidden.
We therefore have to pre-process, at configuration time, the linker
script so as to retrieve the custom linker options to be appended
to the linker command-line.
2019-02-10 00:47:43 +01:00
Hermès Bélusca-Maïto
7d0cd6e937 [FREELDR][SDK:CMAKE] Move the `MSVC "linker script" file' functionality out of FreeLdr's cmake file and place it in the dedicated files instead. 2019-02-10 00:43:31 +01:00
Oleksandr Shaposhnikov
a5c5ba17e5 [FREELDR] Fix VSSolution configuring and build
"configure.cmd VSSolution" was failing due to add_asm_files macro
 expansion. It was using the same 'freeldr_linker_file' variable name
 as a temporary filename base twice. This patch uses '_target'
 parameter to make those variable names differ.
2019-02-10 00:25:04 +01:00
Eric Kohl
d1093e8750 [SNDVOL32] Fix the positions and sizes of the separators of the normal line dialog and load the master dialogs for speakers or headphones. 2019-02-10 00:14:05 +01:00
Pierre Schweitzer
f4320047c3 [NTOSKRNL] Fix parsing loop 2019-02-09 13:59:11 +01:00
Pierre Schweitzer
2991f6e76e [NTOSKRNL] Add a first implementation of !handle command in KDBG
It allows dumping all the handles (filtered by PID/Process)
and it displays basic information about file and key handles
2019-02-09 13:46:35 +01:00
Andrew Cook
5bfe6a5376 [mvdm] Fix missing pointer dereference
Original code compared against the pointer value rather
than the first byte
2019-02-09 11:53:55 +01:00
Mark Jansen
fb7a0344cd [CRYPTEXT] Add a minimal shell extension that will show the certificate dialog 2019-02-09 01:44:39 +01:00
Mark Jansen
27cc4c6a08 [LDR] Check forwarded imports against the manifest before trying to load them
CORE-15729
2019-02-08 21:24:01 +01:00
Victor Perevertkin
d9c4d28e59 [E1000] Finished an implementation of the driver.
Added PIDs for whole Intel 8254x family.
Note: this driver uses legacy interfaces for either receive and transmit descriptors.
CORE-14675
2019-02-07 19:48:54 +01:00
Mark Jansen
1b2ca28107 [NDIS] Improve debug output 2019-02-07 19:48:54 +01:00
Mark Jansen
3606404b2e [E1000] Initial send implementation.
CORE-14675
2019-02-07 19:48:54 +01:00
Mark Jansen
ebad64bcfe [E1000] Implement basic sending.
Implement some interrupt recognition

CORE-14675
2019-02-07 19:48:54 +01:00
Mark Jansen
d9b0601ceb [E1000] Basic initialization of the card
Initialize some registers, allocate basic resources

CORE-14675
2019-02-07 19:48:54 +01:00
Mark Jansen
4561998a45 [E1000] Create an initial driver skeleton
Based on the rtl8139 driver written by Cameron Gutman

CORE-14675
2019-02-07 19:48:54 +01:00
Mark Jansen
d93e516747 [LDR] Add support for .local files
CORE-187
2019-02-07 18:48:49 +01:00
Mark Jansen
88cd8d681c [NTDLL_APITEST] Add test for RtlComputePrivatizedDllName_U 2019-02-07 18:48:49 +01:00
Mark Jansen
e1aae1c620 [RTL] Implement RtlComputePrivatizedDllName_U 2019-02-07 18:48:49 +01:00
Serge Gautherie
84e76b1c4c [NTOS:MM] ExFreePoolWithTag(): Accept tag mismatch, on release build only (#1334)
"Release" builds should not BSoD on 'Freeing pool - invalid tag specified' case,
this is compatible with Windows behaviour.
Nothing changes otherwise concerning the "Debug" builds, where pool-tag mismatch
triggers a BSoD as expected.

CORE-15446
2019-02-07 16:57:56 +01:00
Eric Kohl
0185ee46d5 [SNDVOL32] Take the balance between channels into account for the volume trackbar of the tray window. 2019-02-05 20:33:43 +01:00
Eric Kohl
d5ceace419 [MMSYS] Take the balance between channels into account for the master volume trackbar. 2019-02-04 23:54:04 +01:00
Amine Khaldi
eea81f5274 [WINDOWSCODECS_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:12:58 +01:00
Amine Khaldi
e98ef4992e [WINDOWSCODECS] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:12:26 +01:00
Amine Khaldi
a587a0e68e [PSDK] Update wincodec.idl. CORE-15682 2019-02-04 13:11:54 +01:00
Amine Khaldi
d9bd8eaba3 [WBEMPROX_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:11:26 +01:00
Amine Khaldi
46add00db5 [WBEMPROX] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:10:55 +01:00
Amine Khaldi
e054ebd54c [WBEMDISP_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:10:24 +01:00
Amine Khaldi
8786e12d13 [WBEMDISP] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:09:55 +01:00
Amine Khaldi
727f534b9f [VERSION_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:09:27 +01:00
Amine Khaldi
f8a6a70be1 [VERSION] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:09:00 +01:00
Amine Khaldi
827f664432 [VBSCRIPT_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:08:28 +01:00
Amine Khaldi
72fa0fd6cc [VBSCRIPT] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:07:56 +01:00
Amine Khaldi
4df86f782f [UXTHEME_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:07:25 +01:00
Amine Khaldi
f8629c57a9 [USP10_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:06:57 +01:00
Amine Khaldi
c0b82105b5 [USP10] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:06:21 +01:00
Amine Khaldi
e38908229b [USERENV_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:05:28 +01:00
Amine Khaldi
11d1bab6f3 [URLMON_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:05:00 +01:00
Amine Khaldi
ad73c0a040 [URLMON] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:04:30 +01:00
Amine Khaldi
f4c8f8de72 [TWAIN_32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:03:56 +01:00
Amine Khaldi
9622551c51 [T2EMBED] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:03:27 +01:00
Amine Khaldi
312e0bf079 [SXS_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:02:58 +01:00
Amine Khaldi
8d3e69919b [SXS] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:02:29 +01:00
Amine Khaldi
c6a219ff82 [SNMPAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:01:59 +01:00
Amine Khaldi
952bc47ba0 [SHLWAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:01:30 +01:00
Amine Khaldi
4d8c4b145d [SHELL32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-04 13:00:58 +01:00
Amine Khaldi
601cdab402 [PSDK] Update shellapi.h and shlobj.h. CORE-15682 2019-02-04 13:00:25 +01:00
Luo Yufan
96d1cd2b62 [TRANSLATION] Update Chinese translation. 2019-02-03 13:17:13 +01:00
Andrew Cook
d8e92b5a0a Merge pull request #1335 from ariscop/CMP0065
Fixes for upstream cmake
2019-02-03 12:57:20 +01:00
Thomas Faber
066ee4db3b [NTOS:MM] Dump pool consumers at most once per second.
This should avoid some log spam during kmtest:ExPools, which
intentionally depletes pool.
2019-02-03 12:54:36 +01:00
Thomas Faber
58215e5fb7 [NTDLL_APITEST] Add test for NtDuplicateObject with OBJ_PROTECT_CLOSE. 2019-02-02 23:02:53 +01:00
Thomas Faber
f5fc9e0cf2 [NTOS:OB] Correctly handle OBJ_PROTECT_CLOSE in ObDuplicateObject. 2019-02-02 23:02:50 +01:00
Thomas Faber
a71f3a70d8 [NTDLL_APITEST] Add tests for zero and negative information class values. CORE-15651 2019-02-02 22:50:19 +01:00
Thomas Faber
63977328b1 [NTOSKRNL] Guard against negative InformationClass enum values. CORE-15651 2019-02-02 22:50:02 +01:00
Thomas Faber
1a14dcb53f [RPCRT4][RPCRT4_WINETEST] Don't unset IDL_FLAGS. Fixes build on 64 bit hosts. 2019-02-02 19:06:04 +01:00
Eric Kohl
60c28213bc [SNDVOL32] Implement the mute checkbox. The tray dialog is done. 2019-02-02 17:22:21 +01:00
Alexandr A. Telyatnikov
0c7e9684bd [UNIATA] Add AHCI revision 1.3.1
Also explicitly print current AHCI revision in debug log. CORE-15643
2019-02-02 15:47:39 +01:00
Eric Kohl
8687529bdf [SETUPAPI] Add a stub for SetupDiDeleteDeviceInterfaceData to make the wine tests work. 2019-02-02 15:13:35 +01:00
Eric Kohl
c73c7cc16e [SNDVOL32] Implement the volume control for the tray window. 2019-02-02 14:44:14 +01:00
Arnav Bhatt
f5960cea70 [SETUP] GUI setup Hindi translation (#951) 2019-02-02 14:41:31 +01:00
Amine Khaldi
138051c0be [SHDOCVW_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:16:27 +01:00
Amine Khaldi
876fef085a [SHDOCVW] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:16:02 +01:00
Amine Khaldi
6828353ace [SETUPAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:15:35 +01:00
Amine Khaldi
aee77bdeee [SERVICES_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:14:59 +01:00
Amine Khaldi
96eddc22d2 [SERIALUI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:14:08 +01:00
Amine Khaldi
739fc06f27 [SECUR32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:13:33 +01:00
Amine Khaldi
1f7c95d621 [PSDK] Update schannel.h. CORE-15682 2019-02-02 14:13:03 +01:00
Amine Khaldi
c3b5406849 [SCRRUN_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:12:33 +01:00
Amine Khaldi
9d4f1f05a3 [RSAENH_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:12:04 +01:00
Amine Khaldi
f2f9161a02 [RPCRT4_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:11:36 +01:00
Amine Khaldi
e736079be3 [RICHED32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:11:06 +01:00
Amine Khaldi
dbfaf10dc0 [RICHED20] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 14:10:37 +01:00
Amine Khaldi
f5580f4c9d [PSDK] Update tom.idl. CORE-15682 2019-02-02 14:08:53 +01:00
Amine Khaldi
c540ae7901 [REGEDIT_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:30:32 +01:00
Amine Khaldi
9ce8769f4e [QMGR] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:30:06 +01:00
Amine Khaldi
4567e13e3e [PSAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:29:37 +01:00
Amine Khaldi
8bc8ae005f [PROPSYS_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:29:12 +01:00
Amine Khaldi
2801bfeea1 [PSDK] Update propvarutil.h. CORE-15682 2019-02-02 13:28:43 +01:00
Amine Khaldi
ab64b47497 [PROPSYS] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:28:11 +01:00
Amine Khaldi
59e9abd907 [PIDGEN] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:27:41 +01:00
Amine Khaldi
fa56cfc9ab [PDH_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:27:10 +01:00
Amine Khaldi
c9de708a9b [PDH] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:26:39 +01:00
Amine Khaldi
27ad765df6 [OPENGL32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:26:08 +01:00
Amine Khaldi
b9e3058014 [OLEDLG_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:25:40 +01:00
Amine Khaldi
4abf2277a1 [OLEDLG] Sync with Wine Staging 4.0. CORE-15682 2019-02-02 13:25:12 +01:00
Pierre Schweitzer
a6dc1d69bc [NTOS:MM] On big pool enumeration, return entry instead of base VA 2019-02-02 10:45:15 +01:00
Thomas Faber
42b5f5ec06 [OLEAUT32] Add AMD64 version of call_double_method aka fix build. 2019-02-01 18:09:52 +01:00
Thomas Faber
e7acf61764 [CMAKE] Define some AMD64 symbols for host tools that match what we do for x86.
Fixes widl build.
2019-02-01 18:09:30 +01:00
Hermès Bélusca-Maïto
8077da05e0 [FREELDR] Remove unneeded ASSUME line. 2019-01-31 23:51:00 +01:00
Mark Jansen
71e13274ee [FREELDR] Fix msvc boot (#1329)
CORE-15700
2019-01-31 23:42:20 +01:00
Katayama Hirofumi MZ
64987cf273 [FONT][WIN32SS] Improve font coordinate transformation (#1238)
Improve TextOut/ExtTextOut font rendering with SetWorldTransform. CORE-15554, CORE-15623
2019-01-31 11:57:28 +09:00
Katayama Hirofumi MZ
62f6e3b397 [WIN32KNT_APITEST] Tabs To Spaces (#1326)
Converts Tabs to Spaces.
2019-01-30 22:55:10 +09:00
Katayama Hirofumi MZ
e7846c0c67 [APITESTS][GDI32] Add TextTransform testcase (#1319)
Prove text/font transformation functionality (#1238). CORE-15554
2019-01-30 21:23:42 +09:00
Amine Khaldi
b6fdb56b9a [RPCRT4] Sync with Wine Staging 4.0. CORE-15682 2019-01-30 12:31:33 +01:00
Katayama Hirofumi MZ
bb33692400 [WIN32SS][NTGDI] Use ProbeForWrite in NtGdiSetBitmapBits (#1325)
Use ProbeForWrite instead of ProbeForRead. CORE-15657 and CORE-15695
2019-01-30 16:54:45 +09:00
Katayama Hirofumi MZ
8886a2261a [USETUP] Improve lang/ReadMe.txt 2019-01-30 14:59:10 +09:00
Serge Gautherie
0483a5a380 [NTOS:OB] Correctly check SeSinglePrivilegeCheck() return value (#1323)
SeSinglePrivilegeCheck() returns a BOOLEAN, not a NTSTATUS.
CORE-14271
2019-01-30 00:43:13 +01:00
Joachim Henze
1e05f9cc32 [COMCTL32] Revert "button: Don't erase the area of the checkbox or the text."
This reverts commit 0.4.12-dev-347-g
75a80ec823
by explcit request of Giannis Adamopoulos.

I double-checked and confirm, that
this revert fixes both regressions CORE-15595 & CORE-15696.
On the downside the revert will intensify again the regression CORE-13278
(will make the text flash again as well).

Giannis Adamopoulos mentioned earlier, that using double-buffering
eventually could be a valid way out of CORE-13278 instead.
2019-01-29 19:25:57 +01:00
Katayama Hirofumi MZ
232cf9f0b6 [USETUP] Follow-up ro-RO.h and add lang/ReadMe.txt (#1321)
- Add lang/ReadMe.txt for code7bit description.
- Follow up ro-RO.h file (#1317).
2019-01-29 23:55:45 +09:00
Katayama Hirofumi MZ
6360a53b12 [WIN32KNT_APITEST] Improve NtGdiSetBitmapBits 6 (#1320)
Add some PAGE_READONLY tests. Add two bit pattern tests. CORE-15657 and CORE-15695
2019-01-29 22:48:14 +09:00
Ștefan Fulea
5417742f48 [TRANSLATION] Add Romanian to devcpux, intl.inf, and some rosapps 2019-01-29 13:48:48 +01:00
Ștefan Fulea
092b67c723 [TRANSLATION] Improve the existing translated contents 2019-01-29 13:48:48 +01:00
Ștefan Fulea
211ad8c73d [TRANSLATION] Update the existing romanian resources
This includes both newly added and previously left untranslated strings.
2019-01-29 13:48:48 +01:00
Amine Khaldi
357f69997d [OLEAUT32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:19:12 +01:00
Amine Khaldi
5db885cae7 [OLEAUT32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:18:42 +01:00
Amine Khaldi
22c8b4bf12 [WIDL] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:18:09 +01:00
Amine Khaldi
64040f7c9f [PSDK] Update ndrtypes.h. CORE-15682 2019-01-29 13:17:38 +01:00
Amine Khaldi
3425afa6d9 [OLEACC_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:17:10 +01:00
Amine Khaldi
016864f8ff [OLEACC] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:16:40 +01:00
Amine Khaldi
5c1bcfec69 [OLE32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:16:05 +01:00
Amine Khaldi
aeea294301 [OLE32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:15:33 +01:00
Amine Khaldi
4d2ae66cd1 [ODBCCP32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:15:00 +01:00
Amine Khaldi
d34c33223c [ODBCCP32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:14:20 +01:00
Amine Khaldi
04ef5f7a85 [ODBC32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:13:48 +01:00
Amine Khaldi
d46c9a5a05 [NTDSAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:13:20 +01:00
Amine Khaldi
08e76d6087 [NETAPI32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:12:45 +01:00
Amine Khaldi
98fa9b2cfc [MSXML3_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:12:12 +01:00
Amine Khaldi
2c59bb1450 [PSDK] Update winerror.h. CORE-15682 2019-01-29 13:11:30 +01:00
Amine Khaldi
9f0f6adfb0 [MSXML3] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:11:02 +01:00
Amine Khaldi
9ab78df104 [MSVIDC32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:10:20 +01:00
Amine Khaldi
f04935d8f2 [MSVFW32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:09:42 +01:00
Amine Khaldi
cbf79d98c6 [MSVFW32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:09:12 +01:00
Amine Khaldi
3f6b395cc1 [MSVCRTD_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:08:43 +01:00
Amine Khaldi
f446a50f76 [MSVCRT_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:08:13 +01:00
Amine Khaldi
e430a46061 [MSRLE32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:07:39 +01:00
Amine Khaldi
6c5ec3ddff [MSRLE32] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:07:09 +01:00
Amine Khaldi
606f6cab10 [MSGSM32.ACM] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:06:38 +01:00
Amine Khaldi
3d3499acfa [MSG711.ACM] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:06:10 +01:00
Amine Khaldi
53028dd240 [MSCTF_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:05:39 +01:00
Amine Khaldi
f089261cb9 [MSCTF] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:05:02 +01:00
Amine Khaldi
513e144197 [MSCMS] Sync with Wine Staging 4.0. CORE-15682 2019-01-29 13:04:32 +01:00
Amine Khaldi
e783670140 [PSDK] Update icm.h. CORE-15682 2019-01-29 13:03:59 +01:00
Katayama Hirofumi MZ
1cd2f5438c [WIN32SS][NTGDI] Optimize UnsafeGetBitmapBits/UnsafeSetBitmapBits 2019-01-29 12:04:46 +09:00
Hermès Bélusca-Maïto
06d4fce5ee [NTOS:MM] Some fixes for NtCreatePagingFile().
- Correctly probe the FileName user pointer before capturing its contents.
- A paging file name with zero length is invalid too.
- Remember (TODO!) in the code that the lower bounds of the Safe*Size values
  need to be checked too!
2019-01-28 22:22:56 +01:00
Eric Kohl
dda77704dd [SNDVOL32] Play the default sound when the volume or balance trackbar of the master line has been changed by the user. 2019-01-28 22:05:23 +01:00
Thomas Faber
64d48843d7 [FREETYPE] Handle allocation failures in our stack-saving hacks. CORE-15642
Running out of pool is likely at least during kmtest:ExPools.
There is a chance of crashing when dereferencing these null pointers -- but
worse, there's also a chance of overwriting the IVT or BDA if a VDM BIOS
call is in progress, which can lead to crashes in non-obvious places later.
2019-01-28 14:31:49 +01:00
Eric Kohl
e2d8e588bb [SNDVOL32] Do the volume trackbar calculation like it is done in mmsys.cpl. 2019-01-28 00:59:33 +01:00
Bișoc George
dfa5ff553b [OSK] Initial implementation of a menu (#1301) 2019-01-27 17:35:26 +01:00
Denis Malikov
bcfd350e9f [APPCOMPAT] Run apps in compatibility with 6.1 SP1 (7 SP1), 6.2 (8) and 6.3 (8.1) (#1273) 2019-01-27 17:30:37 +01:00
Hermès Bélusca-Maïto
b6c49bdff2 [MOUNTMGR] Fix MSVC build after commit 53abbb06. 2019-01-27 16:09:54 +01:00
Katayama Hirofumi MZ
e7b222f4c5 [WIN32SS][NTGDI] Delete magic number 565 2019-01-27 20:54:19 +09:00
Katayama Hirofumi MZ
cc75016389 [WIN32KNT_APITEST] Check bit pattern of pvBits (#1315)
CORE-15657
2019-01-27 20:25:15 +09:00
Thomas Faber
c8f69c63de [WIN32KNT_APITEST] Test large buffers without relying on stack layout. (#1314)
CORE-15657
2019-01-27 20:08:52 +09:00
Katayama Hirofumi MZ
1cac3fbe63 [WIN32SS][NTGDI] Fix NtGdiSetBitmapBits in buffer size (#1313)
Let NtGdiSetBitmapBits function fail if buffer size was greater than 564. CORE-15657
2019-01-27 17:44:34 +09:00
Katayama Hirofumi MZ
1ad9a1deab [WIN32KNT_APITEST] NtGdiSetBitmapBits: Add tests for max buffer size 2 (#1312)
Improve NtGdiSetBitmapBits testcase again and again. CORE-15657
2019-01-27 17:17:09 +09:00
Katayama Hirofumi MZ
e80e205156 [WIN32KNT_APITEST] NtGdiSetBitmapBits: Add tests for maximum buffer size (#1311)
Improve NtGdiSetBitmapBits testcase by adding tests for maximum buffer size. CORE-15657
2019-01-27 16:35:53 +09:00
Katayama Hirofumi MZ
6b8f9c0c2b [WIN32SS][NTGDI] Alignment probe change in NtGdiSetBitmapBits (#1309)
Don't check WORD alignment in NtGdiSetBitmapBits to match Win2k3 behaviour. CORE-15657
2019-01-27 16:11:23 +09:00
Katayama Hirofumi MZ
29795a2d72 [WIN32SS][NTGDI] Improve UnsafeGetBitmapBits and NtGdiGetBitmapBits (#1308)
CORE-15657
2019-01-27 15:51:33 +09:00
Katayama Hirofumi MZ
0aa21c3366 [WIN32SS][NTGDI] Fix UnsafeSetBitmapBits (#1310)
CORE-15657
2019-01-27 15:32:52 +09:00
Hermès Bélusca-Maïto
53abbb06b5 [MOUNTMGR][MUP] Use global definition of INIT_FUNCTION/INIT_SECTION (Addendum to 71fefa32). 2019-01-27 02:40:11 +01:00
Hermès Bélusca-Maïto
19f6fc2525 [MVDM] Use again the correct CMAKE_C_COMPILER to pre-process the ASM code (addendum to 09c06a2f). 2019-01-27 02:40:10 +01:00
Hermès Bélusca-Maïto
6b1e1df5c9 [FREELDR] Re-integrate the ASM files (and corresponding C code) in MSVC builds, that were previously compiled just for GCC builds. (#1224)
- Multiboot support added back in FreeLdr MSVC builds so that it can be
  booted using e.g. GRUB. See CORE-15563.

- Re-introduce the disk drive mapper code.
2019-01-27 00:51:26 +01:00
Hermès Bélusca-Maïto
ed83552229 [FREELDR] Introduce a MSVC "linker script" file that centralizes the commands for defining section-limit symbols, and the ordering and merging of PE sections, and the necessary CMake code to use it. (#1224)
As the MSVC linker alone doesn't permit such control, the file uses
ASM language (C can alternatively be used), together with extra linker
command-line switches.

It is pre-processed 3 times: first for generating the ASM code, second
for the C code and the third time for generating the linker response
file.

In our case, the ASM code defines the __bss_start__ and __bss_end__
symbols that allow us to find the limits of the .bss section (which is
by the way automatically appended to the .data section by the MSVC linker).
The C code is used to specify the list of linker switches that can be
passed through the `#pragma comment(linker, ...)' directive (the can be
alternatively specified in the linker response section).
Finally the linker response section contains all the linker switches
that cannot be specified with the `#pragma comment(linker, ...)'
directive.

Using all this we can recycle the BSS initialization code, that has been
written originally for GCC only, also for the MSVC builds.

Also, remove the outdated .text16 section merging.
2019-01-27 00:51:25 +01:00
Hermès Bélusca-Maïto
aaee856cea [FREELDR] Minor code maintenance.
- Whitespace;

- Explicitly use string pooling (option "/GF"), so that even if it's
  used globally in the main ReactOS CMAKE file or not, we still have it
  there, because we are quite size-constrained;

- Rename the source lists (OK, we understand it's _COMMON_ ...);
- Remove redundant double inclusion of linuxboot.c;
- In the 'freeldr_common' static library, compile the ASM code first.
2019-01-27 00:51:19 +01:00
Hermès Bélusca-Maïto
0ee02b2c4d [SDK/INCLUDE] Fix the .code16 macro definition for MASM/ML.
Modify the .code16 macro so that the 16-bit code segment can get a
chance to be correctly merged with other (possibly 32-bit) code
segments, without keeping generating multiple .text segments with
different attributes and generating the corresponding LNK4078 warning.

This fixes the warning when compiling NTOSKRNL on MSVC:
"v86.S.obj : warning LNK4078: multiple '.text' sections found with different attributes (C0520040)".
2019-01-27 00:51:00 +01:00
Amine Khaldi
c90b53d5ad [MSADP32.ACM] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:18:47 +01:00
Amine Khaldi
3ea8528909 [MSACM32] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:18:13 +01:00
Amine Khaldi
127d443593 [MMDEVAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:17:35 +01:00
Amine Khaldi
31d268d584 [MMDEVAPI] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:17:08 +01:00
Amine Khaldi
0a904ca409 [MLANG_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:16:35 +01:00
Amine Khaldi
ccc3eeaea8 [MLANG] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:15:35 +01:00
Amine Khaldi
bca17f6bf6 [MCIWAVE] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:15:03 +01:00
Amine Khaldi
a9e6e64fa5 [MAPI32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:14:31 +01:00
Amine Khaldi
dd78a4bf83 [MAPI32] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:13:59 +01:00
Amine Khaldi
2ea897da44 [LOCALUI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:13:30 +01:00
Amine Khaldi
792a2286d8 [JSPROXY] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:12:47 +01:00
Amine Khaldi
20f9fb6150 [JSCRIPT_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:12:15 +01:00
Amine Khaldi
660f7b9090 [JSCRIPT] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:11:40 +01:00
Amine Khaldi
9a0babd145 [INETMIB1_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:11:11 +01:00
Amine Khaldi
4973a53fc3 [INETCOMM] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:10:33 +01:00
Amine Khaldi
c0deab6d9d [IMM32] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:10:01 +01:00
Amine Khaldi
2653fad683 [IMAADP32.ACM] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:09:32 +01:00
Amine Khaldi
ec33091a1d [IEFRAME] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:08:54 +01:00
Amine Khaldi
d03e237837 [IMAGEHLP_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:08:26 +01:00
Amine Khaldi
bd88475d94 [ICCVID] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:07:54 +01:00
Amine Khaldi
99138ae93e [HLINK_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:07:24 +01:00
Amine Khaldi
07e4452656 [HLINK] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:06:56 +01:00
Amine Khaldi
279107d5cf [HID_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:06:23 +01:00
Amine Khaldi
066d754700 [HHCTRL] Sync with Wine Staging 4.0. CORE-15682 2019-01-26 13:05:48 +01:00
Katayama Hirofumi MZ
f9037bd33f [WIN32KNT_APITEST] Improve NtGdiSetBitmapBits testcase more and more (#1307)
CORE-15657
2019-01-26 20:28:40 +09:00
Katayama Hirofumi MZ
82c7571e43 [WIN32KNT_APITEST] NtGdiSetBitmapBits: Expand tabs to spaces (#1306)
Expand Tabs to Spaces in NtGdiSetBitmapBits testcase. Follow-up of #1304.
2019-01-26 19:10:23 +09:00
Katayama Hirofumi MZ
13a6583fa0 [WIN32KNT_APITEST] Improve NtGdiSetBitmapBits more (#1304)
Add some tests. CORE-15657
2019-01-26 11:38:42 +09:00
Katayama Hirofumi MZ
08d72bd076 [WIN32KNT_APITEST] Fix NtGdiGetFontResourceInfoInternalW message 2019-01-25 23:01:07 +09:00
Amine Khaldi
7d57324d5d [GDIPLUS_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:23:03 +01:00
Amine Khaldi
07c408ae72 [PSDK] Update gdiplusflat.h. CORE-15682 2019-01-25 13:22:24 +01:00
Amine Khaldi
89f10a28f7 [GDIPLUS] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:21:54 +01:00
Amine Khaldi
4d5fa2bac7 [DNSAPI_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:21:12 +01:00
Amine Khaldi
20c427d29e [CRYPTUI] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:20:18 +01:00
Amine Khaldi
b807af385e [CRYPT32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:19:36 +01:00
Amine Khaldi
b1b70ef9ed [CRYPT32] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:19:03 +01:00
Amine Khaldi
9755a82226 [PSDK] Update wincrypt.h. CORE-15682 2019-01-25 13:18:23 +01:00
Amine Khaldi
8767115816 [CREDUI] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:17:45 +01:00
Amine Khaldi
90f41ebb28 [COMDLG32] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:17:07 +01:00
Amine Khaldi
5f7243b577 [COMCTL32_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:16:18 +01:00
Amine Khaldi
07f4be3faf [PSDK] Update commctrl.h. CORE-15682 2019-01-25 13:15:42 +01:00
Amine Khaldi
58aee30e99 [CMD_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:15:06 +01:00
Amine Khaldi
379c53db18 [AVIFIL32] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:14:32 +01:00
Amine Khaldi
0d35c5159b [ATL100_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:14:00 +01:00
Amine Khaldi
f9fd4bbc7c [ATL] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:13:28 +01:00
Amine Khaldi
2a1300f5b6 [ADVPACK] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:12:55 +01:00
Amine Khaldi
517ea70ceb [DMUSIC] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:12:18 +01:00
Amine Khaldi
a924dfff45 [DINPUT_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:11:40 +01:00
Amine Khaldi
98e62237b1 [DINPUT] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:11:07 +01:00
Amine Khaldi
e7b199daff [D3DX9_*] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:10:23 +01:00
Amine Khaldi
28cb32c393 [D3DRM_WINETEST] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:09:38 +01:00
Amine Khaldi
511039b77d [D3DRM] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:09:01 +01:00
Amine Khaldi
6971090559 [D3DCOMPILER_43] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:08:25 +01:00
Amine Khaldi
05b6b55610 [WINHLP32] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:07:47 +01:00
Amine Khaldi
f8052bd8d8 [EXTRAC32] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:07:01 +01:00
Amine Khaldi
0399644a49 [WMIC] Sync with Wine Staging 4.0. CORE-15682 2019-01-25 13:06:19 +01:00
Oleg Dubinskiy
58fc48527d [TASKMGR] Fix IDS_MSG_WARNINGTERMINATING and IDS_MSG_WARNINGCHANGEPRIORITY dialogs size in Russian translation (#1300) 2019-01-24 18:02:50 +01:00
Katayama Hirofumi MZ
484943d04f [USER32] Make App Switcher use the owner window's icon (#1299)
CORE-15672
2019-01-24 22:41:42 +09:00
Katayama Hirofumi MZ
a024ae626f [APITESTS][WIN32KNT_APITEST] Improve NtGdiEnumFontOpen testcase (#1285)
Use ok, ok_int and ok_ptr macros instead of obsolete TEST macros.
2019-01-24 22:17:40 +09:00
Katayama Hirofumi MZ
687eba26f3 [USER32] Fix AppSwitcher (Alt+Tab) (#1296)
CORE-15653
2019-01-23 22:44:11 +09:00
Bișoc George
f2e0de2f31 [OSK] Use Unicode functions explicitly (#1291) 2019-01-23 13:28:56 +01:00
Yaroslav Kibysh
5910a443c3 [NTOS:INBV] Fix the rotation line bitmap (#1295) 2019-01-23 13:24:40 +01:00
Joachim Henze
3463b2db9f [CDFS] Addendum to last commit CORE-15659
#endif placed wrong.
Thx Pierre Schweitzer, Thomas Faber, Serge Gautherie
2019-01-22 19:20:47 +01:00
Joachim Henze
bccad87f3c [CDFS] Make windows gcc release build compile, regression CORE-15659 2019-01-22 18:49:51 +01:00
Katayama Hirofumi MZ
d4505e4a7f [APITESTS][WIN32KNT_APITEST] Improve NtGdiEngCreatePalette testcase (#1284)
Use ok and ok_long and ok_ptr macros instead of obsolete TEST macros.
2019-01-22 23:01:08 +09:00
Katayama Hirofumi MZ
3bc47ebe41 [APITESTS][WIN32KNT_APITEST] Improve NtGdiDoPalette testcase (#1283)
Use ok, ok_int and ok_long macros instead of RTEST macros.
2019-01-22 21:20:49 +09:00
Katayama Hirofumi MZ
7c847f26e7 [APITESTS][WIN32KNT_APITEST] Improve NtGdiDeleteObjectApp testcase (#1282)
Use ok, ok_int and ok_long macros instead of obsolete TEST macros.
2019-01-22 21:17:58 +09:00
Katayama Hirofumi MZ
8fa1a24edc [APITESTS][WIN32KNT_APITEST] Improve NtGdiGetFontResourceInfoInternalW testcase (#1290)
Use ok macro instead of obsolete TEST macro.
2019-01-22 21:12:19 +09:00
Katayama Hirofumi MZ
377734c9ec [APITESTS][WIN32KNT_APITEST] Improve NtGdiExtTextOutW testcase (#1286)
Use ok_int macros instead of obsolete TEST macros.
2019-01-22 21:11:26 +09:00
Katayama Hirofumi MZ
1a591cbdfa [APITESTS][WIN32KNT_APITEST] Improve NtGdiFlushUserBatch testcase (#1287)
Use ok, ok_int, ok_long, and ok_ptr macros instead of TEST and ASSERT macros.
2019-01-22 21:10:22 +09:00
Katayama Hirofumi MZ
b8ca99fad5 [APITESTS][WIN32KNT_APITEST] Improve NtGdiGetRandomRgn testcase (#1293)
Use ok_int and ok_long macros instead of obsolete TEST and RTEST macros.
2019-01-22 21:07:18 +09:00
Katayama Hirofumi MZ
7123914694 [APITESTS][WIN32KNT_APITEST] Improve NtGdiGetDIBits testcase (#1289)
Use ok, ok_int and ok_long macros instead of obsolete RTEST and ASSERT macros.
2019-01-22 21:06:00 +09:00
Katayama Hirofumi MZ
e32d5a8b76 [APITESTS][WIN32KNT_APITEST] Improve NtGdiCreateCompatibleDC testcase (#1281)
Use ok, ok_int and ok_ptr macros instead of obsolete TEST macros.
2019-01-22 20:59:38 +09:00
Katayama Hirofumi MZ
0e70731358 [APITESTS][WIN32KNT_APITEST] Improve NtGdiCreateBitmap testcase (#1280)
Use ok, ok_int, ok_long and ok_ptr macros instead of obsolete TEST macros.
2019-01-22 20:52:25 +09:00
Katayama Hirofumi MZ
b7794e8112 [APITESTS][WIN32KNT_APITEST] Improve NtGdiBitBlt testcase (#1277)
Use `ok_int`, `ok_long` and `ok` macros instead of obsolete `TEST` and `TESTX` macros.
2019-01-22 20:51:00 +09:00
Katayama Hirofumi MZ
b09bceef7d [APITESTS][WIN32KNT_APITEST] Improve NtGdiCombineRgn testcase (#1279)
Use `ok_int` and `ok_long` macros instead of obsolete `TEST` macros.
2019-01-22 20:49:47 +09:00
Mark Jansen
3df31a8217 [USER32_APITEST] Show that scrollbars can be created when extra window data is requested. 2019-01-21 22:25:35 +01:00
Mark Jansen
e022d8d7cb [WIN32SS] Require at least the amount of extra memory, not the exact amount
This fixes Civ II trying to create scrollbars based on 'native' scrollbars.
2019-01-21 22:25:29 +01:00
Pierre Schweitzer
342414c7d6 [SYSDM] Meh 2019-01-21 21:27:50 +01:00
Pierre Schweitzer
2d8f0aee5c [SYSDM] Update French translation 2019-01-21 21:16:48 +01:00
Mark Jansen
c296ee510f [DBGHELP_APITEST] Skip the test when the function is not found 2019-01-21 20:42:16 +01:00
Andreas Maier
184255ffdb [DBGHELP_APITEST] Add test for SymRegisterCallbackW64. 2019-01-21 20:42:15 +01:00
Katayama Hirofumi MZ
289705caa6 [APITESTS][WIN32KNT_APITEST] Improve NtGdiArcInternal testcase (#1276)
Use ok_int() and ok_long() macros instead of obsolete TEST() macro.
2019-01-21 17:39:05 +01:00
Katayama Hirofumi MZ
6846527f67 [APITESTS][WIN32KNT_APITEST] Use ok_long for NtGdiGetBitmapBits/NtGdiSetBitmapBits (#1275) 2019-01-21 17:38:20 +01:00
Jérôme Gardou
5d6c286981 [NTOS/KE] Add diagnosis DPRINT for CORE-15642 2019-01-21 09:38:29 +01:00
Eric Kohl
9f41824321 [MMSYS] Set the tab title, implement the 'restore defaults' button and the synchronized trackbar movement. 2019-01-21 00:25:17 +01:00
Eric Kohl
431f9bf311 [MMSYS] Improvements to the speaker volume property page
- Open a separate mixer instance for the page, so that MM_MIXM_CONTROL_CHANGE notifications can be received.
- Keep line and channel configurations in a global struct.
- Handle MM_MIXM_CONTROL_CHANGE and WM_HSCROLL notifications.
2019-01-20 22:00:42 +01:00
Bișoc George
c09a7b5bd7 [NOTEPAD] Fix "Save As" dialog resource (#1272)
Fix the placement of the "Encoding" and "Endlines" selection controls.
CORE-15596
2019-01-20 19:58:26 +01:00
Stanislav Motylkov
677edc637c [WINMM] Load Wave/MIDI mapper drivers only after actual device drivers (#1241)
CORE-15620
2019-01-20 17:55:45 +01:00
Pierre Schweitzer
20ddde0a97 [MOUNTMGR] Misc. fixes to QueryDeviceInformation:
- Simplify failure path for DeviceName query failure
- Don't make stable query failure fail the whole function call

Based on a patch by Vadim Galiant

CORE-15550
2019-01-20 17:38:29 +01:00
Eric Kohl
3ae86a245d [MMSYS] Replaces some magic values 2019-01-20 16:35:52 +01:00
Eric Kohl
d301d6a378 [MMSYS] Add the speaker volume dialog.
Retrieve information on the channels and initialize the trackbars accordingly.
2019-01-20 15:59:30 +01:00
Timo Kreuzer
bb9a5f6046 [ROSTESTS] Fix 64bit issues (#1261) 2019-01-20 15:58:32 +01:00
Katayama Hirofumi MZ
efe4605177 [WIN32SS][NTUSER] Fix caret position of Ghostscript (#1271)
CORE-13934, CORE-15656
2019-01-20 23:11:54 +09:00
Pierre Schweitzer
1b92120fc9 [MDI] Fix GCC build 2019-01-20 11:09:54 +01:00
Pierre Schweitzer
32faa24733 [BUTTERFLIES] Fix GCC build 2019-01-20 11:06:42 +01:00
Thomas Faber
21ea19c40f [NTOS:KE] Remove unnecessary breakpoint in KiRaiseException. CORE-15640 2019-01-20 09:57:03 +01:00
Timo Kreuzer
2890a22179 [ROSAPPS] Fix 64 bit issues 2019-01-20 09:04:58 +01:00
Denis Malikov
37af78775d [WIN32SS:NTUSER] Fix Window-snap madness (#1246)
Desktop window was treated as possible to resize.
Fix for 7e396787

CORE-15624
2019-01-19 23:05:19 +01:00
Stanislav Motylkov
d893a6c355 [WINMM:MIDIMAP] Support Windows XP compatible MIDIMap registry setting (#1240)
CORE-15602
2019-01-19 22:48:22 +01:00
Yaroslav Kibysh
8d15720b31 [USETUP] Implement handling Home/End keys in Boot Loader Page (#1265) 2019-01-19 18:44:13 +01:00
Katayama Hirofumi MZ
d0d909245f [WIN32SS][NTUSER] Refactor PR #1226 (#1266)
Refactoring of #1226. CORE-12845
2019-01-19 23:56:33 +09:00
Jérôme Gardou
c3e4b5fec6 [OPENGL32] Fix wglChoosePixelFormat
Not asking for a feature is not asking not to have it.
2019-01-19 14:23:54 +01:00
Jérôme Gardou
bb8a3f4e09 [APITESTS] Add tests for opengl32.dll
Ensure that our SW implementation exposes the same extensions and the same pixel formats than windows.
2019-01-19 14:23:54 +01:00
Jérôme Gardou
115aa24a29 [PSDK] Add PFD_SUPPORT_COMPOSITION definition 2019-01-19 14:23:54 +01:00
Jérôme Gardou
5f2bebf7a5 [OPENGL32][MESA] Downgrade Mesa library to version 2.6
With this commit, we now use a forked version of MESA which only supports OpenGL 1.1, like the windows implementation does.
It exposes :
  - The same pixel formats
  - The same set of extensions
  - Nothing more
All of this without taking 10% of your build time.
If you need a more modern option, look at the MESA package from Rapps, which is (and must be) maintained outside of this code tree.
CORE-7499
2019-01-19 14:23:54 +01:00
Jérôme Gardou
905bcf617f [SDK] Provide .const macro for gas 2019-01-19 14:23:54 +01:00
Timo Kreuzer
3410b25fde [NTOS] Turn broken assert into DPRINT 2019-01-19 13:38:24 +01:00
Timo Kreuzer
65dbfc2868 [NTOS:Mm] Rewrite MiWriteProtectSystemImage (#749)
* The previous version was overcomplicated and broken and therefore disabled.
* The new version also enforces NX protection on x64.
* Now that protecting works, also protect the boot loaded images.
2019-01-18 22:11:43 +01:00
Katayama Hirofumi MZ
4b924a8685 [USER32_APITEST] Improve GetMessageTime tests more (#1254)
Compare GetMessageTime and GetTickCount values.
CORE-15565
2019-01-18 12:11:53 +09:00
Yaroslav Kibysh
0d86ab6a18 [NTOS:INBV] Update the boot screen's rotation bar's image (#1256)
Make it smoother than what it currently is.
2019-01-17 20:45:40 +01:00
Katayama Hirofumi MZ
b490084d38 [USER32_APITEST] Improve GetMessageTime tests 2019-01-17 09:31:35 +09:00
Katayama Hirofumi MZ
87bfbb3ec7 [WIN32SS][NTUSER] Fix PostTimeMessage message time 2019-01-16 22:59:36 +02:00
Katayama Hirofumi MZ
249d55f4a0 [USER32_APITEST] Add tests for GetMessageTime 2019-01-16 22:59:35 +02:00
Jared Smudde
7d60b2e12f [MMSYS] Set the initial media folder location. (#1248) 2019-01-16 12:53:00 +01:00
Serge Gautherie
6f2aa0cbf9 [SHELL32] CDefView: Remove a remnant string part (#1250)
Addendum to 9ae373a.
2019-01-16 12:51:49 +01:00
Thomas Faber
b4a8afe55d [MSXML3] Handle libxml2 API breakage. CORE-15280
Imports Wine commit 2a8719d280c.
2019-01-16 09:27:30 +01:00
Thomas Faber
af4421c39a [LIBXSLT] Update to version 1.1.33. CORE-15280 2019-01-16 09:27:26 +01:00
Thomas Faber
5bb277a54b [LIBXML2] Update to version 2.9.8. CORE-15280 2019-01-16 09:27:22 +01:00
Mark Jansen
61fed54064 [CTM] Add a visual indication to show there are more processes (#1222) 2019-01-16 03:39:27 +01:00
Pierre Schweitzer
d9a3fd16d4 [NTOSKRNL] Add support for callback when enumerating large pool allocations 2019-01-15 22:07:35 +01:00
Denis Malikov
7e396787ed [WIN32SS:NTUSER] Implement "Window Snap" feature (#1226)
Implemented the following actions: stick the window on the left/right or maximize it,
with the following shortcuts:
 - Win key + Arrows;
 - drag to left/right screen border;
 - double-click on top/bottom.

CORE-12845
2019-01-15 14:36:41 +01:00
Stanislav Motylkov
c95f335893 [MMSYS] Properly save Audio/MIDI In/Out in the registry
CORE-15582
2019-01-15 15:27:58 +02:00
Mark Jansen
9ae373a023 [SHELL32] CDefView: Find a reasonable place to show a context menu
Previously, we would treat the input as unsigned coordinates, this is wrong!
If the coordinates are invalid, we try to find a focused or selected item.
The center of this item is where we'll show the menu.
When there is no item, we default to 0,0
2019-01-15 14:34:53 +02:00
Mark Jansen
f9e50f5471 [ATL] Add GET_X_LPARAM and GET_Y_LPARAM to atlwin.h
Remove all local definitions
2019-01-15 14:34:53 +02:00
Mark Jansen
007ec0310c [WIN32K:NTUSER] Fix a case where the menu was off-screen on the other side
Found by Denis Malikov
CORE-15001
CORE-9037
2019-01-15 14:34:53 +02:00
Katayama Hirofumi MZ
1a4732703c [WIN32SS][USER32] Make IsHungAppWindow check FNID (#1245)
CORE-11944
2019-01-15 20:32:23 +09:00
Katayama Hirofumi MZ
9285bd19de [WIN32SS][USER32] Ghost is a hung window (#1244)
IsHungAppWindow(a ghost window) == TRUE. CORE-11944
2019-01-15 19:40:34 +09:00
Colin Finck
2440df762c [DOXYGEN] Update Doxyfile for our build of Doxygen 1.8.15. 2019-01-15 09:37:54 +01:00
Katayama Hirofumi MZ
8ca854251a [WIN32SS][NTUSER] Don't freeze Task Bar in switching the app (#1243)
This avoids taskbar hung up.
2019-01-15 13:45:28 +09:00
Eric Kohl
5f11c16ca8 [MMSYS] Move global variables into a GLOBAL_DATA struct and free allocated memory on WM_DESTROY. 2019-01-13 23:19:25 +01:00
Denis Malikov
473e0bfc83 [TASKMGR] adjust widths for status bar parts
Now "commit charge" not clipped
2019-01-13 21:33:44 +02:00
Stanislav Motylkov
e0d80a4ab6 [MMSYS] Add icons for the sound tree (#1235)
CORE-15584
2019-01-13 19:13:20 +01:00
Denis Malikov
da9accfba6 [COMCTL32] add padding for status bar text 2019-01-13 18:21:36 +02:00
Joachim Henze
daadcc6141 [GDIPLUS] Fix a regression painting gradient CORE-15479
patch is import of Wine commit 0937186f7d15fed60f77fa2014d650f4d0b6b20b
by Nikolay Sivov
2019-01-13 17:14:41 +01:00
Eric Kohl
0ec2fd4c3e [MMSYS] Fix the main volume trackbar
- Increase the height of the trackbar in order to make it fully visible.
- Remove the selection range code.
- Set a range from 0 to 500 and fix the volume calculations accordingly.
- Set a tick frequency of 50 and a page size of 100.
- Play the default sound on TB_ENDTRACK notifications.
2019-01-13 15:38:06 +01:00
Eric Kohl
fcadedb306 [MMSYS] Play default sound when the volume trackbar is released.
This works on Windows XP but it might not work on ReactOS because of unimplemented features of PlaySound().
2019-01-13 14:05:00 +01:00
Eric Kohl
5cf2a78473 [MMSYS] Replace the sound event list ListView by a TreeView.
CORE-15584
2019-01-13 10:37:21 +01:00
Extravert-ir
2b4108b2c6 [HALX86] Removed reduntant INIT_FUNCTION attribute from HalpGetSystemInterruptVector. (#1234)
This fixes livecd crashes started since 71fefa32db.
2019-01-13 01:01:31 +01:00
Stanislav Motylkov
4575747d61 [MMSYS] Fix tab-stop for group controls and comboboxes (#1231)
CORE-15581
2019-01-12 21:18:10 +01:00
Hermès Bélusca-Maïto
5e673f3118 [CMAKE] MSVC cmake settings improvements.
- Always use string pooling when building: this helps reducing the
  size of the binaries due to string redundancy coming from the usage
  of __FILE__ / __RELFILE__ in the debugging helper macros. Note also
  that GCC builds use string pooling by default.

- Use suitable add_compile_flags() command.
- Add some explanative comments for some settings.

Some numbers (obtained with my local builds):

Before / After => Reduction
===========================

freeldr.sys  :  443 KB (  453.632 bytes) /  364 KB (  372.736 bytes) => ~ 18%
win32k.sys   : 1877 KB (1.922.048 bytes) / 1562 KB (1.599.488 bytes) => ~ 17%
ntoskrnl.exe : 2253 KB (2.307.072 bytes) / 1902 KB (1.947.136 bytes) => ~ 15.6%
kernel32.dll : 3008 KB (3.080.192 bytes) / 2906 KB (2.975.744 bytes) => ~ 3.4%
2019-01-12 18:09:51 +01:00
Thomas Faber
363f5f26b1 [ACPICA] Update to version 20190108. CORE-15593 2019-01-12 16:27:54 +01:00
Thomas Faber
ecbd6353cc [ACPICA] Update to version 20181213. CORE-15593 2019-01-12 16:27:42 +01:00
Thomas Faber
bc002f1708 [FASTFAT] Avoid a use after free in VfatCloseFile. 2019-01-12 16:27:37 +01:00
Thomas Faber
bc8307205b [FASTFAT] Avoid a use after free in VfatCheckForDismount. 2019-01-12 16:27:30 +01:00
Thomas Faber
b61b18157b [LIBPNG] Update to version 1.6.36. CORE-15280 2019-01-12 16:27:18 +01:00
Stanislav Motylkov
da528a6606 [MMSYS] Properly select current MIDI output device
CORE-15582
2019-01-11 13:08:24 +02:00
Giannis Adamopoulos
75a80ec823 [COMCTL32] button: Don't erase the area of the checkbox or the text.
Attempt to fix the menace of the world, CORE-13278.
Note that this can also cause visual glitches for classic check boxes or radio buttons.
2019-01-10 23:38:02 +02:00
Mark Jansen
d2626f0c2a [WIN32K:NTUSER] Find a better position for a menu that is off-screen
Previously, we would just stick the menu on the edge of the screen.
We should actually try to flip the menu around the point of origin,
and only when that fails move it to the edge of the screen.
CORE-15001
CORE-9037
2019-01-10 19:55:39 +01:00
Denis Malikov
14df8c2e48 [MSVCRT] export _local_unwind4 for 6.0+ version 2019-01-10 19:48:49 +01:00
Stanislav Motylkov
e266b8c8c7 [SYSSETUP] Add spec definition for SetupInfObjectInstallActionW (#1228)
CORE-9897
2019-01-10 03:33:46 +01:00
Thomas Faber
0ba5bc40fb [MBEDTLS] Update to version 2.7.9. CORE-15280 2019-01-09 10:47:38 +01:00
Thomas Faber
e5fc2b4ce3 [KMTESTS:EX] Add a test that triggers big pool expansion. CORE-15051 2019-01-09 08:18:41 +01:00
Thomas Faber
e7de564bfc [NTOS:MM] Implement big pool table expansion. CORE-15051 2019-01-09 08:18:38 +01:00
Andrew Boyarshin
3636b46dfd [SPEC2DEF] Fix compilation of generated stub C files with int64 parameters 2019-01-08 18:58:56 +01:00
Luo Yufan
980d8b1b12 [TRANSLATION] Update Chinese translation. (#1227)
Update Chinese and Traditional Chinese translations.
2019-01-08 13:42:17 +01:00
Thomas Faber
b2dcb8e0d8 [WIN32K:NTUSER] Avoid dereferencing a null pointer in NC_DoNCPaint. CORE-15569 2019-01-08 11:27:33 +01:00
Pierre Schweitzer
a3f8813fff [NTOSKRNL] Add support for large allocations in !poolfind 2019-01-08 08:43:23 +01:00
Pierre Schweitzer
e1342127f0 [NTOSKRNL] In !irpfind, add info about current stack major/minor 2019-01-08 08:43:23 +01:00
Eric Kohl
38160b207d [KERNEL32] GetComputerNameExW: Fix crash in kernel32_winetest environ test 2019-01-07 22:45:33 +01:00
Giannis Adamopoulos
88a69b446b [UXTHEME] Fix a series of problems regarding ThemeCalculateCaptionButtonsPos
Only call it when needed. Also make it fail properly if the window theme could not be opened.
CORE-15564
2019-01-07 11:38:42 +02:00
Pierre Schweitzer
e6a1851684 [NTOSKRNL] Misc fixes to !irpfind 2019-01-06 23:21:20 +01:00
Pierre Schweitzer
36f90e7e46 [NTOSKRNL] Move KDBG MM functions implementation to their own file 2019-01-06 22:50:57 +01:00
Mark Jansen
0bfa6722ba [GDI32] Add missing dependency 2019-01-06 21:07:28 +01:00
Mark Jansen
8ad7517446 [WINSPOOL] Semi implement DocumentPropertiesW
CORE-15522
2019-01-06 21:07:27 +01:00
Mark Jansen
796dd5f53c [PRINTING] Semi-implement GetPrinterDriverW
CORE-15522
2019-01-06 21:07:27 +01:00
Mark Jansen
2e4457f223 [PRINTING] The first argument to PackStrings can be const. 2019-01-06 21:07:09 +01:00
Hermès Bélusca-Maïto
d272866550 [FREELDR] Minor code formatting; constify some non-mutable data. 2019-01-06 18:42:01 +01:00
Luo Yufan
95564d5e30 [TRANSLATION] Update Chinese translation. (#1223)
[CLIPBRD][SOLITAIRE][RAPPS][REGEDIT][WINHLP32][WORDPAD][FDEBUG][SYSDM][BROWSEUI][DEVMGR][IEFRAME][OLEDLG][SHELL32][SYSSETUP][INF][WINFILE][NTVDM][USER32]
2019-01-07 00:35:11 +09:00
Pierre Schweitzer
25e14ae2a8 [NTOSKRNL] Fix !irpfind usage message 2019-01-06 13:00:43 +01:00
Pierre Schweitzer
28193399ee [NTOSKRNL] Properly check for address validity in !poolfind 2019-01-06 12:58:14 +01:00
Pierre Schweitzer
47b48520b5 [NTOSKRNL] Reimplement !irpfind using !poolfind helpers
This allows avoiding one of the previous implementation limits:
leaked IRP not queued to a thread are now totally visible since
we look directly in the memory pool.
2019-01-06 12:49:57 +01:00
Pierre Schweitzer
12e579567c [NTOSKRNL] Implement !poolfind command in KDBG
For now, it allows searching for pool allocations in
both paged and non paged pool.

It is based on Andreas Schuster work to identify POOL_HEADER
structures.
2019-01-06 11:56:38 +01:00
Baruch Rutman
123a7c80e0 [NTUSER] Fix SetProcessDefaultLayout() (#1013)
- Add a check in co_UserCreateWindowEx() for parentless windows,
  that checks the default layout direction; if it's LAYOUT_RTL
  add the WS_EX_LAYOUTRTL flag to the extended window styles.

- Make the internal routine accepting also LAYOUT_LTR as a value for SetProcessDefaultLayout().
  Limit receiving value to LAYOUT_ORIENTATIONMASK (and not just LAYOUT_RTL)
  or LAYOUT_LTR, as per written in:
  https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-setprocessdefaultlayout

Now all the applications that call SetProcessDefaultLayout() to mirror the layout get mirrored.
This is based on Wine.
2019-01-06 04:35:51 +01:00
Katayama Hirofumi MZ
6e4e5a004c [FONT][GDI32] Fix font enumeration functions (#1221)
Fix EnumFonts, EnumFontFamilies and EnumFontFamiliesEx functions.
The charsets of the font substitutes are also enumerated.
Delete meaningless codes. CORE-15558
2019-01-06 10:43:34 +09:00
Katayama Hirofumi MZ
cdaff94c3d [GDI32_APITEST] Improve CreateFontIndirect testcase 2019-01-06 09:20:30 +09:00
Hermès Bélusca-Maïto
5053f1f571 [FREELDR] Simplify code by using a AddReactOSArcDiskInfo() helper, and few extra additions.
- Introduce the AddReactOSArcDiskInfo() helper to get rid of the
  duplicated reactos_arc_disk_info usage scattered amongst different
  files.

- GetHarddiskInformation(): If we cannot read the disk that has been
  enumerated by the BIOS, return a default identifier string.

- GetHarddiskInformation(): The last character of the disk identifier
  string corresponds to whether its MBR is "valid"/has the 0xAA55
  signature (use 'A') or whether it's not (use 'X'). Tested on Windows.

- Split PcInitializeBootDevices() in two: the first part of this
  function that enumerates hard disks from the BIOS is now moved into
  EnumerateHarddisks().

- The 'ValidPartitionTable' field of the ARC disk signature records must
  be initialized with correct value that is specified in the different
  AddReactOSArcDiskInfo() calls.
2019-01-05 19:39:32 +01:00
Denis Malikov
655d24d9eb [KERNEL32] make some NLS and Format functions work. Wine-sync with latest version 2019-01-05 19:01:30 +01:00
Hermès Bélusca-Maïto
ca24df9c85 [WIN32SS:NTUSER] Completely update the metrics in co_IntInitializeDesktopGraphics().
This change is similar to what is done in UserChangeDisplaySettings()
after changing screen video mode.

This allows e.g. having windows to be correctly maximized during
2nd-stage GUI setup. To compare and reproduce during 2nd-stage GUI
setup, open cmd.exe (Shift-F10) and from there a GUI app, e.g.
regedit.exe, and maximize it. Observe the limits used by the window.
2019-01-05 16:42:16 +01:00
David Quintana
01e5cb0c04 Resource file strings cleanup (#581)
[CMDUTILS/AT] Fix missing translation strings in certain files.
[NOTEPAD] Fix SUBLANG code to brazillian.
[RAPPS] Fix missing translation strings in certain files.
[FDEBUG] Fix translation string ID.
[CPL/INPUT] Fix missing translation strings in certain files.
[ACPPAGE] Fix incorrect resource IDs.
[NETSHELL] Fix incorrect resource IDs.
[DEVMGR] Fix missing translation strings in certain files.
[LSASRV] Fix missing translation strings in certain files.
[RASDLG] Fix missing translation strings in certain files.
[SHELL32] Fix missing translation strings and incorrect resource IDs.
[TAPIUI] Fix missing translation strings in certain files.
[WINFILE] Fix incorrect resource IDs.
[NTVDM] Fix missing translation strings in certain files.
[USERSRV] Fix missing translation strings in certain files.
[BROWSEUI] One more missing string.
[FLTMC] Fix missing translation strings in certain files.

Detected using the TransDiffer tool (early alpha).
This doesn't include everything anymore, but I wanted to get the PR out of the way.
2019-01-05 15:44:16 +01:00
Mark Jansen
db8488e5ca [SDK] Reset InDbgPrint state when an exception occurs
Previously this would not get reset, and all debug prints from the
current thread would be muted.
2019-01-05 15:21:40 +01:00
Eric Kohl
372363930f [NET] Implement the /add and /del options of the computer command. 2019-01-05 15:04:09 +01:00
Bișoc George
e549de4924 [VCDCONTROLTOOL] Implement Romanian & Italian translations (#1218) 2019-01-05 14:54:57 +01:00
Denis Malikov
343bc19720 [MSVCRT] export _except_handler4_common 2019-01-05 13:44:33 +01:00
Serge Gautherie
c5d8d8d289 [LOG2LINES] Use translate_line() for command line input too
NB: Last step would be to re-use translate_files()...
2019-01-05 13:39:02 +01:00
Andrew Boyarshin
04c851194c [NTDLL][RTL] Implement RtlGetFullPathName_UEx 2019-01-05 13:33:28 +01:00
Mark Jansen
e984cabad2 [APPHELP] Prevent a nullptr dereference 2019-01-05 13:11:36 +01:00
Mark Jansen
6969e85b29 [SHIMENG] Prevent a nullptr dereference 2019-01-05 13:11:35 +01:00
Mark Jansen
1692ab3fe3 [APPCOMPAT] Move sdbtagid.h and sdbtypes.h to a shared location 2019-01-05 13:11:35 +01:00
Mark Jansen
511e793502 [SHIMENG] Ignore shims that are loading 2019-01-05 13:11:35 +01:00
Mark Jansen
58918686aa [APPHELP] Fix a typo in the logging 2019-01-05 13:11:35 +01:00
Mark Jansen
aabefa30d5 [SHIMLIB] c++ compatibility 2019-01-05 13:11:09 +01:00
Timo Kreuzer
cfd1647914 [REACTOS] Fix misc 64 bit issues (#783)
* [WIN32K] Fix handle calculation in DbgGdiHTIntegrityCheck
* [NOTEPAD] Fix MSVC warnings
* [PSDK] Simplify *PROC definitions in windef.h
* [VIDEOPRT] Don't try to use NtVdmControl on x64
* [FREELDR] Fix some macros
* [CRT] Make qsort 64 bit compatible
* [NTOS] Use #ifndef _WIN64 instead of #ifdef _M_IX86 around C_ASSERTs
* [FAST486] Fix 64 bit warnings and change DWORD to ULONG, so it can be used in kernel mode
* [APPHELP_APITEST] Fix 64 bit issue
2019-01-05 10:50:11 +01:00
Thomas Faber
d67156fa98 [MPG123] Update to version 1.25.10. CORE-15280 2019-01-05 09:20:40 +01:00
Thomas Faber
d9e6c9b539 [MBEDTLS] Update to version 2.7.6. CORE-15280
Note: this disables the MBEDTLS_DEPRECATED_REMOVED configuration value,
because we require the now-deprecated MD5 & SHA functions for bcrypt.
2019-01-05 09:20:35 +01:00
Thomas Faber
9f1e053260 [LIBPNG] Update to version 1.6.35. CORE-15280 2019-01-05 09:20:21 +01:00
Bișoc George
94fd5099ca [OSK] Fix a sentence in Italian resource (#1219)
Addendum to 76002778 (see the comment left).
2019-01-04 23:14:16 +01:00
Luo Yufan
6561572847 [TRANSLATION] Improve Chinese translation of VCDControlTool. (#1217) 2019-01-04 21:20:50 +01:00
Mark Jansen
bb6dfbc473 [APISETS] Remove default kernel32 import library, since stubs no longer need it 2019-01-04 20:33:37 +01:00
Mark Jansen
149d22d857 [VERIFIER] Remove stub special case, since our normal 'stub' code no longer links against kernel32 2019-01-04 20:33:26 +01:00
Giannis Adamopoulos
b3399c68e9 [WINSRV] ConSrvConnect: Always store the control dispatcher routine
This shouldn't be used only for console applications but can potentially be used by any application to receive shutdown notifications.
MSDN provides more information in the documentation for SetConsoleCtrlHandler. Our services.exe also expect to receive shutdown notifications in this way.
2019-01-04 19:38:36 +02:00
Giannis Adamopoulos
cb2dcc0a2f [WINSRV] usersrv: Fix a wrong debug print 2019-01-04 19:30:17 +02:00
Giannis Adamopoulos
8ebff93b35 [WINSRV] usersrv: Don't terminate processes with no top level windows
Consrv will handle these.
2019-01-04 13:29:26 +02:00
Giannis Adamopoulos
cc710885d0 [WINSRV] usersrv: remove wrong dead code and fix indentation 2019-01-04 13:29:26 +02:00
Giannis Adamopoulos
4bef6f5913 [WINSRV] consrv: Implement terminating console processes on shutdown
Also stub handling non-console, non-gui processes.
2019-01-04 13:29:26 +02:00
Giannis Adamopoulos
0a80b77e76 [WINSRV] usersrv: Simplify sanity checks in UserClientShutdown
UserClientShutdown will never be called for csrss so we don't need to have a check for that. The existing check was broken and wasn't doing anything anyway.
Handle processing winlogon by doing nothing so that consrv won't be bothered about it.
2019-01-04 13:29:26 +02:00
Pierre Schweitzer
d84ab9ec7c [MOUNTMGR] Fix buffer length checking
Found by Vadim Galiant.

CORE-15549
2019-01-03 23:12:16 +01:00
Mark Jansen
6d89d19f39 [LDR] Ensure we start with a valid pointer 2019-01-03 22:52:18 +01:00
Mark Jansen
aa912422e5 [LDR] Actually allocate what is asked for 2019-01-03 22:52:18 +01:00
Mark Jansen
3e9cf62470 [LDR] Don't dereference a possible nullptr on a malformed forwarded import 2019-01-03 22:52:18 +01:00
Mark Jansen
97d0595bf6 [LDR] Don't dereference a possible nullptr 2019-01-03 22:52:06 +01:00
Bișoc George
760027783a [OSK] Update translation files (#1189)
Translate the welcome dialog resource for Italian and Romanian.
2019-01-03 22:28:03 +01:00
Yaroslav Kibysh
f759dddb4b [APPWIZ] Russian and Ukrainian Translations Update (#1215) 2019-01-03 22:20:40 +01:00
Eric Kohl
8be4a871b1 Addendum to 60f018ae: Remove obsolete DPRINTs and fix a DPRINT. 2019-01-03 21:32:33 +01:00
Pierre Schweitzer
44fdf3fc30 [RXCE] Fix leftover 2019-01-03 16:59:45 +01:00
Katayama Hirofumi MZ
dfa23b60ec [USER32] Let App Switcher activate only one window (#1214) 2019-01-03 16:34:58 +01:00
Hermès Bélusca-Maïto
8d878f4bfa [RDBSS] Fix pointer value assignation. 2019-01-03 15:49:07 +01:00
Timo Kreuzer
cdee669619 [RXCE] Fix 64 bit build 2019-01-03 14:27:15 +01:00
Eric Kohl
60f018aea6 [ACPI] Add code to retrieve packet type data from ACPI methods. This will enable the cmbatt driver to retrieve _BIF (battery information) or _BST (battery status) data. Also fix the buffer size calculation for integer and string data. 2019-01-02 23:29:12 +01:00
Pierre Schweitzer
9d0eb9b7b8 [TCPIP] Don't trust the TEB
And trust the Russian hackers to exploit that.
2019-01-02 23:02:44 +01:00
Hermès Bélusca-Maïto
333ce14dad [WIN32SS] Try to recover display when changing the display mode fails for whatever reason.
This helps when e.g. changing the resolution on the Dell Latitude D531,
which reports that it supports large resolutions (e.g. 1920x1440x32 and
others larger than 1024x768x32) but fails to apply these.
This usually happens because PDEVOBJ_pSurface(), and more precisely
ppdev->pldev->pfn.EnableSurface(), fails for these resolutions.

- PDEVOBJ_bSwitchMode(): Set the new video mode, or restore the original
  one in case of failure + release the allocated ppdevTmp if previous
  calls fail. Also unlock in reverse order of locking order.

- UserChangeDisplaySettings(): In case PDEVOBJ_pSurface() fails (but has
  reverted the original video mode), we still need to refresh the
  display since the display may have been messed up.
2019-01-02 21:12:22 +01:00
Hermès Bélusca-Maïto
fb4a6e38c7 [WIN32SS:NTUSER] Remove some hardcoded buffer sizes + number of chars vs. bytes mixup. 2019-01-02 21:12:21 +01:00
Hermès Bélusca-Maïto
cc3fbfefac [WIN32SS:NTUSER] Minor whitespace formatting. 2019-01-02 21:12:20 +01:00
Hermès Bélusca-Maïto
3f716870ca [FRAMEBUF] Correctly check the return value of the EngDeviceIoControl() call and return adequate value in DrvAssertMode(). 2019-01-02 21:12:19 +01:00
Giannis Adamopoulos
60448f83fb [NTUSER] Fix a few tests related to desktops and window stations
- NtUserOpenInputDesktop: Don't crash if there is no input desktop yet
- NtUserOpenInputDesktop: Fail if the process doesn't belong to the interactive window station
- NtUserCreateWindowStation: Clear error on success
- DesktopWindowProc: Use UserOpenInputDesktop to get a handle to the input desktop
2019-01-02 17:15:40 +02:00
Pierre Schweitzer
a9124b412d [RDBSS][RXCE] Implement IRP cancellation
CORE-15441
2019-01-02 15:02:15 +01:00
Julio Carchi
1e141573e4 [TRANSLATION] Spanish translations (#944) 2019-01-02 12:01:44 +01:00
Pierre Schweitzer
d6dc1fd231 [NTOSKRNL] Add a raw implementation of !irpfind in kdbg
This is far from perfect, and totally doesn't match the
WinDBG way of doing it. Instead of browsing pool to find
matching 'IRP' tags, we just browse all the processes
to find the queued IRP. This requires the IRPs to be queued,
obviously, and will make us miss the leaked IRPs, for instance.

Proper way to do it would be to implement !poolfind and then
rely on its implementation to find our IRPs.

Perhaps later ;-)
2019-01-01 22:00:56 +01:00
Arnav Bhatt
8ab3652c01 [TRANSLATION] Hindi translation of browseui, comctl32 and shell32 (#1209) 2019-01-01 19:43:42 +01:00
Mark Jansen
04ff7481b1 [LDR] Introduce a private heap for the loader.
This ensures we can still do stuff when the process heap is corrupted.
2019-01-01 16:20:13 +01:00
Eric Kohl
34b0516ec4 [BATTC] Fixed an oops! 2019-01-01 13:48:43 +01:00
Eric Kohl
397fa2844e [BATTC] Some tiny fixes
- Add missing parameter to a DPRINT.
- Print pointers using %p instead of %x.
- Move all executable code behind a functions initial DPRINT.
- Do not use non-trivial initializers.
- Check for NULL instead of using !.
- Add missing parentheses.
2019-01-01 13:20:41 +01:00
Eric Kohl
04524fef3b [BATTC] Fix indentation. No code changes! 2019-01-01 13:20:39 +01:00
Pierre Schweitzer
f76a097a25 [TCPIP] Check buffer before dereferencing it
CID 716664
2019-01-01 10:45:48 +01:00
Pierre Schweitzer
0150bb964a [SETUP] Silence some noisy DPRINT1 2019-01-01 10:08:02 +01:00
Hermès Bélusca-Maïto
3fc3447f3e Happy New Year 2019 everybody! 2019-01-01 00:00:00 +01:00
Luo Yufan
9f54dbff5e [TRANSLATION] Update Chinese translation. (#1212) 2018-12-31 21:47:58 +01:00
Eric Kohl
66e4dbc7ed [UMPNPMGR] PNP_GetDeviceList: Implement the enumeration of service device instances. 2018-12-31 21:38:26 +01:00
Bișoc George
a825774096 [CONTRIBUTING] Add a notice for how to set your real name/mail (#1197)
Instead of posting the links each time, they'll be posted on README for future notice.
2018-12-31 21:31:32 +01:00
Stanislav Motylkov
ccbc73ac93 [MPLAY32] Accept paths with double quotes from command-line (#1210)
CORE-15525
2018-12-31 21:29:58 +01:00
Pierre Schweitzer
01b580d876 [WIN32K] Deny deviceless calls to EngDeviceIoControl
This fixes BSOD happening in ntoskrnl coming from win32k under certain
conditions with 3rd party display drivers (such as VBox or VMware)
2018-12-31 20:35:17 +01:00
Eric Kohl
5da008c338 [UMPNPMGR] PNP_GetDeviceListSize: Implement the buffer size calculation for the enumeration of services instances. 2018-12-31 16:15:16 +01:00
Hervé Poussineau
a179012563 [ZLIB] Import upstream commit 38e8ce32afbaa82f67d992b9f3056f281fe69259:
Fix CLEAR_HASH macro to be usable as a single statement.
As it is used in deflateParams().
2018-12-31 14:23:59 +01:00
Pierre Schweitzer
89a4cde14a [TCPIP] Don't assume the TEB is always defined
Fixes the crash in kmtest:TcpIpConnect test.
2018-12-31 14:00:34 +01:00
Eric Kohl
ccb8c906b0 [UMPNPMGR] PNP_GetDeviceList/PNP_GetDeviceListSize: Move device relations code into separate functions. 2018-12-31 11:21:17 +01:00
Hervé Poussineau
c4d25d27f6 [RTL] Fix RtlNewSecurityGrantedAccess improperly zeroing output buffer 2018-12-31 11:19:36 +01:00
Pierre Schweitzer
aa55bb1bd3 [IPHLPAPI] Add support for service tags in GetOwnerModuleFromTcp/UdpEntry
If a service tag is set in owner information, then, we'll query advapi32 and
thus services to get the service name instead of the image name
2018-12-31 11:19:36 +01:00
Pierre Schweitzer
96985e0746 [TCPIP] Return the SubProcessTag when enumerating connections with owner class 2018-12-31 11:19:36 +01:00
Pierre Schweitzer
d98001de17 [TCPIP] Save the SubProcessTag when an ADDRESS_FILE is created 2018-12-31 11:19:35 +01:00
Pierre Schweitzer
1a93d83f92 [SDK] Add PsGetCurrentThreadTeb() to the DDK 2018-12-31 11:19:35 +01:00
Pierre Schweitzer
abb6fd83a4 [ADVAPI32_APITEST] Add tests showing that first field of OwningModuleInfo is the tag
Also, show that querying owner information about a connection owned by a service
returns the service name, and not the image nor its path.

Obviously, that fails in ReactOS.
2018-12-31 11:19:29 +01:00
Katayama Hirofumi MZ
f757a13519 [FONT][WIN32SS] Partially implement font/text rotation (#1207)
Partially implement font/text rotation by LOGFONT.lfEscapement and improve the rendering image. If the angle was not a multiple of 90 degrees, then the background won't be filled. CORE-11848, CORE-15319
2018-12-31 18:56:43 +09:00
Luo Yufan
cfddf95d6f [TRANSLATION] Update Chinese translation. (#1205)
[NET][DISKPART][WINLOGON][ACCESS][APPWIZ][DESK][JOY][MMSYS][POWERCFG][SYSDM][NETCFGX][NETID][SAMSRV][TAPIUI][INF] Update Chinese translation.
2018-12-31 18:47:37 +09:00
Bișoc George
96228ccc0a [APPWIZ] Do not hardcode the strings (#1208)
Let's make those message strings translatable.
2018-12-31 16:42:53 +09:00
Pierre Schweitzer
c10901966e [SERVICES] Properly check again PID
This fixes services not being found.
With that commit and the previous one, I_QueryTagInformation is now fully
functionnal and properly returns service name for a specific tag
2018-12-30 21:44:40 +01:00
Pierre Schweitzer
ebf8785661 [SERVICES] pszName is a string, mark it so
This fixes returning string with RI_ScQueryServiceTagInfo
2018-12-30 21:44:39 +01:00
Pierre Schweitzer
29b46995aa [ADVAPI32] When starting or sending a control to a service, set the tag in the TEB
This now allows tracking the threads of the services thanks to their tag.

This fixes the failing test in advapi32:ServiceEnv
2018-12-30 21:44:39 +01:00
Pierre Schweitzer
446e13745c [ADVAPI32] Stop pretending our advapi32 is NT6+
This is wrong and messes up with internal structures (such as TEB).
For the two needed functions which are "NT6+", they were exported
with NT6, but already existed in W2K3 SP2.

This might fix random bugs

CORE-15526
2018-12-30 21:44:39 +01:00
Pierre Schweitzer
2ee627ba63 [SERVICES] On service start control message, send the service tag 2018-12-30 21:44:25 +01:00
Eric Kohl
6183774efa [UMPNPMGR] PNP_GetDeviceList: Implement the enumeration of all device instances. 2018-12-30 17:15:40 +01:00
Hermès Bélusca-Maïto
6d5a7b1ce3 [FREELDR] Explicitly call RamDiskInitialize() in RamDiskLoadVirtualFile(). 2018-12-30 15:26:44 +01:00
Hermès Bélusca-Maïto
7d6cbea42d [USETUP] Fix the strings given to the printf-like functions (addendum to a3168373). 2018-12-30 15:26:44 +01:00
Hermès Bélusca-Maïto
f488102c86 [CDFS] Addendum to 5429771b, 6c733856 and 3c64b4cb (r75579): When the CDFS driver is used as a fixed disk FS,
the type of device it should return must not be FILE_DEVICE_CD_ROM, but must be the actual underlying one!

This fixes recognizing *removable* USB keys as disks and not CD-ROMs.

CORE-13184
2018-12-30 15:26:43 +01:00
Hermès Bélusca-Maïto
bf6b5e1ceb [NTOS] Fix a NULL-pointer access bug. 2018-12-30 15:26:43 +01:00
Hermès Bélusca-Maïto
fefb982d64 [NTOS] Don't use TAG_IO_NAME when calling ExFreePoolWithTag() for freeing FileObject->FileName.Buffer .
This may look strange, since this buffer is originally allocated using
the TAG_IO_NAME tag. However, it happens that file-system drivers are
allowed to re-allocate this buffer: this is what the MS' open-sourced
CDFS driver does, see e.g. CdCommonCreate() and CdNormalizeFileNames()
in cdfs/create.c .

This fixes a pool tag mismatch 'mNoI' != 'nFdC' BSOD when resources
are freed when closing a file that has been opened with a relative name
on a CDFS-mounted volume.
2018-12-30 15:26:42 +01:00
Hermès Bélusca-Maïto
d3a97e2228 [NTOS] Code formatting only. 2018-12-30 15:26:35 +01:00
Eric Kohl
969de9062c [UMPNPMGR] PNP_GetDeviceListSize: Implement the buffer size calculation for a list of all device instances. 2018-12-30 14:43:10 +01:00
Pierre Schweitzer
1a9b9800b1 [SERVICES] Implement ScmGenerateServiceTag and call it on service creation
This allows assigning an unique ServiceTag to each Win32 service
2018-12-30 14:27:04 +01:00
Pierre Schweitzer
519a2c9f6f [SERVICES] Implement ScmGetServiceNameFromTag 2018-12-30 14:27:04 +01:00
Pierre Schweitzer
90f5e6b6c3 [SERVICES] Implement RI_ScQueryServiceTagInfo 2018-12-30 14:27:03 +01:00
Pierre Schweitzer
e29a99245b [ADVAPI32] Implement I_ScQueryServiceTagInfo 2018-12-30 14:27:03 +01:00
Pierre Schweitzer
19304da5c3 [ADVAPI32] Implement I_QueryTagInformation 2018-12-30 14:27:02 +01:00
Pierre Schweitzer
dfaee51f98 [SERVICES] Define the RI_ScQueryServiceTagInfo RPC call
All the definitions are taken from ProcessHacker:
https://github.com/processhacker/processhacker/blob/master/phnt/include/subprocesstag.h
2018-12-30 14:26:57 +01:00
Eric Kohl
4f37d96857 [UMPNPMGR] PNP_GetDeviceList: Implement the enumeration of device instances for a given enumerator. 2018-12-30 12:58:30 +01:00
Timo Kreuzer
71fefa32db [NDK][NTOS] Add global definition of INIT_FUNCTION/INIT_SECTION (#779)
* Add an NDK header to define INIT_FUNCTION/INIT_SECTION globally
* Use _declspec(allocate(x)) and _declspec(code_seg(x)) on MSVC versions that support it
* Use INIT_FUNCTION on functions only and INIT_SECTION on data only (required by MSVC)
* Place INIT_FUNCTION before the return type (required by MSVC)
* Make sure declarations and implementations share the same modifiers (required by MSVC)
* Add a global linker option to suppress warnings about defined but unused INIT section
* Merge INIT section into .text in freeldr
2018-12-30 12:19:11 +01:00
Eric Kohl
7c66247343 [UMPNPMGR] PNP_GetDeviceListSize: Implement the buffer size calculation for given enumerators and take care of the terminating double Unicode null character. 2018-12-30 09:06:59 +01:00
Thomas Faber
e3c8002dfc [WIN32K:NTUSER] Reference menus owned by a popup menu. CORE-15504 2018-12-30 00:25:01 +01:00
Eric Kohl
a9b88efa7c [UMPNPMGR] PNP_GetDeviceList / PNP_GetDeviceListSize: Implement the buffer size calculation and device instance enumeration for a given enumerator and device name. 2018-12-29 22:13:32 +01:00
Pierre Schweitzer
830f2998ab [ADVAPI32_APITEST] Unknown field isn't that unknown and should contain "1"
See processhacker source code (as reference)
2018-12-29 22:09:52 +01:00
Timo Kreuzer
bcb0d7c6c9 [CABMAN] Fix a problem with creating temp files on some Windows system 2018-12-29 21:37:42 +01:00
Mark Jansen
86ea03bf51 [FONT][WIN32SS] Re-add casts for gcc 2018-12-29 20:06:04 +01:00
Mark Jansen
85db46d75c [FONT][WIN32SS] Remove casts 2018-12-29 19:47:00 +01:00
Mark Jansen
971c657b80 [FONT][WIN32SS] Hold the freetype lock while accessing freetype data 2018-12-29 19:47:00 +01:00
Mark Jansen
2e44e5ce54 [FONT][WIN32SS] Fix a memory leak 2018-12-29 19:47:00 +01:00
Mark Jansen
1f13b95e5b [FONT][WIN32SS] Fix a memory leak 2018-12-29 19:47:00 +01:00
Mark Jansen
1d1b7f46fc [FONT][WIN32SS] Hold the freetype lock while accessing freetype data 2018-12-29 19:47:00 +01:00
Mark Jansen
436d8d962a [FONT][WIN32SS] Hold the freetype lock while accessing freetype data 2018-12-29 19:46:59 +01:00
Mark Jansen
2fa400b521 [FONT][WIN32SS] Do not return an uninitialized variable 2018-12-29 19:46:59 +01:00
Eric Kohl
aecc523b6a [NTOS:IO] Fix indentation. No code changes. 2018-12-29 17:49:38 +01:00
Katayama Hirofumi MZ
c5f89b8159 [APPWIZ] Show message box upon error 2018-12-29 05:55:19 +09:00
Pierre Schweitzer
4ed6b1ffca [SETUP] Add support for selecting FS type in unattended setups
By default, we still fallback to FAT if nothing asked, or if there
is an invalid input.
0 is FAT, 1 is BtrFS. This can be grown as soon as we add more IFS.
2018-12-28 20:36:47 +01:00
Thomas Faber
c526f94b8c [WIN32K:NTUSER] Acquire the user lock exclusively in NtUserGetSystemMenu. CORE-15512 2018-12-28 13:59:33 +01:00
Thomas Faber
0013b0f71c [NTDLL:LDR] Avoid passing an uninitialized variable to another function. 2018-12-28 13:41:09 +01:00
Katayama Hirofumi MZ
65f0926086 [MENU][WIN32SS] Fix non-menubar menu text Y position (#1199)
CORE-15226
2018-12-28 12:12:42 +09:00
Mark Jansen
ec5c0c926b [NTOS] When checking something for NULL, let's initialize it to NULL... 2018-12-27 23:03:22 +01:00
Eric Kohl
b17e8a5e3c [ADVAPI32] CreateProcessAsUserA/W: Partially revert an obvious case of over-engineering. Only share the common parts! Now it looks a lot better. No more stupid bUnicode! 2018-12-27 19:29:20 +01:00
Luo Yufan
c34833390a [TRANSLATION] Update Traditional Chinese translation. (#1193) 2018-12-27 16:24:24 +09:00
Katayama Hirofumi MZ
6ee576f91d [FONT][WIN32SS] Optimize a bit 2018-12-27 09:23:49 +09:00
Luo Yufan
d1de19002a [TRANSLATION] Update Traditional Chinese translation. (#1192) 2018-12-26 21:02:23 +01:00
Eric Kohl
079f7027f6 [NTOS:IO] When a device has been started, create an Enum sub key to its service key and add the device instance name to the Enum sub key. 2018-12-25 23:04:27 +01:00
Katayama Hirofumi MZ
be84465883 [FONT][WIN32SS] Follow-up of #1184 2018-12-25 21:54:33 +09:00
Pierre Schweitzer
e6cd48809a [BTRFS] Reduce diff with upstream
CORE-15452
2018-12-25 13:50:41 +01:00
Pierre Schweitzer
f75ea083e3 [NTOSKRNL_VISTA] Implement FsRtlGetEcpListFromIrp and FsRtlGetNextExtraCreateParameter
CORE-15452
2018-12-25 13:50:41 +01:00
Pierre Schweitzer
a76b8843a8 [NTOSKRNL_VISTA] Implement IoGetIrpExtraCreateParameter
CORE-15452
2018-12-25 13:50:40 +01:00
Katayama Hirofumi MZ
d6cfeaef51 [FONT][WIN32SS] Refactor rendering text background (#1184)
Simplify the background filling codes. CORE-14856
2018-12-25 20:41:25 +09:00
Katayama Hirofumi MZ
968c8f37f1 [WIN32SS] Fix RLE4 bitmap decoding (#1188)
CORE-10553, CORE-11399
2018-12-25 18:04:21 +09:00
Luo Yufan
0a3f6f3b47 [TRANSLATION] Update Chinese translation. (#1187)
[REG][REACTOS][EXPLORER][APPWIZ][CONSOLE][INETCPL][INPUT]
[INTL][OPENGLCFG][TIMEDATE][DEVCPUX][COMCTL32][COMDLG32]
[MSGINA][NETCFGX][NETID][SETUPAPI][SHELL32][SYSSETUP]
Update Simplified and Traditional Chinese translations.
2018-12-25 17:28:36 +09:00
Eric Kohl
9703a42a6e [MC] Fix the build 2018-12-24 18:19:58 +01:00
Eric Kohl
f0d096838b [MC] Fix build issue? 2018-12-24 18:10:38 +01:00
Eric Kohl
69ff796168 Fix the build 2018-12-24 17:03:00 +01:00
Eric Kohl
7a27dc8a55 [NET] Add (incomplete) COMPUTER command and rename help.c to cmdHelp.c. 2018-12-24 14:39:26 +01:00
Luo Yufan
c4118adf80 [COMDLG32] Update Simplified Chinese translation. 2018-12-24 12:00:29 +01:00
Luo Yufan
098c69679f [COMCTL32] Update Simplified Chinese translation. 2018-12-24 12:00:29 +01:00
Eric Kohl
4e28e65490 [NET] Move TIME, USE, USER, VIEW and NET command syntax and help texts into a message table and add the translators names to the message file. 2018-12-24 11:48:23 +01:00
Eric Kohl
4984e1b810 [NET] Move START, STATISTICS and STOP command syntax and help texts into a message table. 2018-12-24 10:20:44 +01:00
Eric Kohl
01af56140c [NET] Move PAUSE, PRINT, SEND, SESSION and SHARE command syntax and help texts into a message table. 2018-12-24 01:25:30 +01:00
Eric Kohl
e560fa2741 [NET] Move HRELPMSG, LOVALGROUP and NAME command syntax and help texts into a message table. 2018-12-24 00:13:16 +01:00
Eric Kohl
e1824b5bd3 [NET] Move FILE, GROUP and HELP command syntax and help texts into a message table. 2018-12-23 21:42:49 +01:00
Hermès Bélusca-Maïto
02e4ff8eb3 [USETUP] Add SETUP_INIT_PAGE in the list of virtual pages. 2018-12-23 21:02:08 +01:00
Bișoc George
d6141954f2 [OSK] Add missing welcome box resource for Estonian (#1181) 2018-12-23 20:46:36 +01:00
Hermès Bélusca-Maïto
d23fa54488 [USETUP] Modify the integrated user-mode PnP manager along the lines of UMPNPMGR, so that we can wait until all the queued device installations finish before continuing the installation further.
Add a corresponding please-wait page and update the translations.
2018-12-23 20:37:14 +01:00
Hermès Bélusca-Maïto
9f1c8ac020 [USETUP] Check for invalid INF handles before doing operations. 2018-12-23 20:37:13 +01:00
Eric Kohl
34e9290821 [NET] Move COMPUTER, CONFIG and CONTINUE command syntax and help texts into a message table. 2018-12-23 20:22:48 +01:00
Pierre Schweitzer
d0b263f26f [SDK] Set proper lang IDs, aka fix build 2018-12-23 18:22:57 +01:00
Luo Yufan
35aa56a8ac [FONTVIEW] Update Traditional Chinese translation. (#1180) 2018-12-23 17:00:09 +01:00
Eric Kohl
7292af515d [NET] Move ACCOUNTS command syntax and help text into a message table. 2018-12-23 16:50:25 +01:00
Pierre Schweitzer
e16241255d [NTOSKRNL] Set the MemoryMaker flag when executing write behind 2018-12-23 14:59:42 +01:00
Pierre Schweitzer
7e97071c8b [NTOSKRNL] Implement write behind in Cc
For now, this is just a split between scan and flush that
were both done during lazy scan previously.
Lazy scan shouldn't perform any write operation, but only
queue a write behind operation.

Our implementation is far from the original, as it seems
our lazy scan should queue a write behind operation per
shared cache map. Right now, we only perform global
operation.
2018-12-23 14:45:38 +01:00
Eric Kohl
d5c74ae6fe [NET] Load netmsg.dll right from the start and print some messages using netmsg.dll rather than local strings.
@Translators: Please start translating messages from netmsgmsg.mc and errorcodes.mc (located in sdk\include\reactos\mc). They will be used instead of local strings.
2018-12-23 14:18:51 +01:00
Hermès Bélusca-Maïto
2955ed91ab [UMPNPMGR] Use HeapReAlloc() to reallocate the PnP events buffer. Fix a memory leak in DeviceInstallThread(). 2018-12-23 14:09:17 +01:00
Hermès Bélusca-Maïto
9e18da43fe [UMPNPMGR] Minor formatting, and enable a DPRINT1 in case NtGetPlugPlayEvent() fails and the PnpEventThread() thread unexpectedly terminates due to that. 2018-12-23 14:09:16 +01:00
Pierre Schweitzer
cdc419eb18 [KMTESTS:CC] Fix a typo, definitely showing this code path is not used during the test 2018-12-23 12:31:14 +01:00
Pierre Schweitzer
1a267045f8 [NTOSKRNL] Honor files that shouldn't be lazy written 2018-12-23 12:10:58 +01:00
Pierre Schweitzer
34b6a28764 [KMTESTS:CC] Add tests showing a dirty VACB isn't flushed on file growing
CORE-11819
2018-12-23 12:04:39 +01:00
Pierre Schweitzer
0917c64812 [NTOSKRNL] When growing a file, invalid the last VACB so that it can be refreshed
This will avoid corruption when a file size is little grown and read afterwards.
Up to now, FSD where reading 0es instead of expected data, causing corruption.

This fixes MS FastFAT not being able to mount a FAT volume in ReactOS, corrupting
the FAT.
This also fixes the CcSetFileSizes kmtest tests.

This is based on a patch by Thomas Faber.

CORE-11819
2018-12-23 11:19:14 +01:00
Eric Kohl
5efe6f00a9 [NETMSG] Fix message table include statement and build netmsg.dll. 2018-12-22 19:04:55 +01:00
Eric Kohl
5c6eeb5018 [MC] Remove some useless quotation marks from message strings. 2018-12-22 19:04:54 +01:00
Pierre Schweitzer
9cbd1cad0e [FONTSUB] Fix build² 2018-12-22 15:02:16 +01:00
Pierre Schweitzer
6b4d6d40d6 [FONTSUB] Fix build 2018-12-22 14:52:02 +01:00
Pierre Schweitzer
0b5c1503c4 [KMTESTS:CC] Add a trace to identify failing tests 2018-12-22 14:36:45 +01:00
Luo Yufan
eca1aa87a4 [TRANSLATION] Update Chinese shortcut translation (#1179)
* [INF] Update Traditional Chinese translation.
* [ROSAPPS] Update Chinese translation.
* [FONTSUB] Add Traditional Chinese translation.
* [FONTSUB] Add Traditional Chinese translation.
* [FONTSUB] Update Simplified Chinese translation.
* [ROSAPPS] Update Chinese translation.
* [FONTSUB] Update Simplified Chinese translation.
2018-12-22 22:35:33 +09:00
Pierre Schweitzer
f7c0236fc1 [KMTESTS:CC] Add more tests for SetFileSizes
These are covered by Thomas' patch.

CORE-11819
2018-12-22 12:42:05 +01:00
Pierre Schweitzer
ba5d6e977b [KMTESTS:CC] Add tests for CcSetFileSizes
These are passing in W2K3 but failing in ReactOS.

CORE-11819
2018-12-22 12:32:02 +01:00
Thomas Faber
c086edf366 [USP10] Don't mix character and glyph index caches. CORE-14226
Import Wine commits by Nikolay Sivov:
* d1e618d31da usp10: Use glyph index consistently in ScriptGetGlyphABCWidth().
* 8d018d8d1da usp10: Make sure metrics cache is used with glyph indices only.
* eda3a3e37da usp10: Remove extra parentheses.

Fixes font display in UltraISO and GOG installers.

See also https://bugs.winehq.org/show_bug.cgi?id=44410
2018-12-22 11:29:24 +01:00
Serge Gautherie
4d1f13cf77 [NTOS:CC] CcCanIWrite(): Use BYTES_TO_PAGES(Length) 2018-12-21 19:20:59 +01:00
Pierre Schweitzer
8785b10917 [IPHLPAPI_APITEST] Add tests for GetOwnerModuleFromUdpEntry 2018-12-21 19:17:11 +01:00
Pierre Schweitzer
78d703933d [SDK] Define GetOwnerModuleFromUdpEntry() 2018-12-21 19:17:11 +01:00
Pierre Schweitzer
f42a6c16f2 [IPHLPAPI_APITEST] Add tests for GetExtendedUdpTable 2018-12-21 19:17:11 +01:00
Oleg Dubinskiy
637fcbb9bc [COMDLG32] Update Ukrainian translation for NEWFILEOPENV2ORD dialog (#1175) 2018-12-21 16:49:05 +01:00
Oleg Dubinskiy
3d1e8143c2 [COMDLG32] Update Russian translation for NEWFILEOPENV2ORD dialog (#1174) 2018-12-21 16:48:36 +01:00
Pierre Schweitzer
1435ff95b4 [NTOSKRNL] Don't call AcquireForLazyWrite with the master lock held
This incorrect behavior was leading to a call at too high IRQL for paged code.
This was triggered by MS FastFAT.

ReleaseFromLazyWrite call was already correctly called to that regard.

CORE-11819
2018-12-21 08:46:40 +01:00
Serge Gautherie
85cd2849c0 [D3DCOMPILER_43] Fix a MSVC-x64 warning about dxbc_init() (#1173)
"...\utils.c(561) : warning C4028: formal parameter 2 different from declaration"

Cherry-pick:
ffe9346120
CORE-7538
2018-12-21 02:53:42 +01:00
Lee Schroeder
94e4c696e5 [THEMEUI][BOOTDATA] Add the Red, White, Blue Classic Color Scheme for Classic Theme, and Localization (#1059)
Adds the 'Red, White, and Blue' Color Scheme used by the Classic Theme and adds localization for all the color schemes into themeui.dll.

Translators, please check the language files for potential copypasta errors.
2018-12-21 00:38:45 +01:00
Hermès Bélusca-Maïto
b2bad34b9b [NTOS] Addendum to 03873aee: check that the computed size of the OEM-converted string is less than MAXUSHORT. 2018-12-21 00:34:56 +01:00
Serge Gautherie
5c77cd9050 [LOG2LINES] Partially sync output format from command line input (#1109) 2018-12-21 00:27:01 +01:00
Serge Gautherie
c2083ed360 [JSCRIPT] Fix a MSVC-x64 warning about to_uint32() (#1172)
"...\jsutils.c(679) : warning C4028: formal parameter 3 different from declaration"

Cherry-pick:
961d5c8ed0
CORE-7538
2018-12-21 00:07:24 +01:00
Katayama Hirofumi MZ
edc849490d [ROSAPPS][VGAFONTEDIT] Refactor on OpenInfo 2018-12-20 23:37:08 +09:00
Katayama Hirofumi MZ
0a723a2c75 [ROSAPPS][VGAFONTEDIT] Fix memory leaks 2018-12-20 23:19:01 +09:00
Luo Yufan
b460183366 [TRANSLATION] Update Chinese translation. (#1170)
* [BROWSEUI] Update Traditional Chinese translation.
* [BROWSEUI] Update Simplified Chinese translation.
* [SHELL32] Update Traditional Chinese translation.
* [REGEDIT] Update Traditional Chinese translation.
* [BROWSEUI] Update Traditional Chinese translation.
2018-12-20 22:40:03 +09:00
Katayama Hirofumi MZ
56297438a5 [ROSAPPS][VGAFONTEDIT] String/Memory check 2018-12-20 22:33:59 +09:00
Jared Smudde
fb8fe4a08c [DEVMGMT] Replace the blurry 32pixel icon with a clearer one. (#1169)
Device Manager's icon improvement.
2018-12-20 17:38:32 +09:00
Katayama Hirofumi MZ
6d63d76655 [USETUP][NTDLL_APITEST][KBDROST] Allow non-Latin codepage users to build ReactOS on MSVC (Retrial of #1150) (#1168)
- The converter is code7bit I made. code7bit: https://github.com/katahiromz/code7bit
- This converter converts non-clean characters in string literals.
- However I couldn't erase a ton of codepage C4819 warnings.
- CORE-15447

You can edit an European source file as follows:
- Right click the file in the Solution Explorer.
- Select "Open With...".
- Choose "C++ Source Code Editor (with encoding)".
- Choose "Central European (Windows) - Codepage 1260".
2018-12-20 17:25:32 +09:00
Pierre Schweitzer
daf9743c7b [NTOSKRNL] Check that caller has the priviliege to unload a driver
Also, probe the service name when unloading a driver if called from
user-mode. This will avoid that userland applications can trigger an
invalid read in the kernel (and thus, a BSOD).

CORE-15468
2018-12-20 08:50:51 +01:00
Hermès Bélusca-Maïto
bc5acd8102 [NTOS] Minor formatting + don't hardcode sizeof(UCHAR) value. 2018-12-20 03:47:46 +01:00
Hermès Bélusca-Maïto
f4597b5540 [NTOS] Addendum to d8cb37bf: return the correct Status from NtAllocateUuids(). 2018-12-20 03:47:45 +01:00
Hermès Bélusca-Maïto
03873aeef3 [NTOS] Fixes for NtDisplayString().
- Require the user to have TCB privilege for using this function.
- Probe and capture the user-provided string (and avoid usermode-triggered BSODS ;-)
- Allocate the OEM-converted string in *NonPagedPool* because we are
  going to transmit the buffer to BOOTVID.
2018-12-20 03:47:36 +01:00
Luo Yufan
25d076789a [TRANSLATION] Update Traditional Chinese translation. (#1166)
Translations for DESK, HDWWIZ, SYSDM, TIMEDATE and BROWSEUI.

If any Taiwanese contributors are present, please help improving the translations!
2018-12-20 03:25:12 +01:00
Stanislav Motylkov
c1f0e89e21 [NETSHELL] Use distinct icon for connection status window (#1167)
CORE-15445
2018-12-20 00:35:22 +01:00
Pierre Schweitzer
4f8b041bf0 [NTOSKRNL] Drop the ViewLock mutex in favour of the master spin lock
This will allow Cc calls during DPC, which is required by MS FastFAT

CORE-11819
2018-12-19 22:51:45 +01:00
Eric Kohl
b67dbdbea5 [NTOSKRNL] Fix indentation. No code changes. 2018-12-19 19:18:21 +01:00
Eric Kohl
7e56b21ad6 [NTOSKRNL] Fix indentation. No code changes. 2018-12-19 19:18:20 +01:00
Giannis Adamopoulos
1a8d9f12d6 [NTUSER] Implement creating the system threads
- Add UserCreateSystemThread function that will signal csrss to create a new system thread.
- NtUserCreateWindowStation: Create the raw input thread and the desktop thread when the IO window station gets created.
- IntMakeHungWindowGhosted: Create the ghost system thread that will own all ghost windows.
- Let the raw input thread manage the window station of csrss.

[USERSRV] Remove system threads creating hack
- Implement SrvCreateSystemThreads
- Don't create the system threads in UserServerDllInitialization.
2018-12-19 16:13:18 +02:00
Giannis Adamopoulos
9924da34cc [USERSRV] Add definition for the USER_CREATE_SYSTEM_THREAD api message 2018-12-19 16:13:18 +02:00
Giannis Adamopoulos
3ec7b163c9 [WINSRV] Add a hack to fix giving the api port to win32k
- Register our api port with win32k in SrvRegisterLogonProcess because UserClientConnect is never really called.

[NTUSER] Silence a noisy trace
2018-12-19 16:13:18 +02:00
Giannis Adamopoulos
dad76af8a4 [NTUSER] Fix desktop and window station assignment for csrss
- NtUserSetInformationThread: Stub UserThreadUseActiveDesktop and UserThreadRestoreDesktop
- Properly mark the first thread that enters win32k belonging to csrss. At this point we assume that since gpepCSRSS isn't initialized yet, it probably is the first thread.

[WINSRV] Use NtUserSetInformationThread to set the current desktop when needed
-When csrss needs to use user32 or enter win32k, it first needs to assign the current thread to a desktop.
2018-12-19 16:13:18 +02:00
Giannis Adamopoulos
298a46acbf [NTUSER] Don't crash when the current thread doesn't have a desktop 2018-12-19 16:13:18 +02:00
Giannis Adamopoulos
b2a5f5dbb3 [WINSRV] Fix setting the console title 2018-12-19 16:13:18 +02:00
Baruch Rutman
3d991ea5a7 [TRANSLATION][USETUP] Complete Hebrew translation (#1163)
- Code-page 862, Hebrew text is in visual order.
- Use escape sequences for quotation marks.
2018-12-19 13:20:18 +01:00
Katayama Hirofumi MZ
6d47eab526 [ROSAPPS][VGAFONTEDIT] Allow file drop (#1165)
- Allow file drop on EXE file.
- Allow file drop on the main window.
2018-12-19 21:08:25 +09:00
Luo Yufan
bba8262bc1 Update Chinese translation. (#1164)
* [SYSSETUP] Update Simplified Chinese translation.
* [SYSSETUP] Update Traditional Chinese translation.
* [SHELL32] Update Traditional Chinese translation.
* [VCDCONTROLTOOL] Update Simplified Chinese translation.
* [VCDCONTROLTOOL] Update Traditional Chinese translation.
2018-12-19 21:04:19 +09:00
Katayama Hirofumi MZ
02936d4c67 [DEVMGR][NETCFGX][MSCONFIG][NETSHELL] Fix and improve icons (#1143)
CORE-15445
2018-12-19 20:07:17 +09:00
Thomas Faber
0d6dcee968 [CRT] Use explicit C linkage for intrinsic functions.
Fixes MSVC warnings:
sdk\include\crt\xmmintrin.h(33): warning C4162: '_mm_getcsr': no function with C linkage found
sdk\include\crt\xmmintrin.h(35): warning C4162: '_mm_setcsr': no function with C linkage found
2018-12-19 10:55:20 +01:00
Pierre Schweitzer
549793b8a4 [NTOSKRNL] Fix copy/pasta ;-) 2018-12-19 08:15:11 +01:00
Pierre Schweitzer
d8cb37bf15 [NTOSKRNL] Probe parameters in NtAllocateUuids() if called from user-mode
This will avoid that userland applications can trigger an invalid write in
the kernel (and thus, a BSOD).

CORE-15462
2018-12-19 08:09:04 +01:00
Oleg Dubinskiy
4a8c57fcbc [VCDCONTROLTOOL] Add Ukrainian translation 2018-12-18 23:21:07 +01:00
Pierre Schweitzer
6ca1c55c6e [NTOSKRNL] Only allow SYSTEM to call NtSetUuidSeed()
Also, validate input buffer before attempting any operation on it.
This will avoid userland applications to be able to trigger an invalid
read in the kernel (and thus a BSOD).

Regarding access restriction, see:
https://stackoverflow.com/questions/1254244/need-access-to-ntsetuuidseed-from-a-non-localsystem-process

CORE-15460
2018-12-18 23:12:41 +01:00
Serge Gautherie
36c1b87a0b [PSDK] Fix 5 MSVC-x64 "C4028" warnings about SQL*() (#1160)
Missed parts of sqlext.h in r74826 WineSync.
CORE-13362 CORE-7538
2018-12-18 22:48:40 +01:00
Yaroslav Kibysh
8540ab04d7 [TRANSLATION] Ukrainian Translation Update & OEM-866 Code Page Problem (#1133)
Also add the Ї ї Є є characters to the VGA font for code page 866.
2018-12-18 18:38:42 +01:00
Luo Yufan
981cbb1b8c [TRANSLATION] Update Chinese translation (zh_CN & zh_TW) (#1159) 2018-12-18 17:24:35 +01:00
Serge Gautherie
58135d7d41 [CYLFRAC] Fix 3 MSVC-x64 warnings about TimeProc() (#1157)
- "...\cylfrac.c(160): warning C4028: formal parameter 3 different from declaration"
- "...\cylfrac.c(160): warning C4028: formal parameter 4 different from declaration"
- "...\cylfrac.c(160): warning C4028: formal parameter 5 different from declaration"

CORE-7538
2018-12-18 13:30:28 +01:00
Serge Gautherie
57786d7d3a [CYLFRAC] Fix a MSVC-x64 warning about hwnd (#1158)
"...\cylfrac.c(160): warning C4311: 'type cast': pointer truncation from 'HWND' to 'DWORD'".
2018-12-18 13:29:03 +01:00
Pierre Schweitzer
963f715c69 [VCDCONTROLTOOL] Enable Spanish translation
Addendum to 1cb1da5 which was an addendum to be8a835
2018-12-18 08:20:27 +01:00
Luo Yufan
4b7f1e0a9d [TRANSLATION] Update Traditional Chinese translation. (#1142) 2018-12-18 12:30:48 +09:00
Hermès Bélusca-Maïto
1cb1da52d9 Remove unwanted file; addendum to be8a835. 2018-12-18 01:48:30 +01:00
Javier Fernandez
be8a835438 [VCDCONTROLTOOL] Add Spanish translation (#1156) 2018-12-18 01:33:08 +01:00
Joachim Henze
6f8cb05cad [DESK][SHELL32] Allow Desk.cpl to run standalone on WinXP/2003 again CORE-15412
addendum to 0.4.10-dev-502-g
d559ca9c98

That copy-paste was done once intentionally to keep our imports similar to 2003.
It's worth reading the conversation in PR #748: Getequ seems to be ok with this.

The ideal solution most likely would be to instead *statically*
link against RegLoadMUIStringW() from advapi32_vista when WINNT=0x502.
For now the stuff runs again at least.
I left the func existing in advapi32_vista.dll.
2018-12-17 22:01:49 +01:00
Mark Jansen
c8f216eafd [BROWSEUI] Add ITaskbarList implementation
CORE-15424
2018-12-17 20:38:38 +01:00
Mark Jansen
6940d9fdf0 [EXPLORER] Add TWM_GETTASKSWITCH, which seems to be used on windows
to get a handle to the task switch control.
This can then be used to send messages to it, like hiding/showing buttons
CORE-15424
2018-12-17 20:38:38 +01:00
Mark Jansen
959994b67c [OLE32] Don't free handles that are just copied in the inproc case.
This imports wine commit 25b136d40080a80c006b89e02708d2e248504a42,
by Huw Davies and Zebediah Figura
CORE-14696
2018-12-17 20:36:05 +01:00
Pierre Schweitzer
7375173b7f [KMTESTS:CC] Add some tests regarding small pinning size (< PAGE_SIZE)
CORE-15384
2018-12-17 20:31:24 +01:00
Katayama Hirofumi MZ
932a812c66 [SHELL32] Add backslash if path was like C: (#1152)
CORE-15434
2018-12-17 22:42:18 +09:00
Katayama Hirofumi MZ
c94ca8128d [SHELL32] 'Run' dialog box should accept URL (#1153)
Fix ShellExecCmdLine function. CORE-15455, CORE-11772
2018-12-17 22:37:51 +09:00
Katayama Hirofumi MZ
5525c81b2f [SHELL32] Add CDefView::DefMessageSFVCB (Retrial of #1145) (#1151)
CORE-14976
2018-12-17 19:22:31 +09:00
Oleg Dubinskiy
21a0846aff [VCDCONTROLTOOL] Add Russian translation 2018-12-17 08:09:08 +01:00
Katayama Hirofumi MZ
2e2e63e10d [KBDROST][NTDLL_APITEST] Revert #1135 (Delete UTF-8 BOM) (#1149)
CORE-15447
2018-12-17 11:29:35 +09:00
Mark Jansen
b5aa5bcdc1 [SDK] Define some constants for use with _mm_prefetch (#1147)
* [SDK] Define some constants for use with _mm_prefetch
This should fix the build for x64
Add __INTRIN_INLINE for gcc and clang
2018-12-16 23:25:52 +01:00
Serge Gautherie
d840d7cb1b [CMAKE] MSVC: Make C4028 warning into error, on "i386" only
"C4028: formal parameter N different from declaration"

CORE-7538
2018-12-16 23:12:22 +01:00
Eric Kohl
74d50a4da3 [SAMSRV] Implement SamConnect5() and add/improve TRACE messages.
- Implement SamConnect5() and let the other connect functions call SamrConnect5().
- Add missing and improve incomplete TRACE messages for all Samr functions.
2018-12-16 20:43:02 +01:00
Hermès Bélusca-Maïto
cd52bbdf03 [BTRFS] Fix MSVC build. 2018-12-16 17:38:09 +01:00
Hermès Bélusca-Maïto
bc00ea2464 [SHELLBTRFS] Fix MSVC build. 2018-12-16 17:20:37 +01:00
Pierre Schweitzer
65ff430c2b [BTRFS] Fix link with modern MSVC compilers
CORE-15452
2018-12-16 14:38:49 +01:00
Eric Kohl
167bffd80f [NTOSKRNL] Add and call the CmpSaveBootControlSet() stub. 2018-12-16 12:49:59 +01:00
Pierre Schweitzer
a4e25b8673 [SHELLBTRFS] Oops, that local change got dropped...
CORE-15452
2018-12-16 12:27:08 +01:00
Pierre Schweitzer
00ff5e8dc9 [SHELLBTRFS] Fix build
CORE-15452
2018-12-16 12:19:32 +01:00
Pierre Schweitzer
215c0778da [UBTRFS] Upgrade to 1.1
CORE-15452
2018-12-16 12:06:46 +01:00
Pierre Schweitzer
7b718d3627 [SHELLBTRFS] Upgrade to 1.1
CORE-15452
2018-12-16 12:06:46 +01:00
Pierre Schweitzer
eb7fbc253f [BTRFS] Upgrade to 1.1
CORE-15452
2018-12-16 12:06:46 +01:00
Eric Kohl
e8d16d0a7d [NTOSKRNL] Fix indentation. No code changes. 2018-12-16 10:30:23 +01:00
Eric Kohl
b2819c353c [KERNEL32] Store the current computer name in the volatile ActiveComputerName key on first query in order to ensure that the visible computer name does not change until the next reboot. 2018-12-16 10:28:26 +01:00
Katayama Hirofumi MZ
00dd17e6e5 [USER32] App Switcher Arrow keys (#1136)
Implement Arrow keys on App Switcher (Alt+Tab). CORE-15449
2018-12-16 08:42:20 +09:00
Katayama Hirofumi MZ
235042a16c [CPL][SHELL32] Add icons to input, joy, sysdm, folder options (#1138)
CORE-15445
2018-12-16 08:40:47 +09:00
Jared Smudde
44bb99cc8e [SHELL32] Add a warning dialog before starting a dialog as well as a format complete dialog. (#1137)
Also fix the progress bar not working and the Allocation unit size combo box disappearing after a format completes.
2018-12-15 21:22:57 +01:00
Hermès Bélusca-Maïto
043a98ddd9 [UMPNPMGR] Re-enable the usage of Interlocked Singly-Linked lists.
Using locked operations (insertion & removal) on the list of queued
devices installations is necessary, because these operations are done
concurrently by two different threads: PnpEventThread() and
DeviceInstallThread().

Addendum to commit b2aeafca (r24365).
2018-12-15 20:19:32 +01:00
Hermès Bélusca-Maïto
745fa54506 [UMPNPMGR] Fix a typo. 2018-12-15 20:19:31 +01:00
Hermès Bélusca-Maïto
596b1a8d24 [STLPORT] Fix MSVC x64 build.
Timo, can you check whether this disabled code block is really needed?
2018-12-15 20:19:31 +01:00
Hermès Bélusca-Maïto
f6baf266e1 [PSDK] PSDK-compatibility: Add the SList function declarations to winbase.h. 2018-12-15 20:19:29 +01:00
Luo Yufan
adf023e38c [SHELL32] Update Simplified Chinese translation. 2018-12-15 20:13:47 +01:00
Luo Yufan
f369ae618d [SHELL32] Update Traditional Chinese translation. 2018-12-15 20:13:47 +01:00
Pierre Schweitzer
e2277b1f02 [FLOPPY_NEW] Import the floppy driver from MS GitHub repository
Do not enable it yet, as it doesn't work in ROS for the moment :-(.
Its place in tree is not optimal (it should be with disk/class/etc.),
but I prefer keeping it close to actual driver for now.

All the work has been done so that it compiles and links with ReactOS
SDK though.
2018-12-15 20:04:00 +01:00
Pierre Schweitzer
3ceb93a4f2 [PSDK] Complete the MEDIA_TYPE enum 2018-12-15 20:04:00 +01:00
Eric Kohl
c87482b1df [NETAPI32] Implement NetRegisterDomainNameChangeNotification() and NetUnregisterDomainNameChangeNotification(). 2018-12-15 17:18:32 +01:00
Mark Jansen
5f235cc0cb [MAINTAINERS][DOC] Update mspatcha in README.WINE and MAINTAINERS 2018-12-15 16:28:59 +01:00
Mark Jansen
97d7206f8b [MSPATCHA] Initial patch decoding + applying.
Some initial work is done, all testcases pass now.
However a lot of the patch format is still unknown / not working,
so do not expect anything other than the apitest to work yet.
The next thing to do now, is to gather input, output and patch files,
and analyze how the compression and patching works on bigger /
more complex files.
CORE-15417
2018-12-15 16:28:59 +01:00
Mark Jansen
33e3a69a7f [MSPATCHA] Implement GetFilePatchSignature functions 2018-12-15 16:28:59 +01:00
Mark Jansen
fbe4a43f5d [MSPTCHA_APITEST] Initial tests.
The filename intentionally does not contain the word 'patch',
because this will trigger windows to auto-elevate the test app.
2018-12-15 16:28:59 +01:00
Mark Jansen
55e0720509 [MSPATCHA][PSDK] Update / add some function definitions 2018-12-15 16:28:59 +01:00
Pierre Schweitzer
f88259a632 [VCDCONTROLTOOL] Add a shortcut to start menu 2018-12-15 15:46:35 +01:00
Katayama Hirofumi MZ
7050ac4dce [KBDROST][NTDLL_APITEST] Add UTF-8 BOM (#1135)
Add UTF-8 BOM. CORE-15447
2018-12-15 08:00:39 +09:00
Hermès Bélusca-Maïto
a3168373eb [SETUPLIB] Detect GPT-partitioned disks but don't use them since we don't support them at the moment.
- Add checks for GPT disks and either fail or ignore the disk,
  depending on the operation being executed.

[USETUP][REACTOS] Display the disk style more accurately.
2018-12-14 23:32:31 +01:00
Katayama Hirofumi MZ
2be0fe5f8f [SHELL32] Improve French translation of Folder Options View
CORE-15259
2018-12-14 21:41:44 +01:00
Katayama Hirofumi MZ
d310503d9e [EXPLORER] Set display icon of task properties (#1130)
CORE-10494
2018-12-14 20:07:33 +09:00
Katayama Hirofumi MZ
bd55105c8a [CPL] Properly set display icons of control panel applets (#1129)
CORE-15445
2018-12-14 20:06:57 +09:00
Katayama Hirofumi MZ
f222e89d86 [SHELL32] Localize caption of Folder Options
CORE-15247
2018-12-14 19:56:44 +09:00
Serge Gautherie
e94618b7bf [KMTEST:RTL] RtlException: Remove '#if CORE_6640_IS_FIXED'
On behalf of Víctor Martinez.
CORE-8773
2018-12-13 21:36:10 +01:00
Luo Yufan
b0b81e54e9 [SETUP][FONT] Add font substitute of Ubuntu font for CJK
CORE-15179
2018-12-14 02:54:13 +09:00
Katayama Hirofumi MZ
fad9f6677a [BROWSEUI] Follow up of #1121
CORE-15434
2018-12-13 20:40:05 +09:00
Katayama Hirofumi MZ
c64d31e9b8 [BROWSEUI] Add backslash for directory (#1121)
CORE-15434
2018-12-13 20:04:02 +09:00
Katayama Hirofumi MZ
63a0ac0461 [REGEDIT] Set background brush to child window (#1122)
This commit fixes a problem with drawing of splitter. CORE-15442
2018-12-13 20:00:27 +09:00
Pierre Schweitzer
ec96bf8e5c [ROSAUTOTEST] Force HTTPS
ONLINE-855
2018-12-13 11:54:59 +01:00
Pierre Schweitzer
a062160b29 [ROSAUTOTEST] Forget about HTTP, go over HTTPS directly
ONLINE-855
2018-12-13 11:49:13 +01:00
Pierre Schweitzer
1d22362741 [ROSAUTOTEST] Allow transparent redirection to HTTPS URLs
ONLINE-855
2018-12-13 11:45:43 +01:00
Pierre Schweitzer
63b00d8146 [MAINTAINERS] Add the vcdcontroltool app 2018-12-12 21:12:39 +01:00
Serge Gautherie
4918271a3c [WS2_32_APITEST] Fix 'inialialization' typo, in comments (#1119) 2018-12-12 20:24:07 +01:00
Mark Jansen
f386a6ec41 [SFC_APITEST] Initial test for SfcIsFileProtected and SfcGetFiles 2018-12-12 19:33:44 +01:00
Mark Jansen
cc2f0a8868 [SHELL32] Add IActiveDesktop stub
CORE-15424
2018-12-12 19:29:09 +01:00
Mark Jansen
6378c83663 [COM_APITEST] Add a test for CLSID_ActiveDesktop
CORE-15424
2018-12-12 19:29:09 +01:00
Mark Jansen
570b7655ab [PSDK] Add a minimal IActiveDesktop definition
CORE-15424
2018-12-12 19:28:58 +01:00
Andrew Boyarshin
3ba51dc218 [NTOS:MM] Fix typo in MiCheckForUserStackOverflow 2018-12-12 12:57:08 +01:00
Katayama Hirofumi MZ
472787ffea [SHELL32] Fix 'Run' dialog crash (#1117)
Running "%SYSTEMROOT%" sometimes crashed. This will fix it. CORE-15431
2018-12-12 10:33:05 +09:00
Katayama Hirofumi MZ
25578b7d12 [INCLUDE] Replace \r\n with \n 2018-12-12 09:01:36 +09:00
Mark Jansen
1e568ce62d [SDK] Update gen_baseaddress.
* Speed up the script by using the fallback by default
* Suggest what cmake file to edit
* Add support for x64 modules (addresses not updated yet)
CORE-14923
2018-12-12 00:41:07 +01:00
Katayama Hirofumi MZ
aa04a0a6d3 [WIN32SS] Replace ASSERT(FALSE); in IntGhostWindowFromHungWindow (#1116)
CORE-11944
2018-12-12 08:03:49 +09:00
Pierre Schweitzer
dc65db7c13 [ADVAPI32_APITEST] If TEB SubProcessTag is set, query ADVAPI32 to validate its correctness
This is based on: https://wj32.org/wp/2010/03/30/howto-use-i_querytaginformation/
and properly works in W2K3 SP2.
Thanks to Joachim for his tests.
2018-12-11 23:41:01 +01:00
Pierre Schweitzer
7d18e36a31 [ADVAPI32_APITEST] Add a test to show that main service thread is tagged
This test will fail on everything < W2K3 SP2. In spite of what a wide spread
rumor says, MS seems to have added that feature quite lately, but not starting
Vista! ;-)
2018-12-11 23:41:01 +01:00
Eric Kohl
3b03f44001 [PSDK] Add missing prototypes NetRegisterDomainNameChangeNotification and NetUnregisterDomainNameChangeNotification to lmconfig.h. 2018-12-11 22:49:17 +01:00
Timo Kreuzer
3de04ccace [CMAKE] Fix problem with __RELFILE__ not working when compiler uses relative pathes
This usually happens when the build dir is a subdir of the source dir. It is now detected during runtime, using the length of the relative path from the build dir to the source dir as the length of the prefix to skip, if __FILE__ starts with a '.'.
Also fix the escaping of REACTOS_*_DIR defines. It was gracefully fixed up by CMake, but resulted in broken syntax highliting.

CORE-14839 #resolve
2018-12-11 21:50:58 +01:00
Timo Kreuzer
05169a4987 Revert "[CMAKE] Use configured include files to define the __RELFILE__ hack (#979)"
This reverts commit 07bd6089ec.
2018-12-11 21:50:58 +01:00
Pierre Schweitzer
93164cf873 [VCDCONTROLTOOL] Add French translation 2018-12-11 20:13:52 +01:00
Auron Hines
86c5cfd81a [TRANSLATION][SHELL32] Grammar fix: content -> contents (#1115) 2018-12-11 19:43:46 +01:00
Pierre Schweitzer
e8e4096eb7 [VCDCLI] Implement support for persistent mounts 2018-12-11 15:24:38 +01:00
Pierre Schweitzer
044a7022c5 [VCDCONTROLTOOL] Enable driver start/stop buttons depending on the service status 2018-12-11 15:04:25 +01:00
Pierre Schweitzer
b518fc065d [VCDCONTROLTOOL] Implement support for persistent mounts 2018-12-11 15:04:25 +01:00
Pierre Schweitzer
10ce523a2c [VCDCONTROLTOOL] Add a GUI app to manage virtual CD-ROM devices
This is just an open sourced version of the tool provided by MS along
with the driver.
It will avoid users fighting with the CLI tool (that was doing the job
though ;-)).

Looks like that: https://twitter.com/HeisSpiter/status/1072482763348107264

Nota 1: it doesn't have an icon
Nota 2: code may be ugly, I'm not a umode guy! ;-)
2018-12-11 15:04:10 +01:00
Pierre Schweitzer
cab37c9455 [VCDROM] Add a display name for the service 2018-12-11 15:04:10 +01:00
Katayama Hirofumi MZ
43e2089476 [WIN32SS][FONT] Check NULL of Face->style_name (#1113)
CORE-15433
2018-12-11 18:32:39 +09:00
Katayama Hirofumi MZ
06d717e3bc [SHELL32] Enable environment variables in 'Run' dialog (#1111)
CORE-15431
2018-12-11 16:35:45 +09:00
Katayama Hirofumi MZ
f469acacec [WIN32SS][USER32] Add Ghost codes (retrial of #1100) (#1112)
CORE-11944
2018-12-11 12:30:59 +09:00
Katayama Hirofumi MZ
99b055a506 Revert "[WIN32SS][USER32] Add codes for Ghost Window (#1100)" (#1110)
This reverts commit 1adefd180c. ReactOS wouldn't startup.
2018-12-11 11:30:00 +09:00
Katayama Hirofumi MZ
1adefd180c [WIN32SS][USER32] Add codes for Ghost Window (#1100)
CORE-11944
2018-12-11 10:48:23 +09:00
Luo Yufan
acef266bc6 [TRANSLATION] Update Simplified Chinese translation and notice. (#1108) 2018-12-10 16:03:00 +01:00
Hermès Bélusca-Maïto
d0c8636d1b [OSK] Update French translation. 2018-12-10 00:56:55 +01:00
Hermès Bélusca-Maïto
92763e2901 [OSK] Set also the large icon (that appears in the App Switcher) and move the code in OSK_DlgInitDialog(). 2018-12-10 00:56:54 +01:00
Eric Kohl
12fdc129cf [NTOSKRNL] IopGetDeviceProperty: Send an IRP_MN_QUERY_CAPABILITIES request to the device in order to query the power capabilities. 2018-12-10 00:37:04 +01:00
Hermès Bélusca-Maïto
dd11f4c34b [FREELDR] Add FreeLdr debug tool GUI program, and FreeLdr command-line installer to the bootcd. 2018-12-10 00:27:58 +01:00
Hermès Bélusca-Maïto
8bed4adf56 [SETUPLIB] Use for-loops instead of while-loops to enumerate linked lists in the partition code. 2018-12-10 00:27:58 +01:00
Hermès Bélusca-Maïto
7df9296692 [SETUPLIB] Partitioning code fixes and improvements.
CORE-7749

- Correctly insert discovered partitions in sorted order of StartSector,
  and verify that they do not overlap (-> check for broken partitioning).

May help for CORE-10898.

- Use the correct reported partition numbers that may be modified after
  partitioning changes, and that need to be used when opening
  \Device\Harddisk'M'\Partition'N' files. This is achieving by
  retrieving the returned value of the IOCTL_DISK_SET_DRIVE_LAYOUT call.

  Distinguish them from the "on-disk" partition numbers that are the ones
  that enumerate the partition in partition-table order (and is the order
  known by e.g. the BIOS), and that should be used to construct the
  destination ARC path.

May help for CORE-4870, CORE-13205.

- Simplify a lot of duplicated code by using helper functions.
2018-12-10 00:27:56 +01:00
Pierre Schweitzer
958ae44599 [WIN32SS] Shhhhh! 2018-12-09 22:00:53 +01:00
Timo Kreuzer
1e28d4d92b [TCPIP] Implement InfoTdiQueryGetATInfo
This implements a case for InfoTdiQueryInformationEx. It's based on wild guesses, but it helps to make Windows 2003 lsass not fail.
2018-12-09 20:54:41 +01:00
Pierre Schweitzer
962b2fd66a [NTOSKRNL] Implement SystemDpcBehaviourInformation query 2018-12-09 20:54:40 +01:00
Bișoc George
42ddd011ce [OSK] Display the correct icon of the application. (#1105) 2018-12-09 20:13:17 +01:00
Joachim Henze
34679f5424 [SDK] Raise KERNEL_VERSION_PATCH_LEVEL to 12 in the version.cmake
to fix the blue setup screens and also display in sysdm.cpl
2018-12-09 20:06:40 +01:00
Pierre Schweitzer
13d9d3ebbf [NTOSKRNL] Also account PRCBs for Io operations counters 2018-12-09 19:30:07 +01:00
Pierre Schweitzer
e632375851 [NTOSKRNL] For SystemPerformanceInformation, return some info extracted from PRCB
This notably includes the amount of context switchs and system calls.
2018-12-09 18:56:50 +01:00
Pierre Schweitzer
4d974e56ee [NTOSKRNL] Return the amount of hits in system lookaside lists in ExQueryPoolUsage() 2018-12-09 18:25:11 +01:00
Pierre Schweitzer
de7c959c4e [NTDLL] Implement the Etw*Trace functions relying on EtwControlTrace 2018-12-09 10:29:02 +01:00
Pierre Schweitzer
53a313f456 [USER32] Complete French translation 2018-12-09 09:38:31 +01:00
Timo Kreuzer
431643b9b3 [NTOS:LPC] Add a number of DPRINTs on failure 2018-12-09 03:16:19 +01:00
Bișoc George
3493992e7a [OSK] Add the minimize button (#1102) 2018-12-08 23:44:42 +01:00
Stanislav Motylkov
f851b82570 [USETUP] Update russian translation
Addendum to 03b7e13, 29ace9c and a5bcd95.
2018-12-08 23:36:06 +01:00
Stanislav Motylkov
6c7094acb8 [USER32] Update russian translation
Addendum to 6a944b5.
2018-12-08 23:36:06 +01:00
Stanislav Motylkov
c60c4886d9 [NOTEPAD] Update russian translation
Addendum to 60e9fcc.
2018-12-08 23:36:06 +01:00
Hermès Bélusca-Maïto
ca71813361 [NOTEPAD] Addendum to 60e9fcc (#610) 2018-12-08 20:11:26 +01:00
Pierre Schweitzer
182cc5c5ab [NTOSKRNL] Don't dereference VACB when allocating its memory area fails
This avoids performing a double-free (even though that's hidden by the
fact we use lookaside allocations for VACB), and it avoids freeing
a memory address at an uninitialized address.
We don't care about references here, the VACB was just allocated, never
linked and we're its only user.

CORE-15413
2018-12-08 19:56:03 +01:00
Erdem Ersoy
60e9fcc8f0 [NOTEPAD] Improve the "About" dialog status. (#610)
- Remove the non-standard "About" dialog.
- Move the authors copyright info into the shell "About "dialog.
2018-12-08 19:35:16 +01:00
Ștefan Fulea
b0ab61e6c3 [BOOTDATA][SETUPLIB] Setup the Romanian Stdandard Keyboard layout. (#861)
Adjust the miscellaneous files to activate the Romanian Standard
Keyboard layout in the OS and set it as default for Romanian.

CORE-15056
2018-12-08 18:53:18 +01:00
Ștefan Fulea
8a333e6845 [CPL:INPUT] Update Input's existing localized information. (#861)
Update the name of the Romanian Keyboard layout in localized
resources by renaming the existing one as legacy and adding
the new one as standard.

Use the same resource string ID as the one used in input.cpl from
later versions of Windows that do have kbdrost.
This improves the Windows binary compatibility of kbrost's setup.

CORE-15056
2018-12-08 18:52:56 +01:00
Ștefan Fulea
e530bb36ed [DLL:KEYBOARD] Add Romanian Standard Keyboard layout. (#861)
Define the Romanian Standard Keyboard layout, as defined by
Romanian Standards Association (ASRO). This also renders the
existing Romanian Keyboard layout as Legacy.

CORE-15056
2018-12-08 18:52:25 +01:00
Ștefan Fulea
3c82e46ef1 [DLL:KEYBOARD] Add a dead keys transformations collection. (#861)
It contains all the Unicode characters that can be formed with a
given dead key (i.e. combining character). Keyboard layouts with
dead keys may find these useful.

CORE-15056
2018-12-08 18:50:47 +01:00
Serge Gautherie
b92f1f4cdf [LOG2LINES] Free all memory on exit. 2018-12-08 17:38:24 +01:00
Serge Gautherie
ca2bb9ee28 [LOG2LINES] Optimize malloc() calls. 2018-12-08 17:38:16 +01:00
Hermès Bélusca-Maïto
dbaa875f05 [LOG2LINES] Fix indentation. 2018-12-08 17:38:03 +01:00
Serge Gautherie
f5f515c17c [LOG2LINES] Replace overkill malloc() usage.
NOTE: Since the 'cache_name' and 'tmp_name' pointers move inside the
corresponding cached strings, separate cache buffers are needed.
2018-12-08 17:34:18 +01:00
Serge Gautherie
5e8e654dfd [DDRAW] Remove useless 'else's. 2018-12-08 17:10:36 +01:00
Serge Gautherie
166c6e2498 [DDRAW] Fix two duplicate DDSD_WIDTH uses.
Thanks to Kudratov Olimjon who reported this.
CORE-8545
2018-12-08 17:10:31 +01:00
Eric Kohl
b9d4e2dae6 [USERENV] Move some functions around to make it look nicer. No code changes. 2018-12-08 16:41:17 +01:00
Eric Kohl
d383d1c6b0 [PSDK] Add DeleteProfileA/W prototypes to userenv.h. 2018-12-08 15:23:04 +01:00
Pierre Schweitzer
01d56963f8 [MPR_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-12-08 11:43:10 +01:00
Pierre Schweitzer
e02f3356b1 [MPR] Sync with Wine Staging 3.17. CORE-15127 2018-12-08 11:42:23 +01:00
Pierre Schweitzer
bcad6700ec [MPR] Import Wine commit: 773ff2e83b0547540639c6d4aeb9f817b621fb2f
Implement support for deleting persistent connections.
2018-12-06 22:44:43 +01:00
Pierre Schweitzer
3e8ec64489 [MPR] Import Wine commit: 23a232fce8899a24e76207518175235b7b0f00cd
Implement support for making connections persistent.
2018-12-06 22:42:46 +01:00
Pierre Schweitzer
f57b1d02d4 [DHCPSVC] Properly stub DhcpRequestParams()
This will avoid crash upon Google Chrome start.

CORE-15422
2018-12-06 22:26:10 +01:00
Colin Finck
cb8429d76a [DOXYGEN] Enable EXTERNAL_SEARCH, because this seems to be the most sophisticated Doxygen search feature and the PHP-based search isn't compatible with PHP7 yet. 2018-12-06 15:13:40 +01:00
Luo Yufan
93ac724b47 [TRANSLATION] Update Simplified Chinese translation. (#1099)
Update Simplified Chinese translation for BROWSEUI, INETCPL and SYSDM.
2018-12-06 14:52:38 +01:00
Katayama Hirofumi MZ
e90954304d [WIN32SS][FONT] Add some assertions (#1098) 2018-12-06 12:47:02 +09:00
Katayama Hirofumi MZ
93757884c1 [WIN32SS][FONT] Improve FamilyUnknown Penalty (#1097)
CORE-15419
2018-12-06 09:32:02 +09:00
Colin Finck
9eb82c499f [DOXYGEN] Update Doxyfile for Doxygen 1.8.13, the version we are going to use from now on.
Not much has changed, several options were added, but left at their default values.
However, if search problems persist after Doxygen 1.8.13 generated the documentation for the first time, we can play around with EXTERNAL_SEARCH.
2018-12-05 19:38:14 +01:00
Luo Yufan
39a478d17b [TRANSLATION] Update Simplified Chinese translation. (#1096) 2018-12-05 16:50:05 +01:00
Serge Gautherie
c34fa1e389 [SDK][NDK] Move SYSTEM_POWER_INFORMATION to ntpoapi.h (#869)
As suggested by Thomas Faber. See CORE-12587 for more details.
2018-12-05 13:48:01 +01:00
Katayama Hirofumi MZ
88ddb37acb [WIN32SS][FONT] Use HHEA table metrics if (fsSelection & 0x80) (#1093)
This PR will fix too tiny glyph rendering. CORE-15166
2018-12-05 21:05:42 +09:00
Pierre Schweitzer
9c2a264d77 [MPR] Import Wine commit: 9988bb5e0729178b527052803d3ad670e5e0b46e
Implement remembered connection enumeration.

CORE-15310
2018-12-05 08:47:25 +01:00
Pierre Schweitzer
67e7399164 [NTOSKRNL] Use proper enum type for IopCreateSecurityDescriptorPerType() 2018-12-04 19:20:47 +01:00
Pierre Schweitzer
73e7a5d474 [NTOSKRNL] Use the appropriated security descriptor when creating a device
CORE-9176
2018-12-04 19:13:57 +01:00
Pierre Schweitzer
36c38c45ee [NTOSKRNL] Implement IopCreateDefaultDeviceSecurityDescriptor() and IopCreateSecurityDescriptorPerType()
CORE-9176
2018-12-04 19:13:57 +01:00
Luo Yufan
07b120bd56 [TRANSLATION] Update Simplified Chinese translation. (#1094) 2018-12-04 17:13:39 +01:00
Eric Kohl
2037bab6c4 [SETUPAPI] GetDeviceInstanceKeyPath: Trying to open the hardware key opens the software key and vice versa. Fix it by swapping the code paths. 2018-12-03 22:03:38 +01:00
Mark Jansen
faddd38b36 [KERNEL32] Revert d897e27, which would re-initialized a list.
Spotted by Andrew Boyarshin.
2018-12-03 20:48:14 +01:00
Luo Yufan
6a506156a8 [MSGINA] Update Simplified Chinese translation. 2018-12-03 12:52:11 +01:00
Luo Yufan
5066ee4606 [IEFRAME] Update Simplified Chinese translation. 2018-12-03 12:52:11 +01:00
Luo Yufan
a9f634b5fe [SHELL32] Update Simplified Chinese translation. 2018-12-03 12:52:11 +01:00
Katayama Hirofumi MZ
cbd52e30d7 [SHELL32] Don't show taskbar button of Folder Options (#1091)
CORE-10481
2018-12-03 13:38:09 +09:00
Katayama Hirofumi MZ
c1eb420a91 careless s/E_FAIL/FALSE/ (#1089) 2018-12-03 05:43:21 +09:00
Katayama Hirofumi MZ
623b2e153e [SHELL32] Follow up of #1085 (#1088)
CORE-10481
2018-12-03 05:38:36 +09:00
Katayama Hirofumi MZ
3fd2deefac [USER32] Fix Task Switcher (#1086)
CORE-10481
2018-12-03 04:26:15 +09:00
Katayama Hirofumi MZ
ecd51d99f4 [SHELL32] Don't show taskbar button of file property sheet (#1085)
CORE-10481
2018-12-03 04:25:46 +09:00
Eric Kohl
3f570f3369 [SETUPAPI] Implement SetupGetNonInteractiveMode() and SetupSetNonInteractiveMode(). 2018-12-02 14:10:25 +01:00
Katayama Hirofumi MZ
6a944b556a [USER32] Add Ghost window class (#1082)
CORE-11944
2018-12-02 18:51:44 +09:00
Eric Kohl
f5bd2c1f8d [NET] NET HLPMSG: Fill inserts with '***' and print a proper error message if the desired message could not be found. 2018-12-01 22:06:30 +01:00
Pierre Schweitzer
f4d29a74aa [NTFS] Don't perform overzealous checks on bitmap while reading a directory
This avoids partial direactory reads where we believe they are corrupted
while they are not.
2018-12-01 21:52:55 +01:00
Eric Kohl
17fa384a25 [NET] NET HELPMSG: Add support for network message from netmsg.dll. 2018-12-01 17:11:51 +01:00
Eric Kohl
04f35dc8f5 [MC] Add messages 5770-5809 to netmsg.dll.
Netmsg.dll is complete! Translations welcome!
2018-12-01 15:16:10 +01:00
Pierre Schweitzer
81aa879c13 [IPHLPAPI] Implement GetOwnerModuleFromUdpEntry() 2018-12-01 14:49:38 +01:00
Eric Kohl
e6c4933c66 [MC] Add messages 5150-5296 to netmsg.dll. 2018-12-01 14:40:26 +01:00
Joachim Henze
3050d93deb [BROWSEUI] Properly fix CORE-13003 "Explorer address bar display problem"
The patches author is Doug Lyons. Thank you very much!
The patch is an addendum to 0.4.9-dev-732-g
ea0cc1c783
2018-12-01 14:26:33 +01:00
Eric Kohl
54c123aa45 [MC] Add messages 5000-5104 to netmsg.dll. 2018-12-01 13:08:20 +01:00
Katayama Hirofumi MZ
b09487fb44 [WIN32SS] Add IntGoGhost function (stub) (#1081)
CORE-11944
2018-12-01 20:59:07 +09:00
Pierre Schweitzer
f5f3ff86ea [LIBTIRPC] Fix CVE-2018-14621 by backporting its fix
CORE-15407
2018-12-01 12:16:41 +01:00
Eric Kohl
4692f5f1cc [MC] Add messages 4930-4999 to netmsg.dll. 2018-12-01 11:35:56 +01:00
Katayama Hirofumi MZ
165fa1fa7e [INCLUDE] Update winxx.h and msgdump.h (#1083) 2018-12-01 18:58:43 +09:00
Eric Kohl
792dd0dac5 [MC] Add messages 4800-4862 to netmsg.dll. 2018-11-30 23:58:59 +01:00
Hermès Bélusca-Maïto
95deef460b [XOLEHLP] Import xolehlp.dll from Wine(-Staging) 3.21.
Should help improving the situation of the Microsoft SQL Server 2005
Express Edition installer. CORE-15399
2018-11-30 21:49:28 +01:00
Hermès Bélusca-Maïto
e6e9cdf8e0 [SDK] Add transact.idl, txcoord.idl and txdtc.idl, and introduce MS-PSDK-compatible adsiid library that defines GUIDs used by ADS interfaces. 2018-11-30 21:49:23 +01:00
Pierre Schweitzer
226195d4f2 [IPHLPAPI] Don't assume first member of MIB tables is always DWORD-big
This fixes last bits of heap corruption when using UDP/TCP enumeration
functions.
2018-11-30 20:06:29 +01:00
Pierre Schweitzer
bf052e120b [IPHLPAPI] Reduce code duplication and use a single function for TCP and UDP enumerations
Furthermore, memory was improperly allocated before (alignment issues) leading to heap
corruption under certain circumstances
2018-11-30 20:06:29 +01:00
Stanislav Motylkov
ed7a78e97a [SYSDM] Explicitly check DMI strings for NULL pointers
...to make CRT string comparison functions happy. CORE-15403
2018-11-30 16:55:29 +03:00
Andrew Boyarshin
8c710dc518 [SDK] Allow use of SYSTEM_MEMORY_LIST_INFORMATION in kernel code 2018-11-30 10:21:12 +01:00
Eric Kohl
8bc141a9ad [MC] Add messages 4700-4778 to netmsg.dll. 2018-11-29 21:27:31 +01:00
Pierre Schweitzer
3d2d957f81 [IPHLPAPI] Implement GetOwnerModuleFromTcpEntry()
CORE-4792
2018-11-29 20:36:08 +01:00
Pierre Schweitzer
e9c7c6fd2c [IPHLPAPI_APITEST] Add tests for GetOwnerModuleFromTcpEntry() 2018-11-29 20:30:23 +01:00
Pierre Schweitzer
9476baf616 [SDK] Move TCPIP_OWNER_MODULE_BASIC_INFO definition to the right file 2018-11-29 20:30:23 +01:00
Pierre Schweitzer
1e9fb35fbc [IPHLPAPI_APITEST] Test GetExtendedTcpTable rather than AllocateAndGetTcpExTable2FromStack 2018-11-29 20:30:22 +01:00
Pierre Schweitzer
60203092d7 [SDK] Define TCPIP_OWNER_MODULE_BASIC_INFO 2018-11-29 20:30:22 +01:00
Eric Kohl
2eb652c0f8 [MC] Add messages 4600-4699 to netmsg.dll. 2018-11-28 23:13:00 +01:00
Giannis Adamopoulos
fae68532dc [REGTEST.CMD] Start tests with the correct current dir 2018-11-28 11:41:18 +02:00
Pierre Schweitzer
73c06d09ff [IPHLPAPI_APITEST] CurrPorts seems to confirm that timestamp is really a timestamp 2018-11-28 08:28:37 +01:00
Pierre Schweitzer
f87c88f6fe [IPHLPAPI] Implement the *_TABLE_OWNER_MODULE_* in GetExtendedTcp/UdpTable() functions
This fixes CurrPorts in ReactOS. It now properly displays current connections along
with their creation time.

CORE-10134
2018-11-27 23:12:57 +01:00
Pierre Schweitzer
159f5b676a [IPHLPAPI] Fix broken size computation leading to buffer overrun 2018-11-27 23:12:57 +01:00
Pierre Schweitzer
559297fe81 [IPHLPAPI] Implement getOwnerModUdpTable() and getOwnerModTcpTable()
These allow to enumerate UDP and TCP connections with module information
2018-11-27 23:12:56 +01:00
Pierre Schweitzer
f718b1d719 [TCPIP] Stubplement returning module information for TCP and UDP connections 2018-11-27 23:12:56 +01:00
Eric Kohl
e486d8aaa6 [MC] Add messages 4450-4580 to netmsg.dll. 2018-11-27 22:56:10 +01:00
Pierre Schweitzer
ec605e9138 [IPHLPAPI_APITEST] Add tests for AllocateAndGetTcpExTable2FromStack() 2018-11-27 21:36:48 +01:00
Pierre Schweitzer
7ce2f09a70 [SDK] Add AllocateAndGetTcp/UdpEx/2TableFromStack() functions family 2018-11-27 21:36:47 +01:00
Pierre Schweitzer
05657bfcfd [SDK] Add a non documenter TOIID used to query modules information 2018-11-27 21:36:47 +01:00
Pierre Schweitzer
3028831867 [TCPIP] Save the date when an ADDRESS_FILE is created 2018-11-27 21:36:47 +01:00
Pierre Schweitzer
655e66bdbd [TCPIP] Define a enum to select which information to return 2018-11-27 21:36:41 +01:00
Giannis Adamopoulos
1d55f459d6 [SHELL32] CFSDropTarget: Fix right click menu when shown over the tree view. CORE-11240 2018-11-27 12:58:08 +02:00
Giannis Adamopoulos
62c33fbf69 [BROWSEUI] CShellBrowser: Don't pass any parameters to Initialize. Let users use the BrowseObject method instead. 2018-11-27 10:33:57 +02:00
Giannis Adamopoulos
f05d01ec2f [FILEBROWSER]
In the struct passed to SHCreateFromDesktop the fourth field is the parameter that later on will be passed to ShowWindow. Initialize it properly so that when we run filrbrowser.exe in win2k3 the main window won't be hidden.
2018-11-27 10:33:45 +02:00
Giannis Adamopoulos
84fa20ec8b [EXPLORER]
-Rename StartMenuBtnCtxMenuCreator to CStartMenuBtnCtxMenu_CreateInstance.
-Rename CreateStartMenuSite to CStartMenuSite_CreateInstance.
-Remove a couple of definitions that were not used.
2018-11-27 10:33:42 +02:00
Giannis Adamopoulos
225c5c4a20 [WINSRV] Wait for the process to exit after calling NtTerminateProcess
NtTerminateProcess just queues an apc in every thread of the target process which in turn kills each thread. We need to wait so that all processes have enough time to exit before shutting down.
2018-11-27 10:28:31 +02:00
Pierre Schweitzer
6d6e371225 [IPHLPAPI] Start handling certain flags in GetAdaptersAddresses()
For now, we only support the most useful ones: IP_ADAPTER_DDNS_ENABLED,
IP_ADAPTER_REGISTER_ADAPTER_SUFFIX, IP_ADAPTER_DHCP_ENABLED
2018-11-26 22:43:43 +01:00
Eric Kohl
3e3560e9c2 [MC] Add messages 4400-4440 to netmsg.dll. 2018-11-26 21:34:34 +01:00
Luo Yufan
289301e22a [INETCFG] Update Simplified Chinese translation. (#1076) 2018-11-26 15:55:57 +01:00
Eric Kohl
57d48a7f1c [NETAPI32] Implement DsGetDcNameA/W --> DsGetDcNameWithAccountA/W --> DsrGetDcNameEx2. 2018-11-25 23:24:21 +01:00
Eric Kohl
e397003617 [MC] Add messages 4350-4399 to netmsg.dll. 2018-11-25 23:24:19 +01:00
Mark Jansen
da02cc337a [APISETS] Update from wine-3.20-144-g2ef62f9085 2018-11-25 19:06:29 +01:00
Mark Jansen
a95afd562e [APISETS] Teach update.py how to generate a manifest 2018-11-25 19:06:29 +01:00
Mark Jansen
6121df7321 [APISETS] Stubplement versioned forwarders 2018-11-25 19:06:16 +01:00
Pierre Schweitzer
1a964b5139 [IPHLPAPI] In GetAdaptersAddresses(), return friendly name if asked for 2018-11-25 18:04:13 +01:00
Hermès Bélusca-Maïto
94d8194376 [HAL] Update the PCI hardware IDs database.
Extracted from the pci.ids database at https://pci-ids.ucw.cz/ from 2018-11-21 03:15:02 .
Maintained by Albert Pool, Martin Mares, Michal Vaner, and other volunteers from the PCI ID Project.
2018-11-25 17:21:00 +01:00
Hermès Bélusca-Maïto
f8d3f9de29 [FREELDR] Check for any user keypress in menu even when the timeout is zero.
Before taking any default action if there is no timeout, check whether
the supplied key filter callback function may handle a specific user
keypress. If it does, the menu timeout is cancelled.

This allows e.g. handling F8 press for displaying boot options even when
the timeout is zero.

CORE-14046
2018-11-25 17:09:19 +01:00
Eric Kohl
a94d24fe20 [MC] Add messages 4300-4349 to netmsg.dll. 2018-11-25 15:41:53 +01:00
Hermès Bélusca-Maïto
79bc82206f [SETUPLIB] Re-enable the filesystem detection code based on recognition by FSDs. 2018-11-25 15:03:52 +01:00
Hermès Bélusca-Maïto
9504a38f52 [SETUPLIB] Dismount a disk partition before deleting it. 2018-11-25 15:03:47 +01:00
Andrew Boyarshin
f48eb70af3 [WIN32K][NTUSER] Specify constant name explicitly (#1067)
Reduce confusion by specifying the omitted constant HWND_TOP == 0.
2018-11-25 14:31:23 +01:00
Andrew Boyarshin
62ec69278d [WIN32K][NTUSER] Tiny codestyle fix to NtUserLockWindowUpdate (#1066)
Fix indentation (inconsistent with the rest of the file) and return actual BOOL.
2018-11-25 14:31:04 +01:00
Andrew Boyarshin
1427e0bd2b Add .vscode folder to .gitignore file (#1060)
Matching the existence of Eclipse CDT ignore rules, .vscode should also be added to .gitignore
Visual Studio Code is always eager to create settings.json file there.
2018-11-25 14:28:45 +01:00
Pierre Schweitzer
26415375e3 [IPHLPAPI] Implement AllocateAndGetUdpExTable2FromStack()
CORE-14391
2018-11-25 13:32:52 +01:00
Pierre Schweitzer
0bca12e01f [IPHLPAPI] Implement AllocateAndGetTcpExTable2FromStack()
CORE-14391
2018-11-25 13:29:26 +01:00
Pierre Schweitzer
291a58951f [IPHLPAPI] Implement AllocateAndGetUdpExTableFromStack() 2018-11-25 12:23:27 +01:00
Pierre Schweitzer
58799a0ceb [IPHLPAPI] Implement AllocateAndGetTcpExTableFromStack() 2018-11-25 12:19:44 +01:00
Andrew Boyarshin
198601a101 [NTOS:IO] Tiny improvement to debug message
Add quotes around string, since it is often empty, thus confusing in log.
2018-11-25 11:31:12 +01:00
Bernhard Feichtinger
9cc37704f5 [OPENGL32] Fix wglDescribePixelFormat 2018-11-25 11:29:18 +01:00
Bernhard Feichtinger
8a0495063b [NTOS:MM] Handle unimplemeted case for MiCheckForUserStackOverflow 2018-11-25 11:29:18 +01:00
Pierre Schweitzer
cdf47d5254 [VFATLIB] Drop a hack no longer needed after f87d9ca 2018-11-25 10:41:22 +01:00
Eric Kohl
40f066657e [MC] Add messages 5730-5769 to netmsg.dll. 2018-11-25 10:38:54 +01:00
Pierre Schweitzer
ce7f9211a0 [TCPIP] In InfoTdiQueryGetConnectionTcpTable(), only return if there's a connection 2018-11-25 09:32:30 +01:00
Hermès Bélusca-Maïto
f87d9caf77 [NTOS:IO] Finally remove the dreadful IopParseDevice() hack! \o/ 2018-11-25 09:00:40 +01:00
Hermès Bélusca-Maïto
b77824a375 [FASTFAT] Improvements for volume dismount + minor bugfixing.
- Cache the RootFcb so that its cleanup can be handled separately
  during dismounting.

- Force volume dismount at cleanup if the VCB_DISMOUNT_PENDING flag
  is set.

- Actually dismount a volume if its VCB has been flagged as not good,
  or if we force dismounting.

NOTE: In their *CheckForDismount() function, our 3rd-party FS drivers
as well as MS' fastfat, perform a comparison check of the current VCB's
VPB ReferenceCount with some sort of "dangling"/"residual" open count.
It seems to be related to the fact that the volume root directory as
well as auxiliary data stream(s) are still opened, and only these are
allowed to be opened at that moment. After analysis it appears that for
the ReactOS' fastfat, this number is equal to "3".

- On dismounting, cleanup and destroy the RootFcb, VolumeFcb and the
  FATFileObject. Then cleanup the SpareVPB or the IoVPB members, and
  finish by removing the dismounted volume from the VolumeListEntry
  and cleaning up the notify synchronization object and the resources.

- During dismounting, and on shutdown, flush the volume before
  resetting its dirty bit.

- On shutdown, after volume flushing, try to unmount it without forcing.

- Release the VCB resources only when we actually dismount the volume
  in VfatCheckForDismount().

- Initialize first the notify list and the synchronization object,
  before sending the FSRTL_VOLUME_MOUNT notification.

- If we failed at mounting a volume but its VCB's FATFileObject was
  already initialized, first call CcUninitializeCacheMap() on it
  before dereferencing it.

- Send FSRTL_VOLUME_LOCK, FSRTL_VOLUME_LOCK_FAILED and
  FSRTL_VOLUME_UNLOCK notifications during volume locking (and failure)
  and volume unlocking.

- Flush the volume before locking it, and clean its dirty bit if needed.

NOTE: In addition to checking for VCB_CLEAR_DIRTY, we also check for the
presence of the VCB_IS_DIRTY flag before cleaning up the dirty bit: this
allows us to not re-clean the bit if it has been previously cleaned.
This is needed for instance in this scenario:
- The volume is locked (it gets flushed and the dirty bit is possibly cleared);
- The volume then gets formatted with a completely different FS, that
  possibly clears up the first sector (e.g. BTRFS ignores 1st sector);
- The volume is then dismounted: if we didn't check whether VCB_IS_DIRTY
  was set prior to resetting it, we could attempt clearing it again! But
  now that the volume's filesystem has been completely changed, we would
  then try to modify the dirty bit on an erroneous position on disk!
  That's why it should not be touched in this case during dismounting.
- The volume is unlocked (same comment as above), and later can be
  detected as being BTRFS.
2018-11-25 09:00:40 +01:00
Eric Kohl
2410eef6d2 [PSDK] Add missing NELOG_ error codes to lmerrlog.h. 2018-11-24 22:29:02 +01:00
Pierre Schweitzer
0ec92100bc [TCPIP] Properly display local information for established connections 2018-11-24 22:26:06 +01:00
Eric Kohl
41f991b1be [MC] Add message 5300-5381 to netmsg.dll. 2018-11-24 22:07:28 +01:00
Pierre Schweitzer
aac38dfed8 [RDBSS] Fix a typo
Spotted by Hermès
2018-11-24 22:00:09 +01:00
Pierre Schweitzer
29c883e2a5 [NETSTAT] Add support for displaying UDP connections owning process
Our netstat can basically look like this now:
https://twitter.com/HeisSpiter/status/1066430887208919040
2018-11-24 21:41:11 +01:00
Pierre Schweitzer
fbdfe7bd40 [SDK] Add GetExtendedUdpTable() 2018-11-24 21:41:10 +01:00
Pierre Schweitzer
370b03b523 [IPHLPAPI] Reimplement GetUdpTable() using GetExtendedUdpTable() 2018-11-24 21:41:10 +01:00
Pierre Schweitzer
58cef01422 [IPHLPAPI] Implement GetExtendedUdpTable()
We only support IPv4 and UDP_TABLE_BASIC, UDP_TABLE_OWNER_PID
for now

CORE-5126
2018-11-24 21:41:10 +01:00
Pierre Schweitzer
6fb6c7b50b [IPHLPAPI] Implement getOwnerUdoTable(), to get UDP connections with owner PID 2018-11-24 21:41:10 +01:00
Pierre Schweitzer
13de7f08af [TCPIP] Implement enumerating UDP connections with owner PID 2018-11-24 21:41:10 +01:00
Pierre Schweitzer
2b55073360 [NETSTAT] Add support for displaying TCP connections owning process 2018-11-24 21:41:10 +01:00
Pierre Schweitzer
73c87d5c14 [IPHLPAPI] Reimplement GetTcpTable() using GetExtendedTcpTable() 2018-11-24 21:41:09 +01:00
Pierre Schweitzer
d76ac645e8 [IPHLPAPI] Don't leak memory 2018-11-24 21:41:09 +01:00
Pierre Schweitzer
c949a12506 [IPHLPAPI] Implement the IPv4 TCP_TABLE_OWNER_PID_* cases in GetExtendedTcpTable() 2018-11-24 21:41:09 +01:00
Pierre Schweitzer
dca7e5689f [IPHLPAPI] Implement getOwnerTcpTable(), to get TCP connections with owner PID 2018-11-24 21:41:09 +01:00
Pierre Schweitzer
411504b5f4 [TCPIP] Implement enumerating TCP connections with owner PID 2018-11-24 21:41:09 +01:00
Pierre Schweitzer
935978ee57 [TCPIP] Store creator PID in ADDRESS_FILE 2018-11-24 21:41:09 +01:00
Pierre Schweitzer
702d44c683 [IPHLPAPI] Implement the IPv4 TCP_TABLE_BASIC_* cases in GetExtendedTcpTable() 2018-11-24 21:41:08 +01:00
Eric Kohl
ded2783906 [MC] Add messages 3802-3969 and 5700-5729 to netmsg.dll. 2018-11-24 13:51:50 +01:00
Hermès Bélusca-Maïto
a31d2f820a [SETUPLIB] Improve the Freeldr timeout INI setting hack-fix. Dedicated to Mark Jansen ;-) CORE-15193 2018-11-24 02:45:03 +01:00
Pierre Schweitzer
91b013d387 [TCPIP] When enumerating sockets, retrieve their state and return it
This fixes netstat not having any state when enumerating connections.
Basically, now, our netstat produces stuff like:
https://twitter.com/HeisSpiter/status/1065871999266955264
2018-11-23 22:51:35 +01:00
Pierre Schweitzer
738f327668 [IP] Add a TCPGetSocketStatus() wrapper around LibTCPGetSocketStatus() 2018-11-23 22:51:35 +01:00
Pierre Schweitzer
29c1510423 [LWIP] Implement a LibTCPGetSocketStatus() function in our LwIP glue
It is used to query a socket state (established, closed, and so on).
2018-11-23 22:51:35 +01:00
Luo Yufan
a2819679ec [TRANSLATION] Update Simplified Chinese translation. (#1057) 2018-11-23 16:24:47 +01:00
Joachim Henze
432afb4161 [SHELL32] Improve CORE-15295 IDD_FILE_PROPERTIES
addendum to 0.4.11-dev-673-g
04e1263921

Actually this control must not statically consume width of 170.
There are two different versions of that dialog.
One has a "change"-button. In this case the edit must be only 100 wide.
In case we have the version without the change button, we resize it to have
170 width (same as its neighbor).

This commit is shared work of
Stanislav Motylkov, Giannis Adamopoulos and Joachim Henze.

Commit supersedes PR#1056.
2018-11-23 02:25:28 +01:00
Pierre Schweitzer
500a5151ea [TCPIP] Fix returned IP address when querying TCP connections
This gives something like that now: https://twitter.com/HeisSpiter/status/1065706156331606017 :-)

CORE-15363
2018-11-22 21:52:11 +01:00
Hermès Bélusca-Maïto
2403dea9b4 [README] Now that we got rid of ViewVC (see https://reactos.org/pipermail/ros-dev/2018-November/018970.html), update the SVN archive repo URL. 2018-11-22 01:00:07 +01:00
Stanislav Motylkov
c1195f5300 [SYSDM][DXDIAG][SYSTEMINFO] Include only one user-mode DMI library (#1054)
Include only one user-mode DMI library. Addendum to baf2c0c.
2018-11-21 22:07:54 +01:00
Stanislav Motylkov
baf2c0cc2d [DRWTSN32] Add SMBIOS data to the system information (#1017)
[DMILIB][UDMIHELP] Allow functions to be linked with C++ code.
2018-11-21 21:49:15 +01:00
Denis Malikov
d897e271a2 [KERNEL32] FlsAlloc - fiber local storage list was not initialized before using 2018-11-21 19:18:01 +01:00
William Kent
c1b4d51f0b [MC] Fix syntax errors in errcodes.mc
This was causing the MSVC build to fail.
2018-11-21 00:15:42 +01:00
Adam Stachowicz
3562339a88 Update README.md (#1051)
Powered by markdownlint ;)
2018-11-20 23:59:18 +01:00
Pierre Schweitzer
8a98c85c1f [IPHLPAPI] Fix checking entity when enumerating TCP/UDP connections
This fixes the API not to return the current TCP connections while
enumerating them (and thus, netstat not displaying them).
It seems we return garbage for now though
2018-11-20 22:14:25 +01:00
William Kent
f6f1255cf7 Add support for latest VS2017 (15.0) compiler (#1050)
Latest VS 2017 CL.EXE compiler (version 19.16...) wasn't being correctly detected by the configure.cmd script.
2018-11-19 17:34:08 +01:00
Serge Gautherie
154ed37062 [NETSHELL] Fix '0' typo, in a text 2018-11-19 09:57:42 +02:00
Eric Kohl
634192cccd [MC] Add messages 3710-3790 to netmsg.dll. 2018-11-18 23:58:12 +01:00
Hermès Bélusca-Maïto
70fa2e2eb4 [SETUPLIB][USETUP] Additional partition validity checks.
Always perform the partition validity checks when creating new
primary/extended/logical partitions, and also when a new partition
is automatically created when unpartitioned space is selected for
ReactOS installation.

CORE-12246
2018-11-18 21:13:36 +01:00
Hermès Bélusca-Maïto
2d320f5a8d [OLE32] The CoDisconnectContext() stub added in 6a2f9673 (PR #1044) is actually Vista+. Caught by Thomas Faber. 2018-11-18 21:06:22 +01:00
Hermès Bélusca-Maïto
e77ffe2c72 [FILEBROWSER] Remove a duplicated include. Noticed by Manuel Oppermann (see ros-dev ML). 2018-11-18 21:06:21 +01:00
Hermès Bélusca-Maïto
769280c520 [CHKDSK] Fix italian translation, by Marco Savelli (addendum to cfff74da). 2018-11-18 21:06:19 +01:00
Pierre Schweitzer
f29016dabe [TCPIP] Properly handle listening sockets
We first check if a socket is listening before
checking whether it has connections. This allows
properly returning listening address.
Furthermore, if it's listening, properly return
status so that it displays nice in netstat.

Result: https://twitter.com/HeisSpiter/status/1064245622323200000 :-)
2018-11-18 20:51:54 +01:00
Pierre Schweitzer
d18b1fe24b [IPHLPAPI] Properly count UDP entries
Fixes crash when running netstat -a with
no TCP connections but with UDP connections

CORE-5401
2018-11-18 18:56:36 +01:00
Pierre Schweitzer
007f43dd56 [TCPIP] Implement returning UDP connections
CORE-5401
2018-11-18 16:30:45 +01:00
Pierre Schweitzer
77d5f04f22 [TCPIP] Implement returning TCP connections
CORE-5401
2018-11-18 16:30:45 +01:00
Pierre Schweitzer
e3cb9697a4 [IPHLPAPI] Implement getNumUdpEntries() and getUdpTable()
CORE-5401
2018-11-18 16:30:45 +01:00
Pierre Schweitzer
678204790c [IPHLPAPI] Implement getNumTcpEntries() and getTcpTable()
CORE-5401
2018-11-18 16:30:45 +01:00
Pierre Schweitzer
7c0a8eb555 [TDILIB] Make tdiGetSetOfThings() return useful status 2018-11-18 16:30:45 +01:00
Eric Kohl
d70e92fcd3 [MC] Add messages 3000-3049, 3660-3695 and 5500-5517 to netmsg.dll. 2018-11-18 16:25:04 +01:00
Denis Malikov
6a2f967302 [OLE32] Add stub for CoDisconnectContext function (#1044) 2018-11-18 15:32:07 +01:00
Giannis Adamopoulos
a9d92a99c6 [NETSHELL] Add some notes about how it can be tested in windows 2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
f722ddac96 [NETSHELL] CNetConnectionPropertyUi: Add a comment about how windows write the settings 2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
0654d60eef [NETSHELL] Move the implementation of the Disable button of the status dialog to CNetConnection::Disconnect 2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
132463abf2 [NETSHELL] CNetConUiObject: Implement the Connect and Disconnect context menu items 2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
7506198780 [NETSHELL] Optionally use the system's CLSID_ConnectionManager
Use a central compile option like we do in the rest of the shell so that when testing in windows we can switch using the one in the current dll or the one registered in the system.
Note that not only CLSID_ConnectionManager isn't implemented in netshell, it can't even be instantiated as CLSCTX_INPROC_SERVER because it is implemented by the netman service
2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
21a5a559f2 [NETSHELL] Rewrite how pidls are created and accessed.
What we did before was completely wrong as we stored pointers in the pidl.
2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
769b102e5f [NETSHELL] Use smart pointers and IID_PPV_ARG 2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
c73d8c64bb [NETSHELL] Use ATL 2018-11-18 14:01:54 +02:00
Giannis Adamopoulos
8d47872ea0 [NETSHELL] Add missing license headers
Since one of the first files in the module (shfldr_netconnect.c) used the LGPL2.1+ license, all the other files have the same license
2018-11-18 14:01:54 +02:00
Eric Kohl
0ab3a1f2d5 [MC] Add messages 3301-3421 to netmsg.dll and renamed messages 3500-3547. 2018-11-18 10:54:28 +01:00
Pierre Schweitzer
5e024bfeb6 [MPR] Drop a nasty ReactOS specific hack
That hack (cf. previous commit) was used to restore all
the saved connections. But, because it was implemented
in the wrong place, each time the MPR DLL was attached,
it was trying to restore connections.

With that commit and the previous one, now, ReactOS has
a correct behavior (it tries to bring back connections
only at session opening) and will reduce "workload" for
applications attaching MPR dll.

CORE-15310
2018-11-17 22:13:34 +01:00
Pierre Schweitzer
4cf87fdb2c [WINLOGON] Restore saved connections on session opening
This avoids using a nasty hack in MPR.

CORE-15310
2018-11-17 22:13:34 +01:00
Pierre Schweitzer
8b0a126445 [MPR] Implement remembered connection enumeration
Submitted upstream

CORE-15310
2018-11-17 22:13:25 +01:00
Bișoc George
34c812365f [OSK] Implement the welcome box (#1007)
In Windows XP, both in On-Screen Keyboard and in Magnify there is a welcome box which is shown upon startup of the application. This feature is already implemented for Magnify in ReactOS which however in On-Screen Keyboard is still unimplemented.
2018-11-17 21:27:33 +01:00
Eric Kohl
9ff64cfebb [MC] Add messages 3051-3099 and 5600-5602. This completes the SERVICE and SERVICE2 message ranges from lmsvc.h. 2018-11-17 21:13:31 +01:00
Pierre Schweitzer
4f1e9252f1 [NTOSKRNL] ExfReleaseRundownProtectionCacheAware*() functions don't return anything 2018-11-17 17:36:18 +01:00
Pierre Schweitzer
7ed17cd714 [NTOSKRNL] Implement ExfReInitializeRundownProtectionCacheAware()
We're done with cache-aware rundown protections!
2018-11-17 16:44:37 +01:00
Pierre Schweitzer
05cca64448 [NTOSKRNL] Implement ExfRundownCompletedCacheAware() 2018-11-17 16:44:37 +01:00
Pierre Schweitzer
fed61c6305 [NTOSKRNL] Replace ExGetRunRefForCurrentProcessor() by a more generic function 2018-11-17 16:44:36 +01:00
Pierre Schweitzer
7e849470af [NTOSKRNL] Implement ExfWaitForRundownProtectionReleaseCacheAware() 2018-11-17 16:44:36 +01:00
Pierre Schweitzer
acdf74aa3b [NTOSKRNL] Properly align runrefs on SMP in ExInitializeRundownProtectionCacheAware() 2018-11-17 16:44:36 +01:00
Pierre Schweitzer
c5db202bdc [NTOSKRNL] Properly align allocation on SMP in ExAllocateCacheAwareRundownProtection() 2018-11-17 16:44:36 +01:00
Pierre Schweitzer
36fadc2dca [NTOSKRNL] Implement ExfAcquireRundownProtectionCacheAwareEx(), ExfReleaseRundownProtectionCacheAwareEx() 2018-11-17 16:44:35 +01:00
Pierre Schweitzer
afb2214154 [NTOSKRNL] Simplify implementation of ExfAcquireRundownProtectionCacheAware(), ExfReleaseRundownProtectionCacheAware() 2018-11-17 16:44:35 +01:00
Pierre Schweitzer
010b9b5469 [NTOSKRNL] Implement ExGetRunRefForCurrentProcessor() to get runref for a proc 2018-11-17 16:44:35 +01:00
Pierre Schweitzer
7e36e76d5d [NTOSKRNL] Implement ExfAcquireRundownProtectionCacheAware(), ExfReleaseRundownProtectionCacheAware() 2018-11-17 16:44:35 +01:00
Pierre Schweitzer
47d309b262 [NTOSKRNL] Implement ExSizeOfRundownProtectionCacheAware() 2018-11-17 16:44:35 +01:00
Pierre Schweitzer
ce94d37dbe [NTOSKRNL] Implement ExInitializeRundownProtectionCacheAware() 2018-11-17 16:44:35 +01:00
Pierre Schweitzer
bc77f83888 [NTOSKRNL] Implement ExAllocateCacheAwareRundownProtection() and ExFreeCacheAwareRundownProtection() 2018-11-17 16:44:34 +01:00
Bișoc George
cfff74daed [CHKDSK] Implement translation files for Romanian & Italian (#961) 2018-11-17 15:16:36 +01:00
Bernhard Feichtinger
76daaf9faf [MODULES] Add a convenient option to transfer files into a new installation (#877)
Purpose:
When doing a PXE BootCD installation, you may be left without networking, usb and a cd drive.
This adds an easy way to include a few or more files to the installation which are then present on the disk after the installation and which does not require any change to ReactOS source code/build script files (and no manual editing of boot/bootdata/packages/reactos.dff.in).

Proposed changes:
Adds a new modules/3rdparty folder which lets the files end up in C:\ReactOS\3rdParty ready for use.
2018-11-16 23:26:58 +01:00
Bișoc George
c00bafaad9 [SHELL32] Print out the error code (#973)
When SearchPathW, GetFullPathNameW and PathFileExistsW fail, output the error code.
2018-11-16 23:09:15 +01:00
Ștefan Fulea
3d48aa2992 [MSPAINT] Fix scrollbar presence on canvas/view fitting (#878)
* [MSPAINT] Fix scrollbar presence on canvas/view fitting

This is a small fix for a scrollbar related edge case functionality exhibited in mspaint (and in a lesser degree also elsewhere in instances of) scrollbar controlled content. As known, the scrollbars presence is given by the size ratio between the accommodating outer frame and the scroll-controlled contents inside it, and it works for the most part. There is, however, a case where the presence of both toolbars is kept even when the contents would fit the frame (if not for the scrollbars themselves that increase the size of the contents' area). Please take the current commit as a demo fix and a provisional correction for mspaint (as I think that the proper fix should reside in common controls).

* [MSPAINT] Fix a small mistake and improve readability in UpdateScrollbox()

Although with no visible impact on testing, I've used a wrong constant related to vertical scrollbox width in one instance (SM_CXHSCROLL instead of SM_CXVSCROLL), and this fixes it. Also, prefer using constants, to improve a bit readability and performance (by avoiding repeated function calls).
2018-11-16 23:05:51 +01:00
Eric Kohl
c83c683bc3 [MC] Add messages 3190-3299. The first NELOG range is done. 2018-11-16 22:26:50 +01:00
Eric Kohl
4a889acc63 [PSDK] Add missing NELOG-codes to lmerrlog.h 2018-11-16 22:26:49 +01:00
Pierre Schweitzer
007cc5cd8a [ACGENRAL] Don't leak memory on failure in InitIgnoreFreeLibrary()
CID 1441306
2018-11-16 22:07:09 +01:00
Pierre Schweitzer
52da844825 [COMCTL32] Don't leak memory in CB_ThemedPaint()
CID 1441313
2018-11-16 22:07:09 +01:00
Pierre Schweitzer
6416ee982f [WIN32SS] Don't leak memory on failure in IntGdiWidenPath().
CID 1441350
2018-11-16 22:07:08 +01:00
Pierre Schweitzer
699af9f62a [SETUPAPI] Allocate big enough buffer in CM_Query_Resource_Conflict_List().
CID 1441357
2018-11-16 22:07:08 +01:00
Pierre Schweitzer
2255d5f5b6 [WIN32SS] Avoid an user-after-free in FontFamilyFillInfo().
CID 1441367
2018-11-16 22:07:08 +01:00
Pierre Schweitzer
3fddd3157c [COMCTL32] Don't leak memory in PB_ThemedPaint()
CID 1441373
2018-11-16 22:07:08 +01:00
Pierre Schweitzer
a0c33934fc [NTOSKRNL] Properly check for negative values in IoCheckEaBufferValidity()
CID 1441355, 1441382
2018-11-16 22:07:08 +01:00
Pierre Schweitzer
402c983094 [SYSSETUP] Fix error message in ApplyRegistryValues()
CID 1441398
2018-11-16 22:07:07 +01:00
Pierre Schweitzer
4b4c0aabcd [FASTFAT] Properly return failure in vfatFindDirSpace()
CID 1441394
2018-11-16 22:07:07 +01:00
Ercan Ersoy
23b1103fd5 [TRANSLATION] Add/update Turkish translations. (#1043)
Add or update Turkish translations for: CHKDSK, DISKPART, FORMAT, SUBST and WINLOGON.
2018-11-16 16:59:09 +01:00
Katayama Hirofumi MZ
5aa7bb32f1 [SYSTEMINFO] Fix Chinese resource to fix MSVC2010 build (#1041) 2018-11-16 09:32:41 +09:00
Eric Kohl
b21177a7d8 [MC] Add messages 3150-3186 and 3530-3547 to netmsg.dll. 2018-11-15 22:39:31 +01:00
Giannis Adamopoulos
9baf05f164 [SHELL32] COpenWithMenu: Use ShellExecuteExW to open the file
CORE-15353
2018-11-15 21:26:17 +02:00
Pako Smith
40288a7032 [TRACERT] Fix Coverity #1434258 "Out-of-Bounds access" (#1038) 2018-11-15 14:15:23 +01:00
Pako Smith
6cc4e9f6f3 [CMD] Fix Coverity #715934 "Copy-paste error" (#1040)
Fix linked-list pointer comparison.
2018-11-15 11:57:41 +01:00
Eric Kohl
9491979ac3 [MC] Add messages 3100-3141 and 3516-3529 to netmsg.dll. 2018-11-14 22:30:19 +01:00
Luo Yufan
d8a4e0a8e3 [TRANSLATION]Update Simplified Chinese translation. (#1032) 2018-11-14 21:42:21 +09:00
Baruch Rutman
97150ce9dd [WINMM] Sync wine commit ebae298 as a fix for CORE-15336 (#1031)
Reduce CPU usage by only attempting once to load the default joystick driver.
Fix for CORE-15336

Imported wine commit ebae298
ebae298aa4
https://www.winehq.org/pipermail/wine-devel/2018-November/134767.html
2018-11-14 12:32:55 +01:00
Pako Smith
13e566444d [TFTPD] Fix Coverity #1434273 "Out-of-Bounds access" (#1037)
'extbuff' must be of size _MAX_PATH to comply with its usage in the GetModuleFileName() call made in the code.
2018-11-14 12:30:30 +01:00
Pierre Schweitzer
95bc44e214 [NTOSKRNL] Don't leak DACL
Spotted by Thomas :-)
2018-11-11 23:21:36 +01:00
Eric Kohl
3c8356e752 [MC] Add messages 2500-2999. The NERR-range is complete. 2018-11-11 22:43:09 +01:00
Eric Kohl
1f80b6648b [PSDK] Add missing NERR-codes to lmerr.h 2018-11-11 22:43:08 +01:00
Hermès Bélusca-Maïto
cbaa8e7dfb [NTOS:IO] RAW-FS: Few improvements.
- Simplify the volume-deletion code in RawCheckForDismount().

- Fixes the OpenCount check in RawClose(): the VCB mutex must be
  released when the volume has not been dismounted, either because
  OpenCount != 0 or because RawCheckForDismount() returned FALSE.

- Explicitly use VCB_STATE_LOCKED instead of hardcoding its value.

- In IRP_MN_VERIFY_VOLUME handling, lock the volume before playing
  with it, and again let the volume be dismounted only if OpenCount == 0
  (and the IoDeleteDevice() call is done by RawCheckForDismount()).
2018-11-11 21:56:18 +01:00
Hermès Bélusca-Maïto
a5ead049d9 [NTOS:IO] RAW-FS: Minor code formatting only. 2018-11-11 21:56:17 +01:00
Hermès Bélusca-Maïto
f527e23aa7 [SETUPLIB] Lock the BTRFS volume before installing the new bootsector code.
CORE-15334 CORE-15339

The BTRFS driver requires the volume to be locked in order to modify
the first sectors of the partition, even though they are outside the
file-system space / in the reserved area (they are situated before
the super-block at 0x1000) and is in principle allowed by the NT
storage stack.
So we lock here in order to write the bootsector at sector 0.
If locking fails, we ignore and continue nonetheless.

See also the following links for reference:
https://stackoverflow.com/a/12928934
https://docs.microsoft.com/en-us/windows/desktop/api/fileapi/nf-fileapi-writefile
https://support.microsoft.com/en-us/help/942448/changes-to-the-file-system-and-to-the-storage-stack-to-restrict-direct
2018-11-11 21:55:48 +01:00
Hermès Bélusca-Maïto
bfb2b88f82 [SETUPLIB] Use proper file share access when opening partitions for raw access. 2018-11-11 21:47:37 +01:00
Mark Harmstone
5729380349 [BTRFS] Import BTRFS upstream commit e43183a0 "open_file: set granted_access when creating file".
Better solution for the original problem described at:
https://github.com/maharmstone/btrfs/pull/123
2018-11-11 21:47:29 +01:00
Eric Kohl
bebbb69b21 [MC] Add messages 2300-2484 to netmsg.dll. 2018-11-11 19:54:32 +01:00
Eric Kohl
7021115c21 [PSDK] Add missing NERR_IsDfsShare to lmerr.h. 2018-11-11 19:54:30 +01:00
Giannis Adamopoulos
73b679e4a6 [NETSHELL] CNetConUiObject: Fix implementation of IContextMenu.
The id that InvokeCommand gets is the one used by QueryContextMenu after subtracting idCmdFirst.
2018-11-11 20:28:36 +02:00
Giannis Adamopoulos
cd7a331749 [NETSHELL] CNetConUiObject: Implement handling the rename context menu item 2018-11-11 20:28:34 +02:00
Giannis Adamopoulos
af3a1b1936 [NETSHELL] CNetConUiObject: Use a switch in InvokeCommand 2018-11-11 20:28:32 +02:00
Giannis Adamopoulos
41639e94c2 [NETSHELL] CNetworkConnections: Remove SFGAO_CANRENAME bit when renaming shouldn't be enabled.
This fixes the problem where renaming could take place by clicking on a name even when it is disabled in the context menu.
CORE-14116
2018-11-11 20:28:31 +02:00
Giannis Adamopoulos
91119080bc [NETSHELL] CNetworkConnections: SetNameOf should always return a new pidl on success.
CORE-14116
2018-11-11 20:28:29 +02:00
Giannis Adamopoulos
bcd309cb7a [SHELL32] CDefView: Don't assume that SetNameOf always works properly so initialize pidlNew to NULL before
CORE-14116
2018-11-11 20:28:27 +02:00
Ged Murphy
f66f58991c [FLTMC] Add volumes usage info 2018-11-11 18:05:47 +00:00
Ged Murphy
0231c8baec [FLTMC] Implement 'fltmc volumes' 2018-11-11 17:58:39 +00:00
Ged Murphy
5617ba9841 [FLTMC] Support displaying legacy FS filters 2018-11-11 17:58:38 +00:00
Ged Murphy
14a05528d0 [FLTMC] Fix output when no args are shown 2018-11-11 17:58:38 +00:00
Ercan Ersoy
44323e610f [TRANSLATION] Turkish translations of many components. (#1026) 2018-11-11 18:13:48 +01:00
Luo Yufan
5cdee1ab82 [TRANSLATION] Update Simplified Chinese translation. (#1028) 2018-11-11 17:57:12 +01:00
Eric Kohl
0d3f1a1c02 [MC] Add messages 2250-2299 and 3510-3513 to netmsg.dll. 2018-11-11 17:56:05 +01:00
Adam Słaboń
b8044d6783 [TRANSLATION] Polish translation update (#1029)
Translated missing strings and improved existing translations.
2018-11-11 17:55:01 +01:00
Pierre Schweitzer
26408b02f1 [SETUP] Align partition start at 2048 minimum
This will allow compatibility with modern OSes and
modern disk management utilities.
It will also improve performances by properly aligning
partition start.
And it will let enough room at the begin of the disk
for 3rd party bootloaders.

WARNING: this is not compatible with previous partition
model, and old one will likely not be compatible. You'll
have to erase your whole partition table and start from
scratch.
2018-11-11 17:38:37 +01:00
Mark Jansen
86ced3f237 [DRWTSN32] Include displacement in stacktrace. 2018-11-11 17:21:16 +01:00
Mark Jansen
027df341f3 [GFLAGS] Use the registry access flags passed in 2018-11-11 17:21:16 +01:00
Eric Kohl
8d8188b679 [MS] Add messages 2200-2249 and 3502-3507 to netmsg.dll. 2018-11-11 15:46:55 +01:00
Pierre Schweitzer
6747dacf10 [NTOSKRNL] Create a security descriptor for the \security directory object 2018-11-10 23:25:10 +01:00
Bișoc George
501145e27b Update the release info 2018-11-10 15:53:14 +01:00
Pierre Schweitzer
102ba75f15 [NTOSKRNL] Return security descriptor size when querying object basic info 2018-11-10 10:54:10 +01:00
Pierre Schweitzer
1fb32afefa [NTOSKRNL] Return quota information when querying object basic info 2018-11-10 10:54:06 +01:00
Eric Kohl
0b2da20b41 [MC] Add some messages to netmsg.dll. 2018-11-10 10:33:23 +01:00
Luo Yufan
91e032f9b1 [TRANSLATION] Update Simplified Chinese translation. (#1025) 2018-11-09 15:31:53 +01:00
Ercan Ersoy
ea47d95b05 [OSK][RAPPS][USETUP] Turkish translations update. (#1024) 2018-11-09 15:13:03 +01:00
Ercan Ersoy
89090b1618 [FDEBUG][OSK][WINHLP32] Turkish translations update. (#1022) 2018-11-08 18:52:56 +01:00
Luo Yufan
7fafe923cb [SYSDM] Update Simplified Chinese translation. (#1021) 2018-11-08 14:08:34 +01:00
Ercan Ersoy
bb0de60a4e [USETUP] Fix and add Turkish translation. (#1020) 2018-11-08 13:25:45 +01:00
Hermès Bélusca-Maïto
073c09e491 [USETUP] Display the chosen filesystem name in case of bootcode installation failure.
Simplified implementation of the proposed solution by George Bișoc
and revised by Victor Perevertkin from PR #952.

NOTE: For whatever reason ERROR_INSTALL_BOOTCODE and ERROR_WRITE_BOOT
seem to be redundant with each other. To be investigated...
2018-11-08 01:02:21 +01:00
Bișoc George
4c6370de16 [USETUP] Remove the PARTITION_EXT2 constant and use PARTITION_LINUX in favour since PARTITION_EXT2 is just an alias to PARTITION_LINUX
And since we're here, add PARTITION_LINUX_EXT to ReactOS I/O controls header (rosioctl.h).
2018-11-07 23:16:29 +01:00
Bișoc George
538f9d6aae [USETUP] When choosing BTRFS for the partition, don't think of it as Ext2 but just a Linux partition
Most of Linux filesystems have the MBR ID assigned as 0x83 and when the user chooses BTRFS upon partitions page wizard, we're thinking of the partition as having Ext2 filesystem which is wrong and misleading.
2018-11-07 23:16:29 +01:00
Joann Mõndresku
b63e2d5046 [TRANSLATIONS] Style fixes for Estonian 2018-11-07 22:10:27 +01:00
Ercan Ersoy
2e562fd690 [WELCOME] Fix some Turkish translations. 2018-11-07 22:09:17 +01:00
Ercan Ersoy
7c0c3a1bd5 [REACTOS] Fix and add Turkish translations. 2018-11-07 22:09:17 +01:00
Joann Mõndresku
cc439606a5 [TRANSLATIONS] Estonian for various base applications 2018-11-07 16:58:16 +01:00
Katayama Hirofumi MZ
3ccb48e6c2 [INCLUDE] typo in msgdump.h, s/MS_msgdump/MD_msgdump/ (#1016)
Fix #1015.
2018-11-08 00:51:41 +09:00
Zcooger
52eee8955c [APPWIZ] Update polish translation (#921) 2018-11-07 16:20:32 +01:00
Katayama Hirofumi MZ
df5bee6509 [INCLUDE] Add <winxx.h> and <msgdump.h> (#1015)
File "sdk/include/reactos/msgdump.h" I added helps us dump Win32API message info. Use freely.
2018-11-07 22:28:59 +09:00
Joachim Henze
04e1263921 [SHELL32] Fix CORE-15295, wrong edit width in IDD_FILE_PROPERTIES for all langs 2018-11-07 01:40:53 +01:00
Eric Kohl
f26513f942 [NETSHELL] Add missing interface stubs to CNetworkConnections (aka CConnectionFolder). 2018-11-06 22:23:45 +01:00
Hermès Bélusca-Maïto
bbc4bb2d08 [REACTOS] Add features/usability additions.
- Interface the TreeList code and populate it with the list of
  discovered disks and partitions. Code is adapted from USETUP.
  Also display the names of the disks.

- Display some installation settings summary, before doing the
  installation proper.

- Force the user to select a checkbox when (s)he acknowledges that
  ReactOS is alpha-quality software and may break on his/her computer
  or corrupt his/her data.

- Improve wizard pages transitions and buttons enabling/disabling.

- Press Shift-F10 to start a command-line (as in the 2nd-stage setup
  in syssetup.dll).

- Use some explicit UNICODE functions/macros.
2018-11-06 00:09:16 +01:00
Hermès Bélusca-Maïto
a531843245 [REACTOS] Add two icons (drive and partition) for the drive list. 2018-11-06 00:09:15 +01:00
Hermès Bélusca-Maïto
6b1e7b182a [REACTOS] Update translations and add dialog controls for Setup Summary dialog. 2018-11-06 00:09:15 +01:00
Hermès Bélusca-Maïto
2fdfb411b6 [REACTOS] Add a TreeList control (TreeView with columns).
Add the TreeList control from Anton Zechner and Sébastien Kirche
from https://github.com/sebkirche/treelist (under GPL-3.0+) as a
*TEMPORARY* solution until a better-suited control for ReactOS is
developed.

- Compilation fixes for the TreeList control.
2018-11-06 00:09:14 +01:00
Hermès Bélusca-Maïto
e282ec39a2 [SETUPLIB] Retrieve and store the machine (architecture) ID of the discovered NTOS installations. Will be used later. 2018-11-06 00:09:13 +01:00
Hermès Bélusca-Maïto
f41750ab7f [SETUPLIB][USETUP] Partition code improvements.
- SETUPLIB and USETUP: Convert PARTENTRY::DriveLetter to WCHAR.

- SETUPLIB: Retrieve volume label.

- SETUPLIB and USETUP: Move the partition types (IDs) table from
  USETUP to SETUPLIB so that they can share it with the 1st-stage
  GUI installer too. Also take the opportunity to update the table
  with information from http://www.win.tue.nl/~aeb/partitions/partition_types-1.html
  and cross-checked with the list from Paragon Hard-Disk Manager.

- USETUP: Simplify PrintPartitionData().
- Add some code comments.
2018-11-06 00:09:02 +01:00
Hermès Bélusca-Maïto
7c3570f9f5 [REACTOS] Add helpers and modify ConvertNtPathToWin32Path() to make it use a cache of NT/Win32 path mappings.
This increases performance for each time the SETUPLIB calls (using NT paths)
Win32 SetupAPI functions which of course only accept Win32 paths.

- Handle also the fact that a NT path to convert may start with
  \Device\HarddiskX\PartitionY\..., which can be a symlink to
  \Device\HarddiskVolumeN\... on some systems. In that case, the
  Win32 path mapping should be done slightly differently.

- Add support for network mapped drives.
2018-11-06 00:04:30 +01:00
Hermès Bélusca-Maïto
dd2fe4e126 [REACTOS] Diverse UI improvements.
- Improve UI usage and wizard transitions (Work In Progress).
- Add interfacing code that display installation status.
- When the user attempts to cancel the installation during file copying,
  pause the file copying, and restart it if the user changes it mind and
  wants to continue the installation. Otherwise file copying is properly
  halted.
2018-11-06 00:04:29 +01:00
Hermès Bélusca-Maïto
86f31289ef [BOOTDATA][SETUPLIB][REACTOS] INF support fixes.
- BOOTDATA: Use standard INF signature string, so that they can be
  opened successfully using ReactOS' or Windows' setupapi.dll with
  the INF_STYLE_WIN4 style.

- SETUPLIB: Use the correct INF_STYLE_* INF styles in SpInfOpenInfFile() calls.

- REACTOS : Switch thread locale to user-specified LocaleId when calling
  SetupOpenInfFileW(), so that the correct localized strings are used.
2018-11-06 00:04:19 +01:00
Hermès Bélusca-Maïto
42758b303b [SETUPLIB] Fixes and improvements for the file copying code.
- In PrepareCopyInfFile(), explicitly use AddSectionToCopyQueueCab()
  to retrieve the files from the CAB INF.

  Otherwise if one continued to use and rely on AddSectionToCopyQueue()
  to do this job instead, bad things could happen like, re-enumerating
  twice or more (and adding them to the file queue) the same files.
  This is because in the new code AddSectionToCopyQueue() can be called
  many times to deal with different SIF file sections. The old code then
  called AddSectionToCopyQueueCab() in turn, but on the same list...
  Now the steps performed are clear, and everything works as intended.

- Simplify the code that computes the full source and destination paths
  for the files to be copied and directories to be created, using helper
  functions.

- Compute the source file and target location from the TXTSETUP.SIF
  entries in a NT-compatible manner.
2018-11-05 23:35:14 +01:00
Hermès Bélusca-Maïto
81c0d8a256 [BOOTDATA] Use a Win2k3-compatible TXTSETUP.SIF layout for the specification of the files list.
Also add detailed documentation about the meaning of each field, obtained from:
- my own tests;
- http://www.msfn.org/board/topic/125480-txtsetupsif-syntax/
- http://www.msfn.org/board/topic/127677-txtsetupsif-layoutinf-reference/

In addition, add a spreadsheet that helps generating the files list.

Note that the files source directory is "\reactos", until we use
per-architecture directories in the installation medium.
2018-11-05 23:35:12 +01:00
Hermès Bélusca-Maïto
3d137b05d1 [SETUPLIB][USETUP] Move all the code that performs file copying into the SETUPLIB. 2018-11-05 23:18:47 +01:00
Hermès Bélusca-Maïto
f894631472 [SETUPLIB][USETUP] Add support for setup error handling. 2018-11-05 12:03:19 +01:00
Katayama Hirofumi MZ
64e217e97c [WIN32SS][FONT] Fix regression of #1004 (#1012)
Signed-off-by: Doug Lyons <douglyons@douglyons.com>
CORE-15333
2018-11-05 16:24:23 +09:00
Eric Kohl
0d4591c672 [SCHEDSVC] Start jobs on timeout
- Start jobs on timeout
- Add job flags to the idl file
2018-11-05 00:24:16 +01:00
Katayama Hirofumi MZ
7f679a116b [WIN32SS][FONT] Fix ntmCellHeight value to usWinAscent + usWinDescent (#1010)
CORE-15331
2018-11-05 06:03:53 +09:00
Eric Kohl
751674c98e [MC] Add some messages to netmsg.dll 2018-11-04 18:39:13 +01:00
Eric Kohl
ee90e7f608 [LSASRV] Return STATUS_DIRECTORY_SERVICE_REQUIRED for all trusted domain functions that use a policy handle and a domain name or domain SID when the machine is not a domain controller. 2018-11-04 15:27:57 +01:00
Eric Kohl
91eaa5e2d4 [LSASRV] Coding style fixes 2018-11-04 12:50:21 +01:00
Serge Gautherie
a4859bf283 [KMTESTS:MM] Fix 'PAGE_NOACCESS' copypasta, in an error string
ROSTESTS-110
2018-11-03 16:36:24 +01:00
Jérôme Gardou
5d91d52417 [KMTESTS/MM] Enable again accessing forbidden memory.
Also adda test case for the PAGE_GUARD case

ROSTESTS-110
2018-11-03 12:50:16 +01:00
Jérôme Gardou
df25e4e791 [NTOS/MM] Properly handle page faults in regions marked with
PAGE_NOACCESS or PAGE_GUARD

ROSTESTS-110
2018-11-03 12:50:16 +01:00
Jérôme Gardou
47ac7a2b28 [NTOS/MM] Move up MmAlterViewAttributes for later use in MmNotPresentFaultSectionView
No code change
2018-11-03 12:50:16 +01:00
Katayama Hirofumi MZ
2737d9144d [WIN32SS][FONT] Define IntUnicodeStringToBuffer function and use it (#1004)
- Define IntUnicodeStringToBuffer function to copy the contents of a UNICODE_STRING to a string buffer with a UNICODE_NULL correctly.
- Use it.
JIRA issue: N/A
2018-11-03 05:42:58 +09:00
Katayama Hirofumi MZ
4abba2b7ac [WIN32SS][FONT] Improve Precision Penalty (#1006) 2018-11-03 05:37:05 +09:00
Thomas Faber
8bb1b39f66 [REACTOS] Don't include another module's PCH aka fix build. 2018-11-02 11:14:09 +01:00
Katayama Hirofumi MZ
08cfe38ec6 [WIN32SS][FONT] Add ASSERT_FREETYPE_LOCK_HELD(); in FillTMEx (#1005)
Add a assertion for locking, in FillTMEx function of freetype.c. CORE-15166
2018-11-02 18:53:50 +09:00
Pierre Schweitzer
497a9c8087 [SETUPAPI] Don't let LZClose() reset error code 2018-11-02 09:34:25 +01:00
Carlo Bramini
8236bb8f38 Avoid stray temp files in failure cases of do_file_copyW. CORE-12616 2018-11-02 09:22:34 +01:00
Katayama Hirofumi MZ
5d26cf5e2a [WIN32SS][FONT] Move IntUnLockFreeType(); in ftGdiGetTextMetricsW (#1002)
Adjust timing of FreeType unlocking in ftGdiGetTextMetricsW function of "freetype.c". JIRA issue: N/A
2018-11-02 16:29:18 +09:00
Katayama Hirofumi MZ
ce077bb5d3 [WIN32SS][FONT] Add DPRINT1 and ASSERT for font resize failure (#1003)
Add DPRINT1 and ASSERT calls for font resize failure in IntRequestFontSize function. JIRA issue: N/A
2018-11-02 16:28:00 +09:00
Hermès Bélusca-Maïto
8cbaca5724 [REACTOS] Temporarily exclude the 1st-stage GUI setup from build, until I (or someone else) finds the correct way to fix the GCC builds. 2018-11-01 23:20:27 +01:00
Hermès Bélusca-Maïto
1b0c26e21c [SETUPLIB][USETUP] Minor improvements.
- Use adequate access flag when opening symbolic links.
- Simplify the prototype of UpdateRegistry() since now both Setup INF
  handle and settings lists are inside the USETUP_DATA structure.
2018-11-01 18:55:45 +01:00
Hermès Bélusca-Maïto
13998a15c9 [USETUP] Improve SetupCommitFileQueueW() to make it compatible with its Win32 counterpart.
This means, call in the correct order the user callback with the correct
parameters (in particular the correct paths for file copy operations),
and check also for the callback returned value to know whether or not to
continue the file operations.
2018-11-01 18:55:44 +01:00
Hermès Bélusca-Maïto
8f1ab791fa [SETUPLIB][REACTOS][USETUP] Further improve the interfacing with INF and File-Queue APIs.
This allows using some of the SetupApi.dll functions when SETUPLIB is
used in the (Win32) GUI 1st-stage installer "REACTOS", while using the
custom implemented NT-aware functions in "USETUP".
2018-11-01 18:55:43 +01:00
Hermès Bélusca-Maïto
44c101c9dc [USETUP] Improvements for the File-queues code.
- Add support for delete and move/rename operations, which are needed
  for implementing ReactOS upgrading support.

- Use cabinet contexts.
- Use standard LIST_ENTRY structures for implementing the lists.

- Move the path-building hack code in SetupCommitFileQueueW() that had
  been introduced in r66604 (97bb83f) out of the file-queues code.

- Make the function prototypes compatible with win32's setupapi functions.
- Fix the format of the data passed to the custom notification handler.
- Adjust the file-copy callback to correctly use its arguments (setupapi-compatible).
2018-11-01 18:55:35 +01:00
Eric Kohl
ce15c84309 [UMPNPMGR] Implement PNP_DetectResourceConflict(). 2018-11-01 14:50:08 +01:00
Joachim Henze
ad34c91d1c [RICHED20] Revert ocr_reverse.cur to fix CORE-15190
Old cursor looks better.
We revert to SVN state r75865 and note the diff for Amine
so that the wrong version won't come back in the future.

Old file is just 326bytes while the one that we do not want is 33.134bytes
which means we will save some RAM as well.
2018-10-30 19:06:50 +01:00
Jérôme Gardou
5c61063d25 [CMAKE] Do not add any extension to separate debug symbol files (#1000)
There is no possibility for GDB to recognize them otherwise
2018-10-30 17:23:42 +01:00
Katayama Hirofumi MZ
e39863bdf6 [WIN32SS] Fix SwitchToThisWindow for #998 (#999)
Reduce a failure in SwitchToThisWindow testcase of #998. CORE-15165
2018-10-30 17:24:47 +09:00
Katayama Hirofumi MZ
665269be9c [APITESTS] Add InSendMessage check in SwitchToThisWindow testcase (#998)
CORE-15165
2018-10-30 17:14:37 +09:00
Katayama Hirofumi MZ
c550bad4ef [APITESTS] Improve CloseWindow testcase (#997)
Improve the testcase for user32!CloseWindow function.
2018-10-30 08:54:40 +09:00
Katayama Hirofumi MZ
328a4c3834 [APITESTS] Add CloseWindow testcase (#996)
Add a testcase for user32!CloseWindow function.
2018-10-30 08:38:03 +09:00
Katayama Hirofumi MZ
41b5f29514 [WIN32SS] Make window foreground in SwitchToThisWindow (#995)
CORE-15165
2018-10-30 08:13:05 +09:00
Pierre Schweitzer
f39f25ca17 [FLTMGR] Remove duplicated export 2018-10-29 23:56:39 +01:00
Ged Murphy
fa46f362ea [FLTMGR] Add a bit more basic code layout for filter registration
Needs implementing
2018-10-29 23:56:39 +01:00
Pierre Schweitzer
97066b792c [FLTMGR] Remove duplicated export 2018-10-29 23:56:39 +01:00
Ged Murphy
c73c1825e2 [FLTMGR] Callers must have registered an unload routine to be allowed to unload 2018-10-29 23:56:39 +01:00
Ged Murphy
4d603e689e [FLTMGR] Delete unused file 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
f21a2a6cfb [FLTMGR] Stub FltReleaseFileNameInformation() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
c6b9ee5649 [FLTMGR] Stub FltGetDestinationFileNameInformation() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
08c4954007 [FLTMGR] Stub FltAttachVolume() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
b67887df10 [FLTMGR] Export FltCreateCommunicationPort() and FltCloseCommunicationPort() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
1c5cc0ff08 [FLTMGR] Stub FltGetFileNameInformation() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
c5a314b0f2 [FLTMGR] Implement FltGetVolumeName() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
21fcbcb37f [FLTMGR] Stub FltDetachVolume() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
a7423ee45b [FLTMGR] Implement FltCreateFile() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
5fc37876d8 [FLTMGR] Stub FltCreateFileEx() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
b9c6debe30 [FLTMGR] Export FltCloseClientPort() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
4c1d7026f6 [FLTMGR] Stub FltGetFileNameInformationUnsafe() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
92dca37278 [FLTMGR] Implement FltEnumerateVolumes() 2018-10-29 23:56:39 +01:00
Pierre Schweitzer
5bdd806fb9 [FLTMGR] Export FltObjectDereference() and FltSendMessage() 2018-10-29 23:56:39 +01:00
Hermès Bélusca-Maïto
9169e881aa [USETUP] Refactor the cabinet handling code to place all the global state variables into a CABINET_CONTEXT structure.
Place also all the private cabinet definitions into the .c, keeping
into the header file only the "public" structures and function prototypes.
2018-10-28 23:57:06 +01:00
Hermès Bélusca-Maïto
1a173dfdb2 [SETUPLIB][REACTOS][USETUP] Re-organize the setup state variables and some helpers.
- Move a great deal of global variables into the USETUP_DATA structure
  (the SetupInf, the SetupFileQueue, the generic lists...).

- Place the common setup initialization code into an InitializeSetup()
  routine, and the cleanup code into FinishSetup().

- Implement the setup-code part support for the TXTSETUP.SIF setup
  source path override variables "SetupSourceDevice" and "SetupSourcePath"
  (see CORE-9023); support for them in SETUPLDR will be added later.
2018-10-28 23:40:28 +01:00
Hermès Bélusca-Maïto
9016b5f3ef [SETUPLIB] Silence noisy DPRINTs. 2018-10-28 23:40:26 +01:00
Pierre Schweitzer
3d68c01664 [KMTESTS:CC] Introduce a macro to test public BCB
For now, it's local, but it may be moved to some header
to be shared between tests.
2018-10-28 22:37:59 +01:00
Pierre Schweitzer
cf7969fbfa [NTOSKRNL] Fix refcounting for BCBs
Now, we make sure that we update ref count and BCB list membership
with the BCB lock held, in a row.
This will avoid race conditions where the BCB was removed from the
list, then referenced again, leading to inconsistencies in memory
and crashes later on.
This could notably be triggered while building ReactOS on ReactOS
(one would call this a regression).

CORE-15235
2018-10-28 20:48:01 +01:00
Bișoc George
0c88f79480 [USRMGR] Fix a truncated text on French resource
CORE-15267
2018-10-28 19:30:17 +01:00
Hermès Bélusca-Maïto
4bf9f6fa4a [SETUP:REACTOS] Populate the list of existing installations.
- In the 1st-stage GUI setup, display the list of existing discovered
  NTOS installations, with its name, installation path and vendor name,
  and an associated icon.
2018-10-28 19:00:01 +01:00
Hermès Bélusca-Maïto
f7ee1e2ffd [SETUP:REACTOS] Add a wizard page to select which existing OS installation to upgrade. 2018-10-28 18:59:56 +01:00
Hermès Bélusca-Maïto
82117d2192 [SETUP:REACTOS] Adapt the 1st-stage GUI setup to compile with the setuplib.
svn path=/branches/setup_improvements/; revision=75544

[SETUP:REACTOS] More interfacing of the 1st-stage GUI installer with the setuplib.

- Add a ConvertNtPathToWin32Path() helper function that allows converting
  NT paths like: \Device\CdRom0\i386\txtsetup.sif file into a Win32 path
  that the Win32 versions of the SetupApi functions (e.g. SetupOpenInfFileW)
  can accept.
  Note that RtlNtPathNameToDosPathName() cannot be used here because this
  function only works for NT paths within the \DosDevices\ (or \??\) NTObj
  directory, and not in other directories.

- Use this helper function in the implementation of SetupOpenInfFileExW.
  Now the txtsetup.sif function can be loaded by setuplib *when being used*
  by the 1st-stage GUI installer!

- Remove deprecated code.

svn path=/branches/setup_improvements/; revision=75668
svn path=/branches/setup_improvements/; revision=75721
svn path=/branches/setup_improvements/; revision=75750
2018-10-28 18:59:47 +01:00
Hermès Bélusca-Maïto
9c64b57dc9 [SETUPLIB][USETUP] Move the remaining (directory-creation) functions from usetup's filesup to setuplib.
They will be used later in the library.
2018-10-28 18:17:34 +01:00
Hermès Bélusca-Maïto
c34fc6329f [FREELDR] Silence a debug print. 2018-10-28 18:17:33 +01:00
Eric Kohl
dc0b249d16 [SCHEDSVC] Reschedule a job after it was started
- Remove a non-recurring job from the job list after starting it.
- Remove a recurring job from the start list, calculate its next start time and insert it again.
- Calculate the timeout for the next job.
2018-10-28 18:12:55 +01:00
Thomas Faber
b062d28bc6 [ACPICA] Update to version 20181003. CORE-15222 2018-10-28 15:28:37 +01:00
Thomas Faber
6847cc3ae0 [ACPICA] Update to version 20180531. CORE-15222 2018-10-28 15:28:34 +01:00
Thomas Faber
2deb69c1f8 [ACPICA] Update to version 20180105. CORE-15222 2018-10-28 15:28:32 +01:00
Thomas Faber
ec55f0eb7f [ACPICA] Update to version 20171215. CORE-15222 2018-10-28 15:28:29 +01:00
Hermès Bélusca-Maïto
a972948051 [SETUPLIB][USETUP] Remove the deprecated GenericListHasSingleEntry() function and use instead GetNumberOfListEntries().
- Few FIXMEs get fixed in the process.
- Add some diagnostic ASSERTs.
2018-10-28 15:04:33 +01:00
Hermès Bélusca-Maïto
a635aa8475 [SETUPLIB] Properly cleanup the temporary registry keys created for setting up the registry.
This includes also to remove the created symlinks.
Symlinks deletion is special, as one has to open first the symlink
itself (and not its target), then remove the "SymbolicLinkTarget" value
before really deleting the key. Of course everything must be done under
proper access rights.

Additional changes:
- Change prototype BOOLEAN CmpLinkKeyToHive(...) to NTSTATUS CreateSymLinkKey(...).
- Silence few DPRINTs.
- Document some FIXMEs that I need to inspect later on ReactOS.
- HKEY --> HANDLE.
2018-10-28 14:42:01 +01:00
Hermès Bélusca-Maïto
6c2d3dee04 [SETUPLIB][USETUP] Move the registry-update procedure into setuplib.
- It can therefore be also used by the 1st-stage GUI setup.
- Rename some function parameters to clarify what they should be.

Based on:
svn path=/branches/setup_improvements/; revision=75750
2018-10-28 14:42:00 +01:00
Hermès Bélusca-Maïto
dae658088a [USETUP] Introduce some -V functions for CONSOLE_ConOutPrintf, CONSOLE_SetStatusText and CONSOLE_SetStatusTextX.
Additions:
- Use explicit __cdecl calling convention for variadic functions.
- Fix also the whitespace in consup.h.

svn path=/branches/setup_improvements/; revision=75749
2018-10-28 14:41:57 +01:00
Phosphorus Moscu
473a79a57b [README] Update to README File for git (#990)
When I click the logo it will redirect to the website.
2018-10-28 13:21:09 +01:00
Mark Jansen
4bfac27ce6 [SHELL32] Fix broken control definition 2018-10-28 13:06:27 +01:00
Mark Jansen
95682e5406 [SETUPAPI] Fix broken control definition. 2018-10-28 13:06:08 +01:00
Mark Jansen
929a2c6637 [WIN32SS] Disable scrollbars when SIF_DISABLENOSCROLL is used
CORE-13918
2018-10-28 13:02:27 +01:00
Mark Jansen
824e5dba51 [KERNEL32] Directly use UnhandledExceptionFilter in BaseProcessStartup 2018-10-28 13:01:38 +01:00
Mark Jansen
40549483f6 [KERNEL32] Use the default UnhandledExceptionFilter in BaseThreadStartup.
This should allow unhandled exceptions in a thread to trigger our crash reporter,
instead of killing the process directly.
2018-10-28 13:01:38 +01:00
Mark Jansen
1fa4e5f29c [DRWTSN32] Improve stack dumping 2018-10-28 13:00:44 +01:00
Hermès Bélusca-Maïto
f80ec8b822 [SETUPLIB] Store the vendor name for each discovered NTOS installation.
Take also the opportunity to simplify a little bit the code.
2018-10-28 01:58:59 +02:00
Hermès Bélusca-Maïto
a5bcd956fa [USETUP] Add new file-operation-related messages for deletion, moving and renaming. 2018-10-28 01:58:55 +02:00
Hermès Bélusca-Maïto
a7afba7703 [SETUPLIB] Remove a deprecated error number (that gets merged with ERROR_TXTSETUP_SECTION).
[USETUP] Improve usage of ERROR_TXTSETUP_SECTION and ERROR_CABINET_SECTION error codes, correctly display associated error message, and remove a deprecated string.
2018-10-28 01:43:56 +02:00
Hermès Bélusca-Maïto
4b148bcaf2 [USETUP] Remove now-redundant file (already used with SETUPLIB). 2018-10-28 01:32:37 +02:00
Hermès Bélusca-Maïto
1f4cb0977a [SETUPLIB][USETUP] Don't store UI-related display strings in GENERIC_LIST_ENTRY-ies, + other code adaptations.
- Apart from allowing a UI cache variable that may be used when
  displaying GENERIC_LIST_ENTRY-ies, do not store any display strings
  associated to these list entries. They should be instead computed only
  when initializing a list UI (or a combo-box or list control if the
  code is used in Win32 environment).
  For this matter a callback is provided to InitGenericListUi() that
  does the job of computing the displayed string corresponding to a
  given GENERIC_LIST_ENTRY.

- Simplify the calls to InitGenericListUi(), and refactor the
  RestoreGenericListUiState() function.

- Use for-loops for iterating over GENERIC_LIST items.

- Adapt the storage data format for lists of settings items.

- The txtsetup.sif INF format specified in LoadSetupInf() should not be
  INF_STYLE_WIN4 (to be investigated...).
2018-10-28 01:32:15 +02:00
Hermès Bélusca-Maïto
765994c9e3 [SETUPLIB][USETUP] Bring some suggestions from PR #59 in.
- Use OBJ_CASE_INSENSITIVE when initializing object attributes
  (no actual reason why to keep case sensitivity there).

- Check the success of a RtlStringCchPrintfW call in EnumerateReactOSEntries().

- Explicitly check for returned STATUS_NOT_SUPPORTED from ChkdskPartition()
  or FormatPartition(), and display an appropriate error message.

- Remove some left-over comments but also explain why I kept some
  commented code (mainly for future reference).
2018-10-28 01:08:57 +02:00
Hermès Bélusca-Maïto
a7a11dd60d [SETUPLIB] Improve the bootloader 'validity' checks -- Addendum to f06734e5 (r74512).
Adapted from PR #89 by Serge Gautherie.
This should improve the situation described in CORE-12672 and CORE-4870.
2018-10-28 00:59:46 +02:00
Hermès Bélusca-Maïto
ad9e57895d [SETUPLIB] Improve an alternate code implementation.
Comment about the status of two '#if 0'.

[SETUPLIB] Fix some uninitialized variables (caught by clang-cl).
Also, initialize NtName->Length in return paths in ResolveArcNameManually().
2018-10-28 00:59:45 +02:00
Hermès Bélusca-Maïto
c3ab29682a [USETUP] Move the SetupExtractFile() function to where it is (only) used.
svn path=/branches/setup_improvements/; revision=75762
2018-10-28 00:59:44 +02:00
Hermès Bélusca-Maïto
48aab0fb20 [SETUPLIB][USETUP] Use NT RTL String Safe functions instead of Win32-oriented ones (and remove usage of HRESULT too).
Based on:
svn path=/branches/setup_improvements/; revision=75755
svn path=/branches/setup_improvements/; revision=75757
2018-10-28 00:58:46 +02:00
Hermès Bélusca-Maïto
254aa472e8 [SETUPLIB][USETUP] Make the GENERIC_LIST store the items display text in UNICODE (and not in ANSI).
Only convert to ANSI when needed (e.g. in the display code for usetup).
The 1st-stage GUI setup will however use the UNICODE strings directly.

svn path=/branches/setup_improvements/; revision=75753
2018-10-28 00:30:54 +02:00
Hermès Bélusca-Maïto
b86d19e936 [USETUP] Whitespace fixes only.
svn path=/branches/setup_improvements/; revision=75752
2018-10-28 00:26:20 +02:00
Hermès Bélusca-Maïto
9d93100afc [SETUPLIB][USETUP] Move the floppy-disk accessibility check into InstallFatBootcodeToFloppy().
svn path=/branches/setup_improvements/; revision=75751
2018-10-28 00:25:51 +02:00
Hermès Bélusca-Maïto
aab937715b [USETUP] Resources: fix a typo.
svn path=/branches/setup_improvements/; revision=75748
2018-10-28 00:13:09 +02:00
Hermès Bélusca-Maïto
e405ad257c [SETUPLIB][USETUP][INPUT.CPL] MUI integration with setuplib.
[SETUPLIB] Copy the mui* files from usetup into the setuplib for later usage, and add mui.c to build.

svn path=/branches/setup_improvements/; revision=75711

[SETUPLIB][USETUP] Start massaging the MUI files and split up what concerns only the usetup "resources",
and what concerns general language parameters (in the setuplib).

It may be interesting to retrieve the language parameters
from INF file (e.g. intl.inf) (suggested by Giannis).

svn path=/branches/setup_improvements/; revision=75715

[SETUPLIB] Add the necessary headers to mui.c to be able to compile.
[USETUP] Comment out the languages that don't have any resources.

svn path=/branches/setup_improvements/; revision=75716

[SETUPLIB][USETUP] Adjust MUI and settings code.

- Re-enable settings code concerning language, keyboards & layout
  in the setuplib, and remove the old code in usetup.

- Remove useless code in setuplib's mui.c.

- Rename usetup's MUI "LanguageList" into "ResourceList" so as to
  avoid colliding with the "LanguageList" of setuplib.

- Add the magic CMakeLists line "add_definitions(${I18N_DEFS})" that
  I forgot previously, that caused the "LanguageList" of setuplib to be empty!

The code compiles and works during my tests.

svn path=/branches/setup_improvements/; revision=75717

[SETUPLIB] Change some string pointer types & function prototypes so that the usetup-specific
"SelectedLanguageId" variable is not used in the library.

svn path=/branches/setup_improvements/; revision=75719

[SETUPLIB] Change some function prototypes so that the usetup-specific "SelectedLanguageId" variable is not used in the library.
Also, make AddEntriesFromInfSection(), DefaultProcessEntry() and the typedef PPROCESS_ENTRY_ROUTINE private again.

svn path=/branches/setup_improvements/; revision=75720
svn path=/branches/setup_improvements/; revision=75724

[USETUP] Code adaptations.

- Transform some do{}while() loops into while(){} ones, since the lists on which we work may only contain one single {NULL} element.
- Modify MUIGetOEMCodePage() call after r75719.
- Use PCWSTR where needed.

svn path=/branches/setup_improvements/; revision=75722

[USETUP] Adjust some MUI & settings calls, following the commits r75719, r75720 and r75721.

svn path=/branches/setup_improvements/; revision=75723

[INPUT.CPL] Adjust inclusion of "muifonts.h" (commit 3dbd44f) due to changes introduced in r75711 and r75715.
2018-10-28 00:13:07 +02:00
Eric Kohl
e4d79e514a [SCHEDSVC] Improvements to the scheduler service
Use WaitForMultipleObjects in the mail scheduler loop:
- Use events to signal service stop and job update events to the main loop.
- Use the timeout timer to start the next job.
2018-10-28 00:04:20 +02:00
Pierre Schweitzer
03294dd097 [NTOSKRNL] Rewrite IoCheckEaBufferValidity() so that it's less magic
And make its coding style consistent with our rules
2018-10-27 22:16:37 +02:00
Katayama Hirofumi MZ
43c78d4b75 [WIN32SS][NTGDI] Refactoring PATH_WidenPath (#888)
Preparation to support pen width.
Split IntGdiWidenPath function from PATH_WidenPath function.
IntGdiWidenPath is independent from DC.
CORE-2527, CORE-13534
2018-10-28 05:13:08 +09:00
Hermès Bélusca-Maïto
7af2f717bc [SETUPLIB][USETUP] Move the settings code from usetup to setuplib.
This code is moved ther since it'll be needed for 1st-stage GUI
installer as well.

The code dealing with keyboard layouts is however not moved yet,
since it uses MUI* functions from usetup.
I'll try to think how to include that in setuplib...

svn path=/branches/setup_improvements/; revision=75701
2018-10-27 22:09:35 +02:00
Hermès Bélusca-Maïto
6f19c83b96 [SETUPLIB] Move the files that implement utility functions into their own subdirectory. The files remaining in the main directory implement setup procedures that use the utility functions.
svn path=/branches/setup_improvements/; revision=75695
2018-10-27 22:09:34 +02:00
Hermès Bélusca-Maïto
95a34ef6fc [USETUP][SETUPLIB] Move the bootsup.c code into the setuplib, and perform the necessary adjustments.
Move the bootsup.c code into the setuplib, as the code is generic
enough to be used by both USETUP and the 1st-stage GUI installer.

svn path=/branches/setup_improvements/; revision=75674
2018-10-27 22:09:32 +02:00
Katayama Hirofumi MZ
5467cc9493 [NTUSER] NtUserxSwitchToThisWindow 2nd argument is fAltTab (#989)
Fix the 2nd parameter name of NtUserxSwitchToThisWindow. #988 similiarly.
CORE-15165
2018-10-28 03:27:49 +09:00
Katayama Hirofumi MZ
1f3353ac3b [WIN32SS] SwitchToThisWindow 2nd argument is fAltTab (#988)
https://docs.microsoft.com/en-us/windows/desktop/api/winuser/nf-winuser-switchtothiswindow
CORE-15165
2018-10-28 03:14:04 +09:00
Katayama Hirofumi MZ
4bd0166e63 [WIN32SS] Move SwitchToThisWindow codes to win32k (#987)
- Implement user32!SwitchToThisWindow by NtUserCallTwoParam TWOPARAM_ROUTINE_SWITCHTOTHISWINDOW.
- Improve user32!CloseWindow with using SetActiveWindow and ShowWindow (synchronized).
CORE-15165
2018-10-28 02:56:16 +09:00
Pierre Schweitzer
07e6af6aa1 [NTOSKRNL] Properly handle "big" security descriptors in ObpCaptureObjectCreateInformation() 2018-10-27 19:36:15 +02:00
Pierre Schweitzer
2ce071d19a [NTOSKRNL] Implement SeComputeQuotaInformationSize() 2018-10-27 19:36:14 +02:00
Eric Kohl
19cabfc763 [WKSSVC][IDL] Add names of unsupported functions 2018-10-27 19:04:31 +02:00
Eric Kohl
0ce15a8faa [LSASRV][IDL] The first parameter of the Credr* functions is a PLSAPR_SERVER_NAME. 2018-10-27 18:17:35 +02:00
Hermès Bélusca-Maïto
8f2c4f7a6d [USETUP] Add an AddEntriesFromInfSection() helper that enumerates the entries of a given INF section, and adds these into a (user-allocated) GENERIC_LIST after some pre-processing.
This helper is inspired by the reactos/reactos.c!LoadGenEntry() function.
Use this helper in the different Create*List() functions.

svn path=/branches/setup_improvements/; revision=75700
2018-10-27 18:13:45 +02:00
Hermès Bélusca-Maïto
58e402e08e [USETUP] Simplify code.
svn path=/branches/setup_improvements/; revision=75698
2018-10-27 18:13:44 +02:00
Hermès Bélusca-Maïto
acd933faa0 [USETUP] Formatting fixes only.
svn path=/branches/setup_improvements/; revision=75697
svn path=/branches/setup_improvements/; revision=75699
2018-10-27 18:13:44 +02:00
Hermès Bélusca-Maïto
e2a92634e1 [USETUP] Add few checks to forbid the user to attempt installing ReactOS in the installation source directory, or a subdirectory thereof, or to delete the partition containing the installation source.
This is needed because the ReactOS installer can also be present from within a HDD partition!

svn path=/branches/setup_improvements/; revision=75669
2018-10-27 18:13:43 +02:00
Hermès Bélusca-Maïto
959323902f [USETUP] Group constant strings together. In EventThread(), use RtlReAllocateHeap() to resize the pnp-event buffer.
svn path=/branches/setup_improvements/; revision=75654
2018-10-27 18:13:42 +02:00
Hermès Bélusca-Maïto
c560342f08 [SETUPLIB] Diverse fixes (incl. initialization fixes).
- Compute the installation source paths based on the full path of the
  installer program that uses the setup library.
- Add INF_STYLE_OLDNT define in infsupp.h.
- Add some (silenced) diagnostic DPRINTs.

svn path=/branches/setup_improvements/; revision=75667

- Use correct inf style flags in SetupOpenInfFileEx() calls when opening
  txtsetup.sif and unattend.inf. Technically txtsetup.sif would be
  INF_STYLE_WIN4, but since we use "$ReactOS$" as its version signature,
  it would not work when opening it with setupapi.dll functions.
  Hence this flag is combined with INF_STYLE_OLDNT too.

- Don't fail if opening the \SystemRoot symbolic link doesn't work
  (usually due to incorrect access rights); in that case, just use the
  installer image file path as the installation source path.

svn path=/branches/setup_improvements/; revision=75676
2018-10-27 18:13:42 +02:00
Hermès Bélusca-Maïto
f1b9c071bb [SETUPLIB] Code formatting fix.
svn path=/branches/setup_improvements/; revision=75656
2018-10-27 18:13:41 +02:00
Hermès Bélusca-Maïto
a80f803a2a [SETUPLIB] Introduce and use a UnMapAndCloseFile() macro that calls UnMapFile() and NtClose() on handles returned by the OpenAndMapFile() function.
svn path=/branches/setup_improvements/; revision=75651
svn path=/branches/setup_improvements/; revision=75657
2018-10-27 18:13:40 +02:00
Hermès Bélusca-Maïto
29fe31df1b [SETUPLIB][USETUP] Code refactoring: rename the old DoesPathExist() into DoesDirExist(), and rename the new DoesPathExistEx() back into DoesPathExist().
svn path=/branches/setup_improvements/; revision=75636
2018-10-27 18:13:40 +02:00
Hermès Bélusca-Maïto
cc37199dfd [SETUPLIB] Merge DoesPathExist() and DoesFileExist() into (temporarily called) DoesPathExistEx() function.
And turn the previous two functions into macros.

svn path=/branches/setup_improvements/; revision=75635
svn path=/branches/setup_improvements/; revision=75652
2018-10-27 18:13:39 +02:00
Hermès Bélusca-Maïto
518bea5f99 [SETUPLIB] Factor out and introduce a ParseArcName() helper function that does its job.
Used in exiting code and in later code in this file.

svn path=/branches/setup_improvements/; revision=75632
svn path=/branches/setup_improvements/; revision=75652
2018-10-27 18:13:38 +02:00
Hermès Bélusca-Maïto
1ae3efd738 [SETUPLIB] Code formatting.
svn path=/branches/setup_improvements/; revision=75631
svn path=/branches/setup_improvements/; revision=75652
2018-10-27 18:13:38 +02:00
Hermès Bélusca-Maïto
c8d37c1a0d [SYSSETUP] Use a $winnt$.inf file to retrieve setup information for the 2nd-stage setup.
Following r75518, we use the $winnt$.inf file (created in System32
by the 1st-stage installer) as the setup information file for the
2nd-stage setup for:

- retrieving the installation source media path;
- retrieving the unattended information that was copied from the
  unattend.inf file from the installation source media.

The installation source media path is converted from NT format to
Win32 format for usage with Win32 functions and storage in the registry:
this is done by GetInstallSourceWin32(), which replaces the hackish
GetRosInstallCD() function.

The $winnt$.inf file is also updated, and the registry values "SourcePath"
and "ServicePackSourcePath" are created / updated in:
HKLM\Software\Microsoft\Windows\CurrentVersion\Setup .

svn path=/branches/setup_improvements/; revision=75524
2018-10-27 18:13:38 +02:00
Hermès Bélusca-Maïto
7e248feabf [USETUP][SETUPLIB] Code refactoring.
- Move several global setup variables into a structure "USETUP_DATA",
  similar to the syssetup structure "SETUPDATA" (or the WIP 1st-stage
  installer structure of the same name), so that these variables can be
  set easily by different helper setup functions;

- Move CheckUnattendedSetup() and GetSourcePaths() to setuplib and make
  CheckUnattendedSetup() use the USETUP_DATA structure;

- Add a LoadSetupInf() function that loads the txtsetup.sif file
  (factoring out the corresponding code in USETUP);

- Add a InstallSetupInfFile() function (that I'll probably rename later on)
  whose purpose is to create a valid "$winnt$.inf" setup installation file
  in the ReactOS\system32 directory, which should help the 2nd-stage installer
  to correctly retrieve the source installation media we used during 1st-stage,
  and contain the unattended setup lines copied from unattend.inf. This is
  done in a Windows-compatible way.

svn path=/branches/setup_improvements/; revision=75518

[USETUP] Close the txtsetup.sif file at the end of the operations.

svn path=/branches/setup_improvements/; revision=75539
2018-10-27 18:13:32 +02:00
Eric Kohl
11500a0033 [IDL] Fix coding style and indentation 2018-10-27 16:34:37 +02:00
Eric Kohl
bc08438c7a [IDL] Fix coding style and indentation 2018-10-27 15:48:21 +02:00
Katayama Hirofumi MZ
3a9fe2b1bf [WIN32SS][USER32] Simplify CloseWindow (#986) 2018-10-27 21:16:02 +09:00
Giannis Adamopoulos
e69213448d [BROWSEUI] CInternetToolbar: fix whitespace 2018-10-27 15:08:31 +03:00
Giannis Adamopoulos
a2bd9b44a9 [BROWSEUI] Simplify toggling the search band
In windows the toolbar itself creates the search shell extension. In ros we send a command to the CShellBrowser to let it handle it itself. Use the same command for showing and hiding it.
2018-10-27 15:08:28 +03:00
Giannis Adamopoulos
a0c5cafce5 [BROWSEUI] Implement toggling the folders and search band with the toolbar and make their buttons appear pressed when they are shown.
CBaseBarSite: Ask the CBaseBar to close itself when the x button is pressed.
CBaseBar: Hide the bar and inform its site that it is closing when it gets the close command.
CShellBrowser: Cache the guid of the current vertical bar and use it to report correct command status to the toolbar.
Also implement toggling the Folders, Favorites, History and search commands.
CInternetToolbar: Query the Folders and Search command status from the site so that they can be properly be shown as pressed.
2018-10-27 15:08:24 +03:00
Katayama Hirofumi MZ
84ae36c78d [WIN32SS][USER32] Fix #984 (#985)
Sorry, I had to wait the build checks.
2018-10-27 20:32:51 +09:00
Katayama Hirofumi MZ
d0e5f4ac11 [WIN32SS][USER32] CloseWindow does minimize, doesn't close (#984)
In Windows, user32!CloseWindow minimizes the window. It doesn't close the window actually. This is not a joke. This bad function naming is responsible to MS.
2018-10-27 20:21:55 +09:00
Pierre Schweitzer
d5cced1d42 [BOOTDATA] Define the ObUnsecureGlobalNames registry key on setup
It contains values that are present on W2K3 and required to avoid
regressions in .NET

See: https://blogs.msdn.microsoft.com/toddca/2005/06/08/normal-users-on-terminal-server-fail-to-run-net-framework-applications/
2018-10-27 12:01:38 +02:00
Pierre Schweitzer
9c6037182c [NTOSKRNL] Add support for unsecure object names 2018-10-27 12:01:38 +02:00
Pierre Schweitzer
0f36353551 [NTOSKRNL] Implement the ObpIsUnsecureName() helper function 2018-10-27 12:01:38 +02:00
Pierre Schweitzer
b9423f07d9 [NTOSKRNL] Add support for the ObUnsecureGlobalNames registry key 2018-10-27 12:01:38 +02:00
Stanislav Motylkov
f819c9c460 [WIN32SS][NTUSER] Make offset only for menu bars (#983)
CORE-15226
2018-10-27 18:45:21 +09:00
Pierre Schweitzer
8e51bb6510 [NTOSKRNL] Reduce noise 2018-10-27 10:04:22 +02:00
Pierre Schweitzer
18f3922725 [NTOSKRNL] Call internal helper to get VACB on mapping
We already properly round our offset
2018-10-27 09:38:55 +02:00
Hermès Bélusca-Maïto
3f04856f68 [USETUP] Minor code formatting only.
svn path=/branches/setup_improvements/; revision=75517
2018-10-27 03:18:01 +02:00
Hermès Bélusca-Maïto
cf2571de6e [USETUP] Sprinkle some INF_FreeData() calls to balance the INF_GetData() / INF_GetDataField() calls.
They currently do nothing, since the getter functions don't actually
capture (copy) the strings but merely return pointers to read-only strings.

But the calls are placed here for consistency, because if one day the
getters' implementation is changed so that strings are captured, it would
then be needed to free the allocated buffers.

In addition, fix a buggy call to INF_GetData() -- should be instead
INF_GetDataField() -- in AddSectionToCopyQueue().

svn path=/branches/setup_improvements/; revision=75516
2018-10-27 03:18:00 +02:00
Hermès Bélusca-Maïto
aa110db3ea [USETUP] Comment out SetupQueueCopyWNew() declaration which is not used at all. Remove unnecessary casts in the INF_OpenBufferedFileA() call.
svn path=/branches/setup_improvements/; revision=75509
2018-10-27 03:17:59 +02:00
Hermès Bélusca-Maïto
9348fe1f7e [SETUPLIB] Introduce defines for size units.
[USETUP] Use them in the code.

svn path=/branches/setup_improvements/; revision=75508
2018-10-27 03:17:58 +02:00
Hermès Bélusca-Maïto
a95581c4c2 [SETUPLIB] IniCacheSave(): use the OBJ_CASE_INSENSITIVE flag.
svn path=/branches/setup_improvements/; revision=75507
2018-10-27 03:17:57 +02:00
Hermès Bélusca-Maïto
7d0f6f02ab [USETUP] Move SetDefaultPagefile() into settings.c and remove the now-empty registry.c/.h files.
svn path=/branches/setup_improvements/; revision=75250
2018-10-27 03:17:41 +02:00
Hermès Bélusca-Maïto
2268b3d645 [USETUP] Move Setup[Delete|Copy|Move]File() from usetup code into the setuplib's filesup.c .
Remove the commented-out IsValidPath() in that file, and remove
as well the temporary prototypes in regutil.c .

svn path=/branches/setup_improvements/; revision=75249
2018-10-27 03:17:29 +02:00
Hermès Bélusca-Maïto
60d9ea76d1 [USETUP][SETUPLIB] Split the registry helper code.
Split the registry helper code into registry utility functions
(create/mount/unmount/verify hives) and registry creation code
(the rest: initializing the system hives) and move it in the
setup library.

svn path=/branches/setup_improvements/; revision=75247

[USETUP][SETUPLIB] Improve how the Setup* INF APIs are interfaced in the code.

Define prototypes compatible (including their calling convention)
with the ones defined by setupapi (.h/.dll) so that it can be possible
to either use an internal implementation of these functions (via the
INFLIB library) as currently being done, or using imported setupapi
functions, as would be done by the future 1st-stage GUI installer.

[SETUPLIB] Cleanup the registry.c file and use the infsupp.h header.

svn path=/branches/setup_improvements/; revision=75345
svn path=/branches/setup_improvements/; revision=75346

[USETUP][SETUPLIB] Move some INF-related code from usetup to the setuplib.

- Move the generic INF_GetDataField() and INF_GetData() helpers to
  setuplib, and rework them a bit so that they explicitly call setupapi
  functions (or implementations thereof when being used in usetup);

- Rework the headers in accordance;
- Fix compilation in lib/registry.c .

- Fix compilation when these headers are used withing usetup (who
  doesn't use setupapi.dll) and "reactos" (the 1st-stage GUI installer
  that uses setupapi.dll).

svn path=/branches/setup_improvements/; revision=75515
svn path=/branches/setup_improvements/; revision=75537
svn path=/branches/setup_improvements/; revision=75538
2018-10-27 03:16:47 +02:00
Katayama Hirofumi MZ
ed41bd71dd [WIN32SS][NTUSER] Sunken menu item (#981)
CORE-15226
2018-10-27 04:20:09 +09:00
Jérôme Gardou
07bd6089ec [CMAKE] Use configured include files to define the __RELFILE__ hack (#979)
[CMAKE] Use configured include files to define the __RELFILE__ hack

It's easier on the command line and the eyes looking at it
2018-10-26 13:47:22 +02:00
Katayama Hirofumi MZ
3e00e7fb22 [APITESTS][USER32] Add testcase for SwitchToThisWindow (#980)
Add an API test program for user32!SwitchToThisWindow function.
JIRA issue: CORE-15165
2018-10-26 19:56:25 +09:00
Jérôme Gardou
806ec9344e [CMAKE] Set CMAKE_OBJCOPY unconditionnally 2018-10-26 10:51:52 +02:00
Jérôme Gardou
235ec3b7c9 Add Eclipse files to .gitignore 2018-10-26 10:51:52 +02:00
Hermès Bélusca-Maïto
74be659c8b [USETUP] NT RTL thread functions use 'NULL' (instead of 'INVALID_HANDLE_VALUE' which is a Win32 thing) for thread handles that are "invalid" / uninitialized.
svn path=/branches/setup_improvements/; revision=75519
2018-10-26 02:16:05 +02:00
Hermès Bélusca-Maïto
397faf62bf [USETUP] Moving around some code.
- As GetSourcePaths() is used once in USETUP to initialize global
  UNICODE_STRING path strings once, move it out of drivesup.c and
  put it in usetup.c. Then remove drivesup.c : 1 file less!

- Move some INF file prototype declarations out of usetup.h and
  inside inffile.h where they should better be, as inffile.h and .c
  is the glue code for the INF library, defining similar functions
  as the ones in setupapi.dll.

- I rename our local SetupOpenInfFileW() into SetupOpenInfFileExW()
  because the latter one takes an extra user-provided LCID parameter,
  and this is this one that we use in USETUP.

- Make 'UNICODE_STRING SourcePath;' visible only inside usetup.c
  (not used elsewhere).

- Implement installation path validity check in case we are either
  in repair/update, or unattended setup mode. If the path is detected
  as invalid, then we fall back into manual path specification
  (for now...; note that we could instead fail the installation too).

svn path=/branches/setup_improvements/; revision=75246
2018-10-26 02:16:04 +02:00
Hermès Bélusca-Maïto
49d3daf1af [USETUP] Implement most of the "upgrade" page, where existing NTOS installations are listed.
- Modify a bit the page flow so that the upgrade page is inserted before
  the Device-settings page, and after the Install-Intro page.

- Insert some extra 'RepairUpdateFlag' checks in SelectPartitionPage() and
  InstallDirectoryPage() to take specific actions in case the flag is TRUE.

svn path=/branches/setup_improvements/; revision=74576
svn path=/branches/setup_improvements/; revision=75525
2018-10-26 02:16:03 +02:00
Hermès Bélusca-Maïto
29ace9c0dc [USETUP] Add an upgrade/repair installation page.
Translators, please update the associated translations!

svn path=/branches/setup_improvements/; revision=74548
2018-10-26 02:15:19 +02:00
Katayama Hirofumi MZ
4ccad609e0 [USER32] Fix Task Switcher (#976)
This fix is needed for the Delphi GUI programs.
- Don't enumerate the windows whose owner window exists.
- Use PostMessage SC_RESTORE instead of ShowWindowAsync SW_RESTORE.
CORE-15165
2018-10-25 22:59:44 +09:00
Mark Jansen
ea84aef662 [SDK] Update baseaddresses 2018-10-25 06:59:45 +02:00
Hermès Bélusca-Maïto
cefc9238fb [USETUP] Use UNICODE_NULL.
svn path=/branches/setup_improvements/; revision=75248
2018-10-25 01:02:20 +02:00
Hermès Bélusca-Maïto
7fedeb7db3 [USETUP] More code for updating/repairing the registry. Fix the name of the txtsetup.sif section to look for when performing a registry upgrade.
[BOOTDATA] Add needed entries in txtsetup.sif for registry upgrade.

svn path=/branches/setup_improvements/; revision=75162
svn path=/branches/setup_improvements/; revision=75226
2018-10-25 01:00:43 +02:00
Hermès Bélusca-Maïto
b20908acc8 [USETUP] Mark some variables as 'static'.
svn path=/branches/setup_improvements/; revision=75161
2018-10-25 00:58:24 +02:00
Hermès Bélusca-Maïto
455e69a011 [USETUP] Implement work-in-progress code that allows verifying whether registry hives validity.
Implement work-in-progress code that, when upgrading an existing
ReactOS installation, verifies whether the (existing) system registry
hives are valid (by loading & unloading them, this allows using the
built-in repair functionality if needed), or not.

If a given hive cannot be repaired successfully, it is backed up
(with a '.brk' extension, "brk" as "broken"), then is marked up for
recreation.

When all hives have been checked, if there are any hive that needs
to be recreated, we recreate its hive file, mount it, but we do *NOT*
mount the other valid existing hives for update. We create instead
dummy registry hives so that we can actually use, as the update code,
the same one as the one used when fully creating the registry hives
for a clean installation (of course, this choice can be improved later on).

The update code (i.e. the same as the registry clean-install one) then
adds the registry keys & values, either putting them in the dummy
registry hives (the ones that we don't want to recreate) or in the
registry hive that is recreated.

At the end, the (re)created registry hives are flushed back to disk,
and a copy of them (under a '.sav' extension) are created, so that they
can be used for restoration purposes if 2nd-stage (and up) goes berserk.

Extra fixes:

- Use the correct structure member field when initializing the
  'InstallDir' variable, when performing an upgrade.

- CreateNestedKey() should be better analysed to see whether it correctly
  creates the full registry path compatible with volatile/non-volatile keys
  (under inspection).

svn path=/branches/setup_improvements/; revision=75010
2018-10-25 00:58:23 +02:00
Hermès Bélusca-Maïto
55d8a8490c [USETUP] Introduce SetupDeleteFile() and SetupMoveFile() (in addition to the already-existing SetupCopyFile()) in order to implement moving / renaming existing files.
Will be used soon to make backups of system files, like the registry hive files just freshly created.
- Make the SetupCopyFile() function closer to its win32 counterpart.
- Adjust the code that calls SetupCopyFile().

svn path=/branches/setup_improvements/; revision=75008
svn path=/branches/setup_improvements/; revision=75009
2018-10-25 00:58:22 +02:00
Hermès Bélusca-Maïto
5a1af6ccd8 [USETUP] Explicitly use the REG_OPTION_(NON_)VOLATILE flags in NtCreateKey calls.
svn path=/branches/setup_improvements/; revision=75007
2018-10-25 00:58:21 +02:00
Hermès Bélusca-Maïto
bbb04c470a [USETUP] Implement offline ReactOS registry initialization in USetup (equivalent of mkhive, but using OS functionality).
The rationale is as follows.

We now have the 1st-stage ReactOS setup running with its own registry SYSTEM hive,
similarly to regular ROS running instances (livecd, regular installation...).

The ReactOS-specific SetInstallPathValue() hack, introduced in a76689e9 (r3794)
and 5f973ce0 (r3795), is removed. This hack told the kernel that, during the setup,
it had to "switch" the used registry hives and instead use the ones of the ROS
installation being prepared.

This was really hackish because this means, mixing between registry settings used only
for the setup running instance, that could use different registry settings
than the ones that should be set for the ROS installation being actually performed.

Also, note that in the case of a 1st-stage GUI setup, consisting in running the
LiveCD + the GUI setup program, this situation would be untenable. Note also that
for people willing to use the Setup*** functions exported by setupapi.dll to parse
the registry INF files to initialize the registry of the ROS installation being
prepared, this would be impossible either.

Hence the need to have offline registry modification functionality.

svn path=/branches/setup_improvements/; revision=74766
2018-10-25 00:57:02 +02:00
Hermès Bélusca-Maïto
cd89e5b797 [USETUP] Code formatting, making also the code closer to mkhive's one. Also, definitely remove the SetInstallPathValue() hack.
svn path=/branches/setup_improvements/; revision=74763
2018-10-25 00:51:43 +02:00
Hermès Bélusca-Maïto
8269478385 [CMAKE] Apply patch INF file for the SETUP SYSTEM registry hive that removes the entries in the Critical Device Database that cause problems with PnP setup during 1st-stage setup. 2018-10-25 00:45:10 +02:00
Hermès Bélusca-Maïto
0b2b53b9c3 [FREELDR] Adjust WinLdrInitSystemHive() and its callers to load at startup either the regular SYSTEM hive, or the SETUPREG.HIV setup system hive.
We now run the 1st-stage setup with a regular system hive, similarly to
what's done for the LiveCD, or for a regular ROS installation.
The ExpInTextModeSetup hacks I previously removed are now completely unneeded.

svn path=/branches/setup_improvements/; revision=74762
2018-10-25 00:40:05 +02:00
Hermès Bélusca-Maïto
5e705d0683 [FREELDR] Small code re-organization for the "ntldr" sub-module.
Split the "main" winldr.h header into the one containing global code
that actually doesn't really depend on the "windows" NT loader part,
and one that actually concerns code just for the NT Loader.
The latter goes into "ntldr".

svn path=/branches/setup_improvements/; revision=74743
2018-10-25 00:40:04 +02:00
Hermès Bélusca-Maïto
83d5c711b3 [NTOS] Drastically reduce the hackish function CmpGetRegistryPath() for the text-mode setup case (it should ultimately completely disappear).
svn path=/branches/setup_improvements/; revision=75163
2018-10-25 00:40:03 +02:00
Hermès Bélusca-Maïto
cb69c4c691 [NTOS] Add some DPRINTs in IopLoadServiceModule() and IopOpenRegistryKeyEx() to investigate why these 1st-stage text-mode hacks may be, or are (respectively) still needed.
svn path=/branches/setup_improvements/; revision=74748
2018-10-25 00:40:03 +02:00
Hermès Bélusca-Maïto
2ed65d1555 [NTOS] Configuration Manager fixes.
- Rework CmpSetSystemValues() and remove its 1st-stage text-mode setup hack, since a real registry hive will be used for 1st-stage either.
- Lock, then unlock the registry in NtInitializeRegistry when initializing the hives & flusher.
- Call CmpInitializeHiveList() (i.e., initialize the other hives like \Software, \User, \.Default) only when we are not in setup-mode.

svn path=/branches/setup_improvements/; revision=74747
2018-10-25 00:40:02 +02:00
Hermès Bélusca-Maïto
e2cb7b50b4 [NTOS] Remove some hacks that are not needed anymore, since a real registry hive will be used in 1st-stage as well.
This reverts a7c26408 (r53255) and ff75ae1b (r53694), and a hack from 6075ae9a (r46690).

svn path=/branches/setup_improvements/; revision=74745
svn path=/branches/setup_improvements/; revision=74746
2018-10-25 00:40:00 +02:00
Stanislav Motylkov
c83ac7600d [SHIMGVW] Fix image flickering when rendering animations 2018-10-24 23:05:00 +02:00
Joann Mõndresku
331bcae7b7 [TASKMGR][TRANSLATION] Estonian localization 2018-10-24 21:35:20 +02:00
Baruch Rutman
6a3b1879a1 [LPK][GDI32] Enable mirroring via version resource (#965)
Add a mechanism that detects via the version resource whether it's needed to mirror
the application layout or not. This is a "follow up" to commit 5b14b6f.

This code is taken from the GetProcessDefaultLayout() function from Wine
(called there "WIN_CreateWindowEx").

In Windows the version-resource mirroring happens when the GDI is loading the LPK.

- Implement mirroring via version resource. GDI linking on startup is required.

- GDI32: Add LPK loading on GDI startup.

To enable mirroring via version resource the lpk.dll must be loaded before any windows are created.
This is done through GdiInitializeLanguagePack() function which is called in GdiProcessSetup().

- LPK: Use Wine debug messaging.
2018-10-24 21:34:38 +02:00
Katayama Hirofumi MZ
17449bcff1 [TRANSLATION][MC] Add Romanian messages (#850)
CORE-11898
2018-10-24 22:40:21 +09:00
Stanislav Motylkov
0f402b0189 [BOOTDATA][HIVECLS] Use shell image viewer for GIF files (#971)
Change GIF file type association to the shell image viewer. CORE-12680
2018-10-24 21:09:23 +09:00
Katayama Hirofumi MZ
70e27198ae [FONT][WIN32SS] Fix the storage processing of IntGetOutlineTextMetrics (#942)
* Add IntStoreFontNames and IntStoreName functions and use them.
* SCALE_X and SCALE_Y macros
* Fix too long line
* Reduce type casts
2018-10-24 20:23:24 +09:00
Katayama Hirofumi MZ
62da624689 [WIN32SS][USER32] Fix SwitchToThisWindow (#929)
I'm not sure but it seems like no one can investigate it. I commit it.
2018-10-24 20:02:27 +09:00
Katayama Hirofumi MZ
2410bcb133 [FONT][WIN32SS] Improve readability of IntGdiGetFontResourceInfo (#945)
Make it human friendly code.
2018-10-24 19:58:03 +09:00
Katayama Hirofumi MZ
3545475f91 [WIN32SS][MENU] Fix menu text Y positioning (#887)
Fix the vertical position of menu bar text. CORE-15094
2018-10-24 19:54:41 +09:00
Katayama Hirofumi MZ
375a78e706 [SHIMGVW] Play gif animation (#934)
Make "Picture and Fax Viewer" able to play GIF animation.
CORE-12680
2018-10-24 19:51:30 +09:00
Katayama Hirofumi MZ
efbebf983c [REGEDIT] Improve the layout of controls (#967)
The horizontal scroll bar of the listview was wrongly hidden.
CORE-15187
2018-10-24 18:19:48 +09:00
Katayama Hirofumi MZ
e4c2cff6c8 [REGEDIT] Don't paint background in WM_PAINT (#970)
Use the background brush or WM_ERASEBKGND message instead. There was graphical glidge. CORE-15187
2018-10-24 18:17:28 +09:00
Hermès Bélusca-Maïto
3dffe964a3 [USETUP] Reshuffle a bit the main-function of USetup.
svn path=/branches/setup_improvements/; revision=74975
2018-10-24 00:55:16 +02:00
Hermès Bélusca-Maïto
3fd27d34a5 [USETUP] The 'DestinationDriveLetter' variable (that is just used for SetDefaultPagefile()...) just needs to be initialized at one place only.
svn path=/branches/setup_improvements/; revision=74951
2018-10-24 00:55:13 +02:00
Hermès Bélusca-Maïto
0b714cbe6a [USETUP] Whitespace fixes only.
svn path=/branches/setup_improvements/; revision=74636
svn path=/branches/setup_improvements/; revision=74639
2018-10-24 00:35:54 +02:00
Hermès Bélusca-Maïto
043a024d61 [USETUP] Small formatting changes + two functions turned into FORCEINLINE.
Based on:
svn path=/branches/setup_improvements/; revision=74616
2018-10-24 00:35:54 +02:00
Hermès Bélusca-Maïto
3c616b625d [USETUP] Rename some of the uninformative "STRING_HDDINFOUNKx" string labels into more informative ones.
- Also, reserve a new field to display whether the disk is MBR or GPT-initialized.
- Adjust the code that used the "STRING_HDDINFOUNKx" string labels.
  The extra slot added to some of the strings is to indicate whether the disk is MBR or GPT.

As attentive readers will notice, the code that "determines" whether the disk is either MBR or GPT
is of course just temporary: it's just a placeholder code that should currently just show "MBR".

Having the NoMbr flag mostly signifies that the disk is uninitialized. A GPT disk also has a MBR
but it's for "backcompatibility" / "protective" reasons (so that MBR-only tools would see the disk
as just a big 1-partitioned only disk with which they could barely do anything). A real involved test
for the nature of the disk should involve calling the correct IOCTLs in the disk detection code in partlist.c .
This is for the future (and when ReactOS will better support GPT disks).

svn path=/branches/setup_improvements/; revision=74614
svn path=/branches/setup_improvements/; revision=74615
2018-10-24 00:35:53 +02:00
Hermès Bélusca-Maïto
38e20b638f [USETUP] Massage the USETUP interface code.
- The "intro" page is renamed into the "Welcome" page, because its corresponding resource indeed is the welcome screen;
- Because the "setup start" page can only be displayed once, move it out of the while-loop, and use its result as the initial value of the 'Page' variable.
- Remove unneeded _PAGE_NUMBER_DEFINED guards;
- Add a DPRINT in the RepairUpdateFlag case of RegistryPage() (because we don't implement yet a correct upgrading or repairing of the registry).
- In InstallIntroPage(), display the page itself only if needed (i.e. after all the validation checks & repair/update or unattended checks are done). Similar modifications are done also in DeviceSettingsPage(), SelectPartitionPage()
- Turn both CheckUnattendedSetup() and UpdateKBLayout() into static functions.
- Fix the code of ScsiControllerPage() so that it can be compiled if needed, and add a dummy OemDriverPage().

svn path=/branches/setup_improvements/; revision=74575
2018-10-24 00:35:52 +02:00
Stanislav Motylkov
7886ad46db [INETCPL] Add icon codes for trusted and restricted zones 2018-10-24 00:27:10 +02:00
Eric Kohl
b5e956e7a8 [SETUPAPI] SetupDiGetClassDevPropertySheetsW: Implement adding property pages from an installer.
SetupDiGetClassInstallParamsW must be implemented before this will work.
2018-10-23 23:11:19 +02:00
Pierre Schweitzer
f3b9beeb39 [NTOSKRNL] Translate pinning flags to mapping flags when first mapping a file 2018-10-23 22:07:53 +02:00
Bișoc George
0e41230dac [USETUP] Fix a broken character in Italian resource (#968)
Also add two spaces at the beginning of the "deleting cache" string.
2018-10-23 17:41:38 +02:00
Katayama Hirofumi MZ
7d7f1d4ca3 [NET] Fix an escape sequence in Polish translation (#966) 2018-10-23 13:10:38 +02:00
Giannis Adamopoulos
c69ef281c0 [rosctrls.h] CListView: Add Arrange method
[SHELL32] CDefView: Start implementing Auto arrange.
So far its effect is only shown when the browser window resizes.
2018-10-22 23:51:37 +03:00
Giannis Adamopoulos
410cfbfe15 [SHELL32] CDefView: Disable auto arrange in list and details view mode.
This supersedes PR #927 and does it correctly.
2018-10-22 19:18:28 +03:00
Giannis Adamopoulos
e9cba5375b [BROWSEUI] CInternetToolbar: Implement hiding and showing the browser toolbars. 2018-10-22 18:42:38 +03:00
Hermès Bélusca-Maïto
0e6bc236a1 [NTOS:CM] CmpCmdHiveOpen(): Resolve FileAttributes->RootDirectory when a hive file name is provided relative to it.
Fixes registry hive loading. CORE-13448
2018-10-22 00:39:50 +02:00
Hermès Bélusca-Maïto
76e2698237 [NTDLL_APITEST] Re-enable the part of the NtLoad/UnloadKey test related to force-unload a hive with opened sub-key handles.
Effectively reverts b17ce9c8 (r75138).

CORE-13448
2018-10-22 00:05:21 +02:00
Hermès Bélusca-Maïto
d61c00c252 [NTOS:CM] Implement more support for force-unloading registry hives.
CORE-13448 CORE-10705
2018-10-22 00:05:13 +02:00
Hermès Bélusca-Maïto
16752875db [NTOS:CM] Add extra validation for the information class parameter in NtEnumerateValueKey(). 2018-10-21 18:12:08 +02:00
Hermès Bélusca-Maïto
49e08b23ce [NTOS:CM] Improve the capture of user-mode parameters.
- Improve the capture of OBJECT_ATTRIBUTES parameters that are passed
  (by pointer) to the Cm* helper functions, and the capture of
  UNICODE_STRINGs.

- Correctly differentiate user-mode vs. kernel-mode root directory handles
  (in OBJECT_ATTRIBUTES): note that most of the Cm* APIs expect their
  parameters to be kernel-mode (pointers, handles...).

CORE-13448
2018-10-21 17:11:50 +02:00
Stanislav Motylkov
3290d4619b [SYSDM] Fix controls order and label height in IDD_SYSSETTINGS dialog
This fixes checkbox rendering issue in russian translation.
Dialogs in other translations are ok.

CORE-13792
2018-10-21 15:36:28 +02:00
Bișoc George
f31cf503fb [APPWIZ] Do not display the message box if the user aborts the download
CORE-15183
2018-10-21 13:10:12 +02:00
Katayama Hirofumi MZ
125db5ead9 [REGEDIT] Trivial resizing code fix 2018-10-21 13:08:26 +02:00
Katayama Hirofumi MZ
b3231e0bf5 [REGEDIT] Code formatting 2018-10-21 13:07:43 +02:00
Pierre Schweitzer
3849426432 [CHKDSK] Fix MSVC build (thanks for spotting the mistake!)
Addendum to ec9fc7f
2018-10-21 11:22:45 +02:00
Pierre Schweitzer
c5983e302d [VFATLIB] Don't attempt to fix volume if not allowed 2018-10-21 11:12:10 +02:00
Pierre Schweitzer
ec9fc7fade [CHKDSK] Add French translation 2018-10-21 11:06:06 +02:00
Joann Mõndresku
b5bae2e98d [RAPPS][TRANSLATION] Estonian localization (#959) 2018-10-21 01:58:02 +02:00
Stanislav Motylkov
dd8766e67a [CHKDSK] Add russian translation 2018-10-20 23:29:15 +02:00
Adam Słaboń
7abc8be102 [TRANSLATION] Polish translation update
Polish translation of net, telnet, diskpart, devcpux, fontext, iernonce, lsasrv, themes, arping, frag, screensavers, ctm, fontsub, WinetestsGUI and localmon.
Update for dxdiag, msgina, msports, netcfgx, shell32 and syssetup.
2018-10-20 21:26:07 +02:00
Bișoc George
8e48f8f2dd [CHKDSK] Implement localization support (#891)
- Make the strings translatable.
- Include the English translation within the main resource file.
- Use ConResPrintf() and ConResPuts() for resource strings.
2018-10-20 21:21:51 +02:00
Bișoc George
e9f993d1b8 [APPWIZ] Translation update for Romanian & Italian 2018-10-20 21:16:48 +02:00
Hermès Bélusca-Maïto
4bdd360a0c [MEDIA] Add a notice to the chinese translation document. 2018-10-20 19:57:18 +02:00
Luo Yufan
58409efce0 Add Notice for Chinese translation. 2018-10-20 19:51:41 +02:00
Hermès Bélusca-Maïto
29b2fdcc4d [NTOS:CM] Minor fixes.
- Validate the information class parameter in NtQueryValueKey().
- Call the post-callback in NtSetValueKey() only if the callback
  has been registered and the CmSetValueKey() call is executed.
2018-10-20 19:52:34 +02:00
Hermès Bélusca-Maïto
5322969186 [NTOS:CM] Reuse the saved previous-mode from the ExGetPreviousMode() calls. 2018-10-20 19:52:32 +02:00
Hermès Bélusca-Maïto
aef566c19e [MKHIVE] Minor code rearrangement. 2018-10-20 19:52:07 +02:00
Arnav Bhatt
b9deba9a56 [NOTEPAD] ReactOS Notepad Hindi Translation (#938) 2018-10-20 19:41:32 +02:00
Pierre Schweitzer
827ed4b146 [NTVDM] Allow opening files with write access on CDROM
Some applications, run on a CDROM, may attempt to open
a file with write access. CDFS driver will deny such
request in ReactOS (but also in Windows NT). Then, to
restore that behavior from old Windows (9X), our ntvdm,
as Microsoft ntvdm will attempt to reopen the file only
with read access, if opening failed because of denied access
and if the file is on a CDROM.

CORE-15211
2018-10-20 17:27:53 +02:00
Mark Jansen
44898a4ea4 [NTVDM] Implement INT21, AX=4408, Determine if a block device is removable. 2018-10-20 00:14:44 +02:00
Mark Jansen
8543622a72 [GFLAGS] Implement imagefile options 2018-10-19 23:13:51 +02:00
Mark Jansen
ec621270a1 [GFLAGS] Move common code to a shared location. 2018-10-19 23:13:51 +02:00
Mark Jansen
bc3b356ae6 [GFLAGS] Move code around to handle multiple options 2018-10-19 23:13:38 +02:00
Arnav Bhatt
05c2e3e89e [USETUP][EXPLORER] ReactOS explorer translation and hindi font substitution. (#954) 2018-10-19 17:03:17 +02:00
Hermès Bélusca-Maïto
da019b0fc5 [MKHIVE] Fix some compilation warnings. 2018-10-19 00:25:19 +02:00
Hermès Bélusca-Maïto
bd9fa3d701 [USETUP] Add a couple of missing TrimTrailingPathSeparators_UStr() calls.
Fixes in particular a regression brought by 57402ee (thanks George Bisoc
for having noticed this), where the BTRFS bootsector code could not be
installed anymore.

CORE-15192
2018-10-18 23:11:58 +02:00
Hermès Bélusca-Maïto
e723b9f4b4 [MKHIVE] Fix cases where 'rc' was used without being initialized.
Fixes crashes when the tool is compiled with Run-Time Checks enabled.
And thus should fix the MSVC buildbots!
Thanks to Pierre for having brought this issue to me.

CORE-15201
2018-10-18 23:11:55 +02:00
Hermès Bélusca-Maïto
473ca91166 [MKHIVE] Fix compilation warnings. 2018-10-15 00:37:08 +02:00
Hermès Bélusca-Maïto
a28461124b [SETUPLIB][USETUP] Minor code refactoring, consisting in renaming the "ntos boot loader" stuff into "boot store", since this happens to be functionality that is a bit more general than previously thought.
- Fix the usage of the BootEntry's "Version" member.
- Don't surround with too many quotation marks the "friendly" boot entry name in AddBootStoreEntry().

svn path=/branches/setup_improvements/; revision=74964
2018-10-14 23:46:52 +02:00
Hermès Bélusca-Maïto
e589513b46 [USETUP] As evoked in 27603a10 (r74943), adapt the code in bootsup.c to abstract the manipulation of freeldr.ini and boot.ini, and make it use the new features of bldrsup.c committed in 27603a10 (r74952).
In particular the helper functions CreateCommonFreeLdrSections() and (Un)protectBootIni() are now removed from there (they are used in bldrsup.c only).
This should pave the way for future integration with other sorts of NT boot loaders (BootMgr and (u)EFI boot loader).

svn path=/branches/setup_improvements/; revision=74954
2018-10-14 23:45:45 +02:00
Hermès Bélusca-Maïto
c2f7758e96 [SETUPLIB] Adapt the code in osdetect.c to make it use the new features of bldrsup.c committed in 27603a10 (r74952).
svn path=/branches/setup_improvements/; revision=74953
2018-10-14 23:37:44 +02:00
Hermès Bélusca-Maïto
27603a101c [SETUPLIB] Introduce a lot of (Work in progress) functions to manipulate boot entries from different boot "stores".
This concerns so far, only freeldr.ini and to an extent, boot.ini, but planning in the future to add support for registry-oriented BCD
as well as possibly direct (u)EFI entries, using the corresponding NT functions.
This code is so far only used in osdetect.c, but will be soon used by usetup's bootsup.c (note that some helper functions: CreateCommonFreeLdrSections()
and (Un)protectBootIni() are already taken from it and used in bldrsup.c).
- In EnumerateNTOSBootEntries(), continue enumerating the boot entries until the user callback returns an status code that is not successful.
- Remove some old code from osdetect.c; use directly BootEntry->FriendlyName when building the display names of the available installations, since now
  BootEntry->FriendlyName is a PCWSTR (and not a UNICODE_STRING anymore).

svn path=/branches/setup_improvements/; revision=74943

[SETUPLIB] Make the NTOS_BOOT_ENTRY structure more generic, so that it can wrap around either actual NTOS boot entry options, or FreeLdr-like boot-sector options.

In a sense, the NTOS_BOOT_ENTRY structure now looks much more like the NT structure "BOOT_ENTRY".
- Adapt the code in bldrsup.c to these modifications, and re-enable FreeLdr-like boot-sector-file support code that was commented out.
More code cleanup will follow later.

svn path=/branches/setup_improvements/; revision=74952
2018-10-14 23:27:17 +02:00
Hermès Bélusca-Maïto
57402ee91e [USETUP] Diverse fixes for path handling.
- Convert almost all swprintf() into StringCchPrintfW() and wcscpy() into StringCchCopyW();
- Explicitly add a trailing path separator to the "\Device\HarddiskX\PartitionY(\)" paths
  when they refer to FS directories (and not to partition objects);
- Remove useless (and half-buggy) "Remove trailing backslash" code.

With that, it is possible to install ReactOS in e.g. C:\ReactOS (as usual), C:\ReactOS\dir1\dir2 (as many dirs as you wish), and also in C:\ (yes yes!).
But in that latter case, a strange bug related to the registry arises...

Additionally:
- Adjust some comments;
- Add some debugging DPRINTs;
- The SetInstallPathValue() is part of the big hack I've mentioned in f51faa4a (r74709).

svn path=/branches/setup_improvements/; revision=74717
2018-10-14 23:22:55 +02:00
Hermès Bélusca-Maïto
3cb1392eff [USETUP] When installing new FreeLDR entries for recognized DOS/OS-2 boot loaders, use distinct OS section names. Also, add detection for the Dell Real-Mode Kernel OS (DRMK).
svn path=/branches/setup_improvements/; revision=74932
2018-10-14 21:15:55 +02:00
Hermès Bélusca-Maïto
387e79c92e [USETUP] Condense the different InstallFatXYBootSectorToDisk & ToFile functions into a InstallFatXYBootSector() function that is called by both the ToDisk and ToFile flavours.
Also, trim any potential trailing path separator from the NT disk partition path before opening the partition object itself for read/write access.

svn path=/branches/setup_improvements/; revision=74715
2018-10-14 21:15:34 +02:00
Hermès Bélusca-Maïto
f13a379153 [USETUP] Move some functions around, but no functional code changes otherwise.
svn path=/branches/setup_improvements/; revision=74714
2018-10-14 21:14:31 +02:00
Eric Kohl
debb1e521a [NETCFGX] Implement the Min and Max options for int, long and word parameters.
CORE-15095
2018-10-14 21:02:45 +02:00
Eric Kohl
731ef01361 [NEWDEV] Add InstallDevInstEx 2018-10-14 18:19:52 +02:00
Hermès Bélusca-Maïto
fc35f6eb4b [MKHIVE] Return win32-like error codes for functions that expect to do so. Fix and comment out some unused ERROR_xxx/STATUS_xxx defines. 2018-10-14 17:10:04 +02:00
Hermès Bélusca-Maïto
8f82b00fa6 [MKHIVE] Minor code formatting. 2018-10-14 16:28:13 +02:00
Hermès Bélusca-Maïto
d91a47826e [MKHIVE] Implement RegDeleteKeyW() and RegDeleteValueW(). 2018-10-14 15:59:57 +02:00
Hermès Bélusca-Maïto
6a44c10d5d [MKHIVE] Minor improvements.
- Fix a bug in RegpCreateOrOpenKey() when we attempt to open an
  non-existing (sub-)key.
- Check failure of RegCreateKeyExW() in CreateSymLink().
- Remove unneeded includes.
- Update few comments.
2018-10-14 15:59:54 +02:00
Hermès Bélusca-Maïto
ec3c61c233 [MKHIVE] Simplify CmiAddValueKey() by using CmpAddValueToList(). 2018-10-14 15:59:50 +02:00
Hermès Bélusca-Maïto
a965cf6e04 [MKHIVE] Sync a bit more of reginf.c with the corresponding setupapi code. 2018-10-14 15:59:46 +02:00
Hermès Bélusca-Maïto
81d435a181 [MKHIVE] Implement and use RegCloseKey(). 2018-10-14 15:59:41 +02:00
Hermès Bélusca-Maïto
4caf391324 [NTOS][MKHIVE] Minor code formatting. 2018-10-14 15:59:34 +02:00
Hermès Bélusca-Maïto
bf8a7d2db0 [CMLIB] Adjust parameter types and annotations. Add diagnostic assertions. 2018-10-14 15:59:31 +02:00
Katayama Hirofumi MZ
801b71b9bf [FONT][WIN32SS] Use ExFreePoolWithTag instead of ExFreePool (#941) 2018-10-14 09:47:52 +02:00
Pierre Schweitzer
3d13a464f7 [NTOSKRNL] Add the CcPinMappedDataCount counter 2018-10-13 22:51:44 +02:00
Pierre Schweitzer
1afcbbd125 [NTOSKRNL] Rewrite the way we create BCB for pinning
We won't reuse a BCB created for mapping, we will now have
our own dedicated BCB.
This allows having a bit more cleaner implementation of CcPinMappedData()
2018-10-13 22:51:44 +02:00
Mark Jansen
2d47c3be29 [CRT] spawn: define a unicode environment when needed
CORE-9182
2018-10-13 20:30:07 +02:00
Mark Jansen
80c53821c9 [SHELL32] CDefView: Query SFVM_DEFVIEWMODE before creating the list view.
CORE-14976
2018-10-13 20:28:49 +02:00
Hermès Bélusca-Maïto
8c0c90112e [FASTFAT] Don't mess my debug log when partition SysType is printed! (when invalid chars are printed) 2018-10-13 19:57:24 +02:00
Hermès Bélusca-Maïto
47d539e6e0 [RTL] Make a RtlQueryEnvironmentVariable_U() DPRINT a little bit more useful. 2018-10-13 19:44:13 +02:00
Pierre Schweitzer
f3ea47d94d [KMTESTS:CC] Add more tests for CcPinMappedData() 2018-10-13 19:24:29 +02:00
Eric Kohl
a5172b4699 [NETCFGX] Move the NetClassInstaller to a separate file. 2018-10-13 19:18:37 +02:00
Pierre Schweitzer
c467169708 [KMTESTS:CC] Properly check for memory allocations 2018-10-13 19:17:00 +02:00
Pierre Schweitzer
ce0650d37d [KMTESTS:CC] Add more tests for CcPinMappedData() 2018-10-13 19:15:48 +02:00
Pierre Schweitzer
e3531499c2 [KMTESTS:CC] Add more tests for CcPinMappedData() 2018-10-13 19:13:07 +02:00
Pierre Schweitzer
991db73e37 [KMTESTS:CC] Add more tests for CcPinMappedData() 2018-10-13 18:53:08 +02:00
Pierre Schweitzer
45231fbbc5 [KMTESTS:CC] Add a test showing our CcPinMappedData() implementation is broken 2018-10-13 14:24:52 +02:00
Mark Jansen
ef202724d8 [SDK] Implement __wine_spec_unimplemented_stub with ntdll functions 2018-10-12 19:30:36 +02:00
Mark Jansen
1968776bf2 [DBGHELP] Exclude stubs from pch 2018-10-12 19:30:36 +02:00
Mark Jansen
b494abbd72 [SDK] Add version option to our spec2def cmake command 2018-10-12 19:30:36 +02:00
Mark Jansen
4e3f76352a [SDK] Add the WITH_RELAY option to msvc's spec2def command. (GCC already had it) 2018-10-12 19:30:35 +02:00
Mark Jansen
d564c7c8e3 [SPEC2DEF] Fix support for different OS versions. 2018-10-12 19:30:35 +02:00
Mark Jansen
71993fd8c9 [KERNEL32] Fix some stubs for 0x600+ 2018-10-12 19:30:24 +02:00
Serge Gautherie
a06b425839 [NTOS:KD] A few trivial code improvements 2018-10-12 08:43:02 +02:00
Serge Gautherie
561a10056b [NTOS:KD] Remove an unreachable "break;"
On behalf of Kudratov Olimjon.
CORE-8545
2018-10-12 08:43:02 +02:00
Pierre Schweitzer
1acb5a9fab [NTOSKRNL] Don't keep the spin lock hold too long when we lost the BCB race
This will avoid a deadlock on unpin.
2018-10-12 08:20:32 +02:00
Pierre Schweitzer
cf8ba3bd9c [NTOSKRNL] Rewrite BCB handling to be more robust
We now handle race conditions when creating BCB to avoid
having duplicated BCB per shared maps.
Also, we already specify whether the memory will be pinned
when creating the BCB, to avoid potential duplications or
BCB misuse.
2018-10-11 23:15:01 +02:00
Pierre Schweitzer
8f4d8cb616 [APPWIZ] Update French translation 2018-10-10 08:42:38 +02:00
Eric Kohl
d58f6558e0 [NETCFGX] NetworkPropertySheetProvider: Fix property selection because the property list box is sorted.
CORE-15095
2018-10-09 23:19:48 +02:00
Pierre Schweitzer
9b2a53e56b [BOOTDATA] Update optional modules according to 287d35b
This fixes optional modules being installed in places
that make no sense.
This also fixes auto installation of Gecko. Thus, this
fixes unattended setup of ReactOS for testbots.

CORE-15160
2018-10-09 08:40:41 +02:00
Hermès Bélusca-Maïto
4e6fc201a0 [MKHIVE] Fixes for the previous fixes.
- Fix parsing of the options.
- Only uppercase the file name part and NOT the full path!
  And do it in a way GCC-Linux correctly understands, aka.:
      *ptr = toupper(*ptr); ++ptr;
  but NOT!:
      *ptr++ = toupper(*ptr);
  (that last one worked on GCC-Win and MSVC).

[CMAKE] Let's keep SETUPREG.HIV and BCD hive file names in uppercase
(use the '-u' switch) while keeping the other ones in lowercase.

Should definitively fix GCCLin builder!
2018-10-09 01:33:10 +02:00
Hermès Bélusca-Maïto
f37dd1e10a [MKHIVE] Remove support for '/' options, this does not behave well under Linux. 2018-10-09 00:25:01 +02:00
Hermès Bélusca-Maïto
efbe071e02 [MKHIVE] Minor additional functionality.
- Add support for '/' switch characters.
- Add '-?' switch.

TEMPORARY:
- Add a '-u' switch to generate hive file names in uppercase (by default
  we keep these in lowercase). Should help in fixing GCCLin builder.

[CMAKE] Fix expected file name case. Should help in fixing GCCLin builder.
2018-10-09 00:15:14 +02:00
Hermès Bélusca-Maïto
c069ca1797 [MKHIVE] Improve dprint output (delimiting where strings start & end: is useful for empty strings).
svn path=/branches/setup_improvements/; revision=74768
2018-10-08 21:23:39 +02:00
Hermès Bélusca-Maïto
84d2264d9b [MKHIVE][CMAKE] Make mkhive a bit more flexible, so that it can generate only specific hives on-demand (and not all of them always at once).
This commit is needed for building a single bootcd registry hive. It will also enable 1-st stage setup to have a proper registry present as done on Windows.
CORE-13347

[CMAKE]
Note that the mkhive commands should really depend on the generated UTF16 INF files since the latter are those that are actually used as input for mkhive.
Otherwise, the mkhive calls & the UTF16 INF file conversion is not serialized and we can generate "corrupted" hives due to the fact that mkhive is using
INF files that are in the process of being (and therefore, only partially) generated.

svn path=/branches/setup_improvements/; revision=74741
svn path=/branches/setup_improvements/; revision=74749
2018-10-08 21:23:38 +02:00
Hermès Bélusca-Maïto
287d35b84d [BOOTDATA][CMAKE] Enumerate the four first installation directories in 'canonical' order, to keep compatibility with Windows' txtsetup.sif/layout.inf. 2018-10-08 21:16:58 +02:00
Hermès Bélusca-Maïto
8468ad5cf4 [SYSSETUP] Delete the created fonts when needed. 2018-10-08 21:16:58 +02:00
Hermès Bélusca-Maïto
6267898583 [SYSSETUP] Use ARRAYSIZE / _countof instead of sizeof ratios.
svn path=/branches/setup_improvements/; revision=75523
2018-10-08 21:16:57 +02:00
Hermès Bélusca-Maïto
e9893906a7 [SYSSETUP] Code formatting.
svn path=/branches/setup_improvements/; revision=75522
2018-10-08 21:16:56 +02:00
Hermès Bélusca-Maïto
8d78897384 [USERINIT] Enhancements for starting ReactOS GUI installer or Explorer shell.
- Transform TryToStartShell() into a StartProcess() function whose aim
  is just to start processes, since there is no extra initialization needed
  for starting a shell process.

- Modify StartInstaller() to call StartProcess() for starting the ReactOS GUI
  installer found on the installation media, from a path automatically expanded
  depending on the ambient CPU architecture.

svn path=/branches/setup_improvements/; revision=75331
2018-10-08 21:16:46 +02:00
Hermès Bélusca-Maïto
5b14b6f581 [WELCOME] Minor usage improvements.
- Don't hardcode the installer file name in ExpandInstallerPath() but
  provide it from a parameter. Return TRUE/FALSE if the installer file
  is/is not found.

- Expand any environment string present in the items command line.

- Enable/disable the menu buttons depending on whether or not an
  associated command is present.

- Enable mirroring from resources.
2018-10-08 21:00:14 +02:00
Hermès Bélusca-Maïto
a0dae6094e [WELCOME] Reduce Welcome's SUBSYSTEM requirements to WinNT 4 for x86 builds only, so that we can still show something in old NT OSes. 2018-10-08 21:00:14 +02:00
Hermès Bélusca-Maïto
55f9fee412 [WELCOME] Automatically expands the path to the ReactOS installer executable found on the installation media, depending on the ambient CPU architecture.
svn path=/branches/setup_improvements/; revision=75330
2018-10-08 21:00:10 +02:00
Eric Kohl
11c9e773fb [NETCFGX] NetPropPageProvider: Add Base and Step parameter options. 2018-10-08 18:55:39 +02:00
Stanislav Motylkov
743bbc32b7 [SYSTEMINFO] Improve uptime source 2018-10-08 16:36:17 +02:00
Baruch Rutman
acb1f24085 [ROSTESTS] Add a test program. (#890)
Add a test program that shows how the *PSMTextOut() functions draw
the strings by a side by side comparison between LpkPSMTextOut() and
UserLpkPSMTextOut().
2018-10-08 16:17:55 +02:00
Baruch Rutman
87c529a537 [LPK] Small fix and a related comment. (#890)
[LPK][USER32] Fix reading layout checks.

- Both functions don't care about DT_RTLREADING flag.
- Added a different method to check reading order.

[USER32] Remove gcc-build breaker semicolon.
2018-10-08 16:17:42 +02:00
Baruch Rutman
17d4df8102 [USER32] Implement UserLpkPSMTextOut(). (#890)
This function is a condensed version of LpkPSMTextOut() (from lpk.dll),
but not bug-for-bug equivalent.
The main difference is that the underscore is drawn without taking into
account any kind of script processing.
2018-10-08 16:16:52 +02:00
Baruch Rutman
a494d0583f [LPK] Implement LpkPSMTextOut(). (#890)
- The function is almost fully implemented, but some return values change wildly.
  The results are mostly compatible to the Windows results.

- Remove #ifdef (this is primary ReactOS code).
2018-10-08 16:16:40 +02:00
Stanislav Motylkov
b3179a0771 [APPWIZ] Update russian translation (#917) 2018-10-08 14:53:11 +02:00
Katayama Hirofumi MZ
951335cd15 [FONT][WIN32SS] Use GOT_PENALTY macro to specify the penalty (#910)
Define and use GOT_PENALTY macro to specify the font penalty info.
CORE-5519
2018-10-08 14:38:38 +02:00
Bișoc George
cb499cd1fd [APPWIZ] Display a message box in case of failure (#913)
When the downloading process of Gecko fails, display a warning message box.
2018-10-08 14:36:40 +02:00
Stanislav Motylkov
ab9baa2d09 [SYSDM] Fix IDC_ROSVERSION in Romanian translation 2018-10-08 14:34:11 +02:00
Stanislav Motylkov
3779c2e770 [SYSDM] Add system uptime information 2018-10-08 14:34:11 +02:00
Stanislav Motylkov
80d26b1646 [SYSDM] Make MHz and GHz strings translatable 2018-10-08 14:34:11 +02:00
Hermès Bélusca-Maïto
2cbac3d049 [SHELL32] Finally fix the icon location path (un)expansion for shell links, and explain why I originally used SHExpandEnvironmentStringsW().
CORE-14009 CORE-14982
2018-10-08 00:50:38 +02:00
Eric Kohl
1e20a3e5b5 [SHELL32] Fix a potential buffer overrun.
Patch by Kudratov Olimjon.

CORE-8545
2018-10-07 22:56:16 +02:00
Eric Kohl
bb7292b287 [CRT] Fix two obvious typos in _mbbtype().
Patch by Kudratov Olimjon.

CORE-8545
2018-10-07 22:56:14 +02:00
Luo Yufan
b70ef2ee56 [TRANSLATION] Update Simplified Chinese translation. (#912) 2018-10-07 20:44:00 +02:00
Hermès Bélusca-Maïto
40737bdddb [USER32] Fix the ICO_ExtractIconExW() helper with respect to what is found with the user32_apitest:PrivateExtractIcons test.
CORE-15150
2018-10-07 20:32:42 +02:00
Hermès Bélusca-Maïto
57a9fca04b [USER32_APITEST] Add a test for PrivateExtractIcons(A/W) that shows that this API can accept unexpanded file paths.
CORE-15150
2018-10-07 20:32:26 +02:00
Hermès Bélusca-Maïto
cd473963f4 [SHELL32_APITEST] Fix the code with respect to what the comments say. No change in test results happen. 2018-10-07 20:32:22 +02:00
Stanislav Motylkov
732a6b0801 [NETCFGX] Update russian translation 2018-10-07 18:28:43 +02:00
Stanislav Motylkov
0934d4f171 [MSPORTS] Update russian translation 2018-10-07 18:28:43 +02:00
Stanislav Motylkov
10b7b94f45 [DEVMGR] Update russian translation 2018-10-07 18:28:43 +02:00
Eric Kohl
45cd6d5e4e [NETCFGX] NetPropPageProvider: Store the parameters in the registry 2018-10-06 23:57:17 +02:00
Eric Kohl
7ad65a3773 [NETCFGX] NetPropPageProvider: Improve the handling of optional parameters
- Add a pointer to the current parameter.
- Change the 'present' and 'not present' radio buttons to auto radio buttons.
- Display present and non-present optional parameters properly.
2018-10-06 14:33:48 +02:00
Pierre Schweitzer
0d90b4dd5f [KMTESTS:CC] A pin BCB has a node type code 2018-10-06 12:09:07 +02:00
Eric Kohl
c603c54ab0 [MSPORTS] When the LPT port number gets changed, update the PortName and FriendlyName values in the registry. 2018-10-06 11:12:16 +02:00
Pierre Schweitzer
52ccfcf6fe [KMTESTS:CC] Fix a typo 2018-10-05 21:26:16 +02:00
Pierre Schweitzer
bd39459f89 [NTOSKRNL] Implement support for PIN_IF_BCB flag 2018-10-05 21:26:16 +02:00
Pierre Schweitzer
7fd2751c87 [NTOSKRNL] When pinning data, try to find an already pinned BCB
If found, attempt to lock it and return it.

This fixes a lot of CcPinRead tests (and seems to speed up a bit ReactOS)
2018-10-05 21:26:16 +02:00
Pierre Schweitzer
9fc75c1132 [NTOSKRNL] When mapping data, try to find if there's already a BCB
If so, return such BCB instead of creating a new one. This will
allow (at some point) to be more consistent in case of concurrent
mapping.

This fixes a few CcMapData tests.
2018-10-05 21:26:16 +02:00
Pierre Schweitzer
f284947622 [NTOSKRNL] Move the PinCount out of the VACB to the BCB
Given current ReactOS implementation, a VACB can be pinned
several times, with different BCB. In next commits, a single
BCB will be able to be pinned several times. That would
lead to severe inconsistencies in counting and thus corruption.
2018-10-05 21:26:16 +02:00
Eric Kohl
f9739601b3 [DEVMGR] Hackfix CORE-5643 2018-10-05 15:09:27 +02:00
Eric Kohl
9159190039 [SERVICES] Ignore the case when we compare account names 2018-10-05 12:04:21 +02:00
Pierre Schweitzer
0b713d4fa0 [NTOSKRNL] On open, verify and validate the hint device object if any 2018-10-05 10:49:59 +02:00
Pierre Schweitzer
779d87b483 [NTOSKRNL] Implement IopCheckTopDeviceHint() 2018-10-05 10:49:59 +02:00
Pierre Schweitzer
670a7ac718 [NTOSKRNL] In IoGetRelatedDeviceObject(), validate hint is on the stack before returning it 2018-10-05 10:49:59 +02:00
Pierre Schweitzer
161b6728ef [NTOSKRNL] Implement IopVerifyDeviceObjectOnStack() 2018-10-05 10:49:59 +02:00
Eric Kohl
1820aa8fe6 [SERVICES] Revert f6d81f22 because it breaks the advapi32 LockServiceDatabase test. 2018-10-05 09:41:50 +02:00
Eric Kohl
f6d81f2257 [SERVICES] Fix timeout when a service is stopped
RSetServiceStatus: Send the stop command for the dispatcher thread from a separate thread.

Fixes CORE-15064
2018-10-05 08:41:23 +02:00
Pierre Schweitzer
2a182931b6 [NTOSKRNL] A bit of cleanup in Io*FilterContext() 2018-10-04 22:24:52 +02:00
Pierre Schweitzer
5f0d02eb52 [NTOSKRNL] Implement IoChangeFileObjectFilterContext() 2018-10-04 19:30:39 +02:00
Pierre Schweitzer
a43fb5e054 [NTOSKRNL] Implement IoGetFileObjectFilterContext() 2018-10-04 19:30:38 +02:00
Serge Gautherie
043faab089 [KMTESTS:TCPIP] Add an "Associate address IRP completed" trace 2018-10-04 18:28:08 +02:00
Serge Gautherie
302144c5ac [KMTESTS:TCPIP] ReturnAddress: Expect NT5 result, not NT6+ one
ROSTESTS-268
2018-10-04 18:17:15 +02:00
Pierre Schweitzer
f2f24c1fa7 [DEVMGR] Update French translation 2018-10-04 11:13:15 +02:00
Pierre Schweitzer
e19e907a2c [NTOSKRNL] Quickly check for alignment in NtRead/WriteFile
This quick check based on bits and operation is for 2^ based
sector sizes (most of the cases) and will perform faster than
the modulo operation which is still used in fallback in case
the sector size wouldn't be a power of 2.
2018-10-04 10:45:10 +02:00
Pierre Schweitzer
44155053cd [NTOSKRNL] Use captured variable to check parameters in NtRead/WriteFile 2018-10-04 10:45:10 +02:00
Eric Kohl
c444231b87 [MSPORTS] Check and show which parallel port is in use. 2018-10-04 10:21:06 +02:00
Pierre Schweitzer
bf59669065 [NTOSKRNL] On read/write, also check buffer respects device alignment requirements 2018-10-04 07:56:23 +02:00
Pierre Schweitzer
1bd25c5c24 [NTOSKRNL] When checking for byte offset alignment, tolerate some magic values 2018-10-04 07:53:12 +02:00
Eric Kohl
fd33402104 [NTOSKRNL] NtReadFile/NtWriteFile: If a file has been opened for non-cached access, Length and ByteOffset must be sector size aligned.
This fixed two ntdll apitests.
2018-10-04 01:17:58 +02:00
Pierre Schweitzer
d8f22735ed [NTOSKRNL] In IopQueryNameInternal(), enclose output copy in a SEH statement 2018-10-03 22:55:23 +02:00
Pierre Schweitzer
15b9a6aa4c [NTOSKRNL] Call IoCreateFileSpecifyDeviceObjectHint with the hint if it was specified 2018-10-03 21:29:12 +02:00
Mark Jansen
1a9b50690a [LDR] Include dllname in snap failure DPRINT.
CORE-15135
2018-10-03 19:34:14 +02:00
Pierre Schweitzer
520f404e9c [NTOSKRNL] In IoQueryFileDosDeviceName(), in case of an error, return appropriate status 2018-10-03 17:08:42 +02:00
Pierre Schweitzer
8c6c5a92e8 [NTOSKRNL] Implement DOS name query in IopQueryNameInternal() 2018-10-03 13:56:18 +02:00
Pierre Schweitzer
769157f6ff [NTOSKRNL] Allow FileNameInformation not to be implemented in storage stack 2018-10-03 13:52:05 +02:00
Pierre Schweitzer
46bda8a4c6 [NTOSKRNL] In IopQueryNameInternal() don't copy name if it's not valid 2018-10-03 13:50:16 +02:00
Pierre Schweitzer
4a7e89770e [NTOSKRNL] Implement IoQueryFileDosDeviceName() 2018-10-03 11:56:21 +02:00
Pierre Schweitzer
abfddca8bb [NTOSKRNL] Stub support for querying DOS name when parsing FO name 2018-10-03 11:45:08 +02:00
Pierre Schweitzer
a1401a7577 [NTOSKRNL] Use faster internal helper to query name
This only applies if we're called from kernel mode
with a synchronous file.
2018-10-03 10:22:33 +02:00
Pierre Schweitzer
1348f62f20 [NTOSKRNL] Rename IopQueryNameFile to IopQueryNameInternal 2018-10-03 10:22:33 +02:00
Mark Jansen
3d44f79e3e [FONT][WIN32SS] Include the style name in the registry key.
Thanks to Doug Lyons for pinpointing the issue.

CORE-14044
2018-10-02 22:40:50 +02:00
Bișoc George
758f9fbdb9 [NEWDEV] Fix a truncated text on device driver name 2018-10-02 21:54:30 +02:00
Katayama Hirofumi MZ
b560491ccf [FONTS] Fix underline/underscore position of Tahoma (#892)
Because of FontForge's bug, the underline position value of Tahoma and Tahoma Bold was wrongly set (#789, #809). This commit fixes those values.
CORE-15079
2018-10-02 21:53:04 +02:00
Eric Kohl
91ba4e7350 [NETCFGX] Network property page: Add support for enum type options, the 'Optional' setting and the 'TextLimit' and 'Uppercase' settings for edit type options. 2018-10-02 17:58:16 +02:00
Pierre Schweitzer
6a2e979f55 [USETUP] Add missing line jump 2018-10-02 13:34:59 +02:00
Thomas Faber
8fbc488050 [NTOS:IO] Implement IopAcquireFileObjectLock and use it to fix IopLockFileObject 2018-10-02 09:56:55 +02:00
Eric Kohl
c6142174af [NETCFGX] Network property page: Implement reading of configured settings. Editing and writing is not implemented yet. 2018-10-01 21:16:22 +02:00
Pierre Schweitzer
fd8893e58f [NTOSKRNL] Respect PFN cache attribute when required
This fixes noisy DPRINT1 being printed while reading
or writing files with NFS.
2018-10-01 20:59:37 +02:00
Mark Jansen
cc27de18f4 [DMUSIC] Fix the build for vs 2010 2018-10-01 20:47:01 +02:00
Mark Jansen
57ed670b5a [RTL] actctx: When probing a dll for a manifest, use the first manifest id present,
instead of always searching for CREATEPROCESS_MANIFEST_RESOURCE_ID.
CORE-9519
2018-10-01 20:16:10 +02:00
Amine Khaldi
50ae3dd409 [ITSS_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:57:42 +01:00
Amine Khaldi
0ccdd32f50 [ITSS] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:57:08 +01:00
Amine Khaldi
6bd06f3b76 [INETMIB1] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:56:32 +01:00
Amine Khaldi
d736703417 [INETCOMM_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:55:57 +01:00
Amine Khaldi
33351fe5ad [INETCOMM] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:55:17 +01:00
Amine Khaldi
41d938c389 [IMM32_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:54:28 +01:00
Amine Khaldi
789fa9c819 [IMM32] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:53:21 +01:00
Amine Khaldi
d4bc0feb6e [IMAADP32.ACM] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:52:44 +01:00
Amine Khaldi
336b2a4564 [IEFRAME] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:52:10 +01:00
Amine Khaldi
a214feb6fe [HHCTRL.OCX] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:51:35 +01:00
Amine Khaldi
3e9224d013 [GDIPLUS_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:50:59 +01:00
Amine Khaldi
8d2e1e843c [GDIPLUS] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:50:25 +01:00
Amine Khaldi
fe0fd16499 [FUSION] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:49:44 +01:00
Amine Khaldi
4fc4698f2a [CRYPTUI] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:49:09 +01:00
Amine Khaldi
06fdb3e6ab [CRYPT32_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:48:33 +01:00
Amine Khaldi
997d44c915 [CRYPT32] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:47:51 +01:00
Amine Khaldi
156cac53d2 [CREDUI_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:47:02 +01:00
Amine Khaldi
409344041f [CREDUI] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:46:19 +01:00
Amine Khaldi
e08ae510d5 [COMDLG32_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:45:40 +01:00
Amine Khaldi
eaac1cc75f [COMDLG32] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 12:44:53 +01:00
Pierre Schweitzer
37e0012be1 [DMUSIC] Fix build? 2018-10-01 11:04:26 +02:00
Amine Khaldi
814d42def7 [ATL100_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:27:20 +01:00
Amine Khaldi
21d3faa2a6 [ATL] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:26:43 +01:00
Amine Khaldi
d1060f20d6 [ADVPACK_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:26:09 +01:00
Amine Khaldi
0df75d9648 [ADVPACK] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:25:34 +01:00
Amine Khaldi
698fd79dd2 [QEDIT] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:24:54 +01:00
Amine Khaldi
64c1a65258 [MSDMO] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:24:18 +01:00
Amine Khaldi
ddfe5ce855 [DPLAYX_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:23:40 +01:00
Amine Khaldi
a8126f3f1e [DPLAYX] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:23:02 +01:00
Amine Khaldi
a16afc25c9 [DMUSIC] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:22:26 +01:00
Amine Khaldi
5c9588fa7d [DINPUT_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:21:34 +01:00
Amine Khaldi
ad21be5e5f [DINPUT] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:20:57 +01:00
Amine Khaldi
db2b3364c6 [D3DXOF] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:20:18 +01:00
Amine Khaldi
bcb816619a [D3DX9_36] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:19:39 +01:00
Amine Khaldi
c003509323 [D3DCOMPILER_43] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:19:01 +01:00
Amine Khaldi
d02c72252c [INETCPL] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:18:08 +01:00
Amine Khaldi
21c5ece5da [XCOPY_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:17:02 +01:00
Amine Khaldi
19eb7a62f9 [XCOPY] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:16:20 +01:00
Amine Khaldi
5a217e3a6f [WMIC] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:15:34 +01:00
Amine Khaldi
cb0f46bddf [TASKKILL] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:14:52 +01:00
Amine Khaldi
5260a37425 [REG] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:13:56 +01:00
Amine Khaldi
f2df3bf079 [WSCRIPT_WINETEST] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:13:11 +01:00
Amine Khaldi
fd8ec79fd1 [CSCRIPT][WSCRIPT] Sync with Wine Staging 3.17. CORE-15127 2018-10-01 00:11:58 +01:00
Amine Khaldi
82faa151e5 [XDK][PSDK][WINE] Unify ARRAY_SIZE definition for Wine modules. CORE-15127 2018-09-30 23:57:08 +01:00
Hermès Bélusca-Maïto
ccde12483f [SHELL32] Fixes and improvements for PickIconDlg().
- Deal with expanded paths only when loading icons. If the user specifies
  an unexpanded path to a module containing icons, this unexpanded path
  is returned to the caller!

- Perform the dialog cleanup in WM_DESTROY message handler.

- When pressing ENTER/OK in the dialog box, retrieve the selected icon and
  close the dialog *ONLY WHEN* the user actually has selected an icon.
  If the user modified manually the module path, pressing ENTER/OK instead
  reloads the icons list.
2018-09-30 21:48:34 +02:00
Hermès Bélusca-Maïto
ae9ec94240 [SHELL32] Code formatting only. 2018-09-30 21:48:31 +02:00
Eric Kohl
6d3921bdd5 [BOOTDATA] Register the CriticalDeviceCoInstaller as a class co-installer for critical device classes 2018-09-30 17:23:40 +02:00
Eric Kohl
4aa1bee757 [SYSETUP] Implement the CriticalDeviceCoInstaller
The CriticalDeviceCoInstaller adds devices of registered classes to the critical device database.
2018-09-30 17:23:38 +02:00
Thomas Faber
c7af85b64b [BTRFS] Fix IRP leak.
This leaked at least one IRP for every write, making it the largest leak when
running with BTRFS as the system volume.
Thanks to Victor Perevertkin.

Submitted upstream thanks to Pierre:
https://github.com/maharmstone/btrfs/pull/106
2018-09-30 16:11:42 +02:00
Pierre Schweitzer
257923cad1 [NPFS] Magic--; 2018-09-30 10:55:44 +02:00
Pierre Schweitzer
890a293683 [NTOSKRNL] Fix remaining access computation on open 2018-09-30 10:55:44 +02:00
Pierre Schweitzer
6d0c07c44f [NTOSKRNL] Implement access check for secure open 2018-09-30 10:55:43 +02:00
Hermès Bélusca-Maïto
0c122589d2 [BLUE] Perform size/rectangle boundary checks on read/write operations. CORE-15108 2018-09-29 21:55:00 +02:00
Hermès Bélusca-Maïto
e29457aadd [USETUP] Remove a hardcoded value. 2018-09-29 21:54:48 +02:00
Eric Kohl
54eb5635d8 [MSPORTS] Implement the 'Enable legacy Plug and Play detection' setting 2018-09-29 18:05:22 +02:00
Alexander Rechitskiy
ea0fd8a395 [README] Add a link to the nightly builds page for convenience (#881) 2018-09-29 16:43:32 +02:00
Pierre Schweitzer
cf25432eed [NTOSKRNL] Don't lock file object on close if we're not called by Ob
IopCloseFile can be called by IopDeleteFile. In that situation, it
doesn't set any process as first parameter. Furthermore, we are in a
situation where it's not required to lock the file object (see the
assert before the call).
2018-09-29 16:25:58 +02:00
Abdulganiev Rafael
6f138e2811 [DESK.CPL] Remove monitor resource scaling (#876) 2018-09-29 16:24:10 +02:00
Stanislav Motylkov
4eccca5943 [SYSDM] Add hardware model name print 2018-09-29 17:12:18 +03:00
Stanislav Motylkov
797d2354fa [SYSDM] Add one more IDC_MACHINELINE for model name 2018-09-29 17:11:57 +03:00
Stanislav Motylkov
bd1fc964e7 [SYSDM] Move system information controls 16 points higher 2018-09-29 17:11:31 +03:00
Stanislav Motylkov
bae6e075e0 [UDMIHELP] Initialize output buffer if DMI string is NULL 2018-09-29 17:11:08 +03:00
Stanislav Motylkov
c356804550 [DMILIB] Process SKU and Family strings 2018-09-29 17:10:48 +03:00
Eric Kohl
133611fed8 [MSPORTS] Implement the 'Filter Resource Method' setting for parallel ports 2018-09-29 14:58:55 +02:00
Pierre Schweitzer
1f85e4fe9f [DEVCPUX] Add French translation 2018-09-29 11:36:45 +02:00
Pierre Schweitzer
207ff9444e [NTOSKRNL] Reference the file object before issuing the unlock all IRP
This fixes the last kmode assert triggered by httpd on ReactOS.

CORE-12045
2018-09-29 11:22:22 +02:00
Eric Kohl
f155de483f [msports] Notify the system of changes to the serial port settings. 2018-09-29 01:57:59 +02:00
Eric Kohl
8f939e057c [SERVICES] Control set code clean-up
- Flush the new control set after the control set has been created.
- Make sure that we create a new control set only on the first boot after setup.
- Move the control set copy code to a separate function.
- Get rid of the global control set values.
2018-09-29 01:31:58 +02:00
Pierre Schweitzer
5472c1db82 [NTOSKRNL] Unlock file if required on last process handle close 2018-09-28 23:34:28 +02:00
Eric Kohl
04683639f0 [SERVICES] RChangeServiceConfigW / RCreateServiceW: Use SecureZeroMemory to wipe clear-text passwords after use. 2018-09-28 17:51:12 +02:00
Eric Kohl
b9aeb5bfbd [SERVICES] Fixed a missing comma 2018-09-28 17:29:31 +02:00
Eric Kohl
ea6dac3438 [SERVICES] Create a new control set on a non-setup boot. 2018-09-28 16:24:07 +02:00
Hermès Bélusca-Maïto
c446ce0d62 [ADVAPI32] Improve a bit CreateProcessAsUser().
- Check whether the user-provided token is a primary token.

- Do not fail when the RtlAdjustPrivilege() call fails (see the code
  comment for an explanation). TL;DR is: that call may indeed fail but
  the privilege may also not be necessary because the user-provided
  token is a restricted version of the caller's primary token.
  And this is situation is perfectly fine.

This fixes Java 7 installation, CORE-14874.
2018-09-28 00:45:04 +02:00
Hermès Bélusca-Maïto
89c5191d3f [NTOS:PS] In PspSetPrimaryToken(), check also for sibling token to determine whether it is required to have the SeAssignPrimaryTokenPrivilege.
In addition, it is the presence or absence of the 'Token' pointer that indicates whether or not we should use instead the provided token handle.
2018-09-28 00:45:03 +02:00
Hermès Bélusca-Maïto
7f9282927b [NTOS:SE] Fixes for NT tokens.
- SeIsTokenChild(): Correctly check whether a caller-provided token
  is a child from the current process' primary token by looking at
  its ParentTokenId member.

- Add a SeIsTokenSibling() helper to determine whether a caller-provided
  token and the current process' primary token are siblings, by comparing
  their ParentTokenId's and AuthenticationId's.

NOTE: Children tokens are created through CreateRestrictedToken();
sibling tokens are created through DuplicateToken() (amongst others).

See slide 49 of https://www.slideshare.net/Shakacon/social-engineering-the-windows-kernel-by-james-forshaw
or https://googleprojectzero.blogspot.com/2016/01/raising-dead.html
for some details.
2018-09-28 00:45:01 +02:00
Bișoc George
3caab66e22 [DWNL] Add translations (for Romanian & Italian)
And include them as well.
2018-09-28 00:23:48 +02:00
Stanislav Motylkov
0fa744241f [DEVCPUX] Add russian translation
Also make MHz string translatable. Addendum to 793e2a3.
2018-09-27 12:10:06 +02:00
Eric Kohl
3c1e5f7cb9 [NETCFGX] Add the most simple property sheet provider for network adapters
- Switch to WINE debug code.
- Build the UNICODE version of the DLL by default.
- Add the most simple property sheet provider.
2018-09-26 23:49:02 +02:00
Eric Kohl
986ce63c4c [SETUPAPI] SetupDiGetClassDevPropertySheetsW: Support class property sheet providers. 2018-09-26 23:49:01 +02:00
Stanislav Motylkov
68c6641781 [MSPORTS] Add russian translation
Addendum to 69e834f.
2018-09-25 22:50:02 +02:00
Eric Kohl
793e2a38b4 [DEVCPUX] Make the CPU property sheet page a little nicer and make it translatable 2018-09-25 21:51:19 +02:00
Eric Kohl
af37e0e565 [MSPORTS] Hackfix the code to determine the serial and parallel port numbers.
Now that SetupDiCreateDevRegKeyW is working as expected, we can no
longer (ab)use it to retrieve a ports resources. Use SetupDiGetDeviceInstanceIdW instead and open the registry keys manually.
2018-09-25 17:48:27 +02:00
Eric Kohl
69e834fa54 [MSPORTS] Implement serial port settings
- Fix the control styles and grouping in the dialogs.
- Implement reading, modifying and writing of the serial port settings.
2018-09-25 14:28:29 +02:00
Stanislav Motylkov
f1c2ec0de6 [INF] Add russian translation to machine.inf
Addendum to 68eb0fd.
2018-09-25 11:20:25 +02:00
Eric Kohl
68eb0fd202 [INF] machine.inf: Add settings for PCI RAM controllers 2018-09-24 16:15:46 +02:00
Eric Kohl
185a8fd835 [NETSHELL] Read, write and display the 'Notify me when this connection...' option for network connections. 2018-09-23 23:31:00 +02:00
Eric Kohl
df36ee9fe2 [SETUPAPI] Replace the remaining internal calls to SetupDiOpenDevRegKey and SetupDiCreateDevRegKeyW by calls to SETUPDI_OpenDrvKey, SETUPDI_CreateDevKey or SETUPDI_CreateDrvKey. 2018-09-23 20:19:26 +02:00
Mark Jansen
3d3bd4e77e [WIN32K] Work around GCC builds inventing dead keys.
CORE-14948
2018-09-23 20:03:14 +02:00
Mark Jansen
7882b6cfe3 [SHELL32_APITEST] Speed up the CUserNotification test in the failure case. 2018-09-23 20:03:08 +02:00
Hermès Bélusca-Maïto
bf164caae8 [SERVICES] Simplify the implementation of RGetServiceDisplayNameA/W() and RGetServiceKeyNameA/W().
Also comment about the observed behaviour of the returned number of "characters"
returned by the ANSI versions of these APIs (which is tested by advapi32_winetest:service).

[ADVAPI32:SCM] Add a comment concerning wide characters vs. bytes mismatch.
2018-09-23 18:09:10 +02:00
Eric Kohl
60e166535a [SETUPAPI] Do not use SetupDiOpenDevRegKey in other SetupDi functions. Use SETUPDI_OpenDevKey or SETUPDI_OpenDrvKey instead.
Note: The remaining calls to SetupDiOpenDevRegKey and SetupDiCreateDevRegKey will be fixed in another patch.

Fixes CORE-15091
2018-09-23 16:16:12 +02:00
Pierre Schweitzer
2a80ae2bb6 [NTOSKRNL] Properly align VACB writes
Also simplify VACB reads alignment code.
Also add some sanity ASSERTs.
2018-09-23 10:32:14 +02:00
Hermès Bélusca-Maïto
f7b9db0f66 [BOOTDATA] Factorize the creation of user profile directories inside a helper function that can be called with different parameters. 2018-09-23 00:38:12 +02:00
Hermès Bélusca-Maïto
7ee298bbfc [SHELL32] In _SHExpandEnvironmentStrings(), fall back to SHExpandEnvironmentStringsForUserW() if the simplified code paths failed.
This allows the code to give a last chance for expanding the string.
And if it still fails, we bail out as expected and the caller will
take appropriate actions.

As a by-product, this commit (together with the previous one e2960914)
fixes the regression CORE-14981 (Quick-Launch bar couldn't be opened
in LiveCD).
2018-09-23 00:18:57 +02:00
Hermès Bélusca-Maïto
e29609147b [SHELL32] In _SHGetUserShellFolderPath(), check the return value of _SHExpandEnvironmentStrings()
and bail out if it failed. That way we won't use and cache in the registry an invalid-expanded string.

CORE-14981
2018-09-23 00:16:06 +02:00
Hermès Bélusca-Maïto
41a5b11fcd [SHELL32] Partially synchronize wine/shellpath.c with Wine.
- Adjust the code with respect to:
  "shell32: Re-add support for expanding ALLUSERSPROFILE for backward compatibility."
  4a6855a575c02aa1569aab8b2e96720fc02f3f26 (Alexandre Julliard)

- "shell32: Avoid infinite loop in _SHExpandEnvironmentStrings."
  ceea5bda14ecf4c8ce262fc7ab88df49e500bc38 (Alexandre Julliard)

- "shell32: Assume that system directory always contains a drive letter."
  54530bc4933ae1014c3697c95e22b8ca5a275bc4 (Alexandre Julliard)

- "shell32: Use ARRAY_SIZE macro."
  612a1941331485725952d34f3dcd5866fc318dc2 (Nikolay Sivov)

- "shell32: Fix a trace message."
  bb09bb5750d617047aa23635731519a2f9486159 (Nikolay Sivov)

- "shell32: Fix SHGetFolderPathAndSubDir() trace message."
  f75d5625966933562b974540a3f29dfcd720ad50 (Nikolay Sivov)

- "shell32: Pass correct buffer length to RegQueryValueExW()."
  0bfb97dcba29552b51d8609fcc6e7bbc04bb8320 (Nikolay Sivov)

- "shell32: Remove unused string (Clang)."
  8d50a8a246960749afba21eac117b4fcbbf2c79d (André Hentschel)

- "shell32: Use E_NOT_SUFFICIENT_BUFFER definition."
  730e744e3bd6b706612fe0f90a7efb2e600f114f (Nikolay Sivov)
2018-09-23 00:16:02 +02:00
Bișoc George
983b4c9f94 [MSCONFIG_NEW] Do not assign an access key to a letter with diacritic 2018-09-22 21:51:14 +02:00
Paweł Cholewa
13045d50ed [DWNL] Add Polish translation 2018-09-22 14:53:13 +02:00
Eric Kohl
de08785ade [SETUPAPI] SetupDiCreateDevRegKeyW / SetupDiOpenDevRegKey: Create or open the 'Device Parameters' subkey of the given devices enum key when we try to access its hardware key.
This creates the PortName value in the proper location for serial ports.
2018-09-22 14:43:43 +02:00
Eric Kohl
e32a2cc026 [NTOSKRNL] IoGetDeviceProperty: Add support for the DevicePropertyRemovalPolicy property.
This could probably fix CORE-15068.
2018-09-22 11:22:22 +02:00
Abdulganiev Rafael
2a6aa7770e [BTHCI] Add a bluetooth icon (#871)
[BTHCI] Add a bluetooth icon
2018-09-21 23:42:27 +02:00
Pierre Schweitzer
82a7f08363 [DWNL] Add French translation 2018-09-21 22:36:10 +02:00
Eric Kohl
e1b82b5b91 [NTOSKRNL] Create the 'Device Parameters' subkey and add the 'FirmwareIdentified' value for all ACPI-enumerated devices. 2018-09-21 15:37:34 +02:00
Eric Kohl
2550325577 [NTOSKRNL] Fix the indentation of some pnp manager functions. 2018-09-21 15:08:43 +02:00
Pierre Schweitzer
351ae6b2b4 [KMTESTS:CC] Add tests for CcCopyRead that reproduce CORE-15067
CORE-15067
2018-09-21 08:37:20 +02:00
Pierre Schweitzer
15a3ca08b0 [NTOSKRNL] Avoid integer overflow when computing VACB read/write size
This could be triggered when attempting to read/write to really big
files. It was causing an attempt to read 0 bytes in Cc, leading to
asserts failure in the kernel (and corrupted file).

CORE-15067
2018-09-21 08:37:20 +02:00
Joachim Henze
ef016bfe0a [WIN32K:NTUSER] Fix WIN32K BSOD mentioned in CORE-15027
Fixes accessing nullptr / invalid handle in Window->SystemMenu
I could trigger this occasionally when moving Opera 12.18 window
in front of Spotify 1.0.29.92 window.

Fix was:
authored by Thomas Faber (Thank you!)
tested by me
reviewed by James Tabor
2018-09-21 03:04:31 +02:00
Eric Kohl
f8f83d4d4d [BTHCI] Add a bluetooth class installer stub.
Now we really need a tango-compatible bluetooth icon!
2018-09-20 17:53:08 +02:00
Eric Kohl
1ac5f1ab89 [INF] Add german translation to the bluetooth class inf file. 2018-09-20 13:52:03 +02:00
Robert Naumann
3aeae65e08 [DWNL] forgot this file 2018-09-20 09:20:14 +02:00
Robert Naumann
abdd8bf2df [DWNL] German translation 2018-09-20 09:16:22 +02:00
Joachim Henze
2114a2fb5f [SCHEDSVC] Fix a typo in debug print that was introduced in 0.4.10-dev-544-g
0d13bb1015
2018-09-19 22:52:48 +02:00
Eric Kohl
5e2fe08918 [WLNOTIFY] Disable the Logoff-Handler routine for the scheduler service.
The Logoff-Handler might try to notify the scheduler service which might already have been shut down. We need to fix the shutdown sequence, so that the service manager stops all running services.

Might fix CORE-14521.
2018-09-19 16:35:12 +02:00
Eric Kohl
76588be0d1 [ADVAPI32][SERVICES] Use the session key provided by SystemFunction028 to encrypt and decrypt the service passwords. 2018-09-19 12:30:33 +02:00
Stanislav Motylkov
9f87785e96 [DWNL] Improve print date 2018-09-19 12:16:23 +02:00
Stanislav Motylkov
e283f4f72b [DWNL] Add russian translation 2018-09-19 12:16:23 +02:00
Eric Kohl
4114dcad46 [ADVAPI32] Implement SystemFunction028 to always return the default session key. 2018-09-19 00:20:11 +02:00
Lee Schroeder
08be1648f9 [DWNL] Localize the File Download utility (#853)
Also, changed header string to include a start time stamp similar to the one in wget.
CORE-14498
2018-09-18 23:55:44 +02:00
Pierre Schweitzer
108991a6fb [NTOSKRNL] Stub IoInitializeCrashDump()
Also call it from NtCreatePagingFile() when we have successfully created
a paging file on the system boot partition.
2018-09-18 21:59:59 +02:00
Eric Kohl
e5fcda922b [ADVAPI32][SERVICES] Pass encrypted passwords to the service manager.
- Encrypt passwords before passing them to the service manager. Right now, we are using a fixed encryption key. This will be fixed later.
- Replace the calls to ZeroMemory which are used to wipe the password buffers by calls to SecureZeroMemory.
2018-09-18 21:33:29 +02:00
Eric Kohl
da73c81259 [IDL][LSASRV] Improve the credentials interface a little and update the lsa server code accordingly. 2018-09-18 15:55:18 +02:00
Eric Kohl
47854962ac [ADVAPI32_WINETEST] Fix the STATUS issues 2018-09-18 00:24:36 +02:00
Eric Kohl
6c0d9c01e2 [ADVAPI32] SystemFunction004 and SystemFunction005 must return the required output buffer size via out->Length when the buffer is too small. 2018-09-17 23:19:02 +02:00
Eric Kohl
ffd1293f99 [ADVAPI32_WINETEST] Add tests for SystemFunction004 and SystemFunction005.
These tests show that the required output buffer size it returned in out.Length field when STATUS_BUFFER_TOO_SMALL is returned.

This patch will be sent upstream.
2018-09-17 23:12:16 +02:00
Eric Kohl
5e2c4657ca [ADVAPI32][SERVICES] Add (dummy) password encryption/decryption functions to CreateServiceA/W and ChangeServiceConfigA/W in order to prepare to pass encrypted passwords to the service manager 2018-09-17 16:34:48 +02:00
Hermès Bélusca-Maïto
a631e31c86 [RPCSS] During the setup phase, the RPCSS service, initially running under the LocalSystem account, should re-configure itself to run under the NetworkService account.
This will also fix MS Office 2010 installation, where the installation
expects the NetworkService account profile to be already loaded (this
condition is always verified on Windows since RPCSS and other services
also run under this account).

CORE-14988, CORE-14989
2018-09-17 01:23:03 +02:00
Hermès Bélusca-Maïto
9d43950db7 [SERVICES] Add basic support for setting lpServiceStartName via RChangeServiceConfigW(). 2018-09-17 01:22:59 +02:00
Hermès Bélusca-Maïto
a987856e71 [SERVICES] Minor code style fixes; replace wcslen(xxx) ==/!= 0 and strcpy(string, 'empty-string') calls. 2018-09-17 01:22:55 +02:00
Eric Kohl
47714b25a9 [NETAPI32] Add more DFS stubs 2018-09-16 21:11:16 +02:00
Bișoc George
29603e7291 [MSCONFIG_NEW] Small Romanian translation update 2018-09-16 19:55:46 +02:00
Bișoc George
577d5347f1 [CHARMAP_NEW] Update the E-mail header string 2018-09-16 19:55:46 +02:00
Extravert-ir
d0e29db1cb [FREELDR] Fix MSVC warnings C4146 (#863) 2018-09-16 16:14:07 +02:00
BieHDC
6458e12ffe [GITIGNORE] Ignore [boot|live|hybrid]cd_extras (#866)
Exclude [boot|live|hybrid]cd_extras from git as well since they are not part of the source code itself.
2018-09-16 16:05:15 +02:00
Pierre Schweitzer
8c5b0fbff3 [KERNEL32_VISTA] Make SleepConditionVariableSRW fail when it times out
This fixes a few newly added winetests.
2018-09-16 14:50:01 +02:00
Pierre Schweitzer
58853297dc [KERNEL32_VISTA] Make SleepConditionVariableCS fail when it times out
This fixes a few newly added winetests.
2018-09-16 14:42:43 +02:00
Pierre Schweitzer
d69a00e039 [KERNEL32_WINETEST] Enable ConditionVariable and SRW lock tests
If we cannot find the functions in kernel32, try to get them from
kernel32_vista. This will allow testing our own implementation, while
still failing in W2K3 (no implementation available).
2018-09-16 12:05:42 +02:00
Bernhard Feichtinger
9d1ee2400a [RAMDISK] Implement missing IOCTLs 2018-09-16 11:46:24 +02:00
Mark Jansen
12654d2852 [KERNEL32] Ensure the PebLock is always released in FlsFree 2018-09-15 17:56:03 +02:00
Mark Jansen
b6e3cf3c03 [KERNEL32_APITEST] Test FLS locking & exception behavior. 2018-09-15 17:56:03 +02:00
Mark Jansen
06eb99edef [NTDLL][KERNEL32] Implement FLS callbacks. 2018-09-15 17:56:03 +02:00
Mark Jansen
f0f8f1c7d9 [KERNEL32_APITEST] Add test exposing FLS internals. 2018-09-15 17:55:57 +02:00
Eric Kohl
e13ff1470e [DESK] Add MonitorClassInstaller 2018-09-15 14:11:04 +02:00
Pierre Schweitzer
71ac5e6c65 [SHELLBTRFS] Fix GCC build
CORE-15048
2018-09-15 10:54:00 +02:00
Thomas Faber
0f47f27829 [SHELLBTRFS] Add exports according to upstream .def file. CORE-15048 2018-09-15 09:43:31 +02:00
Pierre Schweitzer
f4da2bab03 [MPR] Import Wine commit: 93fb279f4f3e150eee329b02ca5fb0251d8a239d
Properly handle device-less connections.

CORE-15012
2018-09-14 22:34:02 +02:00
Stanislav Motylkov
13310b3acf [USETUP] Make countdown progress bar smoother 2018-09-14 11:33:50 +02:00
Stanislav Motylkov
b0ecee7b6e [USETUP] Update Russian translation 2018-09-14 11:33:50 +02:00
Stanislav Motylkov
8d6c519a95 [SYSDM.CPL] Fixup control positions after font metrics fix 2018-09-14 11:15:26 +02:00
Stanislav Motylkov
877dffa918 [DESK.CPL] Settings: Fixup control positions 2018-09-14 11:15:26 +02:00
Stanislav Motylkov
8df45999f2 [DESK.CPL] Screensaver: Fixup control positions 2018-09-14 11:15:26 +02:00
Stanislav Motylkov
36bebe7427 [DESK.CPL] Background: Fixup control positions after font metrics fix 2018-09-14 11:15:26 +02:00
Stanislav Motylkov
432788b59f [DESK.CPL] Appearance: Fixup control positions after font metrics fix
CORE-14274
2018-09-14 11:15:26 +02:00
Katayama Hirofumi MZ
31019e8c0c [TRANSLATION] Update Romanian translation (#851)
Translation from Stefan Fulea.
CORE-15023
2018-09-14 11:04:36 +02:00
Pierre Schweitzer
a06184a9a4 [WINLOGON] Fix build
Add a specific internal header for MPR and include it in WinLogon.

CORE-15012
2018-09-14 08:15:08 +02:00
Pierre Schweitzer
62f79fae93 [MPR] Import Wine commit: 0799550075654094a3bed080aac722b9bea01307
Implement WNetClearConnections().

CORE-15012
2018-09-14 08:08:57 +02:00
Stanislav Motylkov
bac15d86bb [FONT][WIN32SS] Check whether Win32Process is NULL
CORE-15031
2018-09-13 18:19:19 +02:00
Stanislav Motylkov
7cdbdadf34 [CMD] Do not overwrite input string on Ctrl+C (#852)
CORE-15029
2018-09-13 11:47:01 +02:00
Katayama Hirofumi MZ
2ccfe267a0 [FONT][WIN32SS] Add dumping functions for debugging 2018-09-12 21:58:09 +02:00
Mark Jansen
6b67ef6e10 [WIN32K] Realize PTEXTOBJ in FontGetObject if it was not initialized 2018-09-12 21:33:45 +02:00
Mark Jansen
0364c58b0d [FREETYPE] Mark an unhandled case as UNIMPLEMENTED
CORE-14948
2018-09-12 21:31:56 +02:00
Mark Jansen
8642654a00 [KERNEL32] Do not embed binary data inside a string resource.
CORE-14948
2018-09-12 21:31:55 +02:00
Mark Jansen
25d143dd20 [DBGHELP] Prevent crashing on a malformed PE file.
CORE-15030
2018-09-12 21:30:49 +02:00
Eric Kohl
ee4ee2fc1d [NETAPI32] Remove the obsolete file group.c 2018-09-12 17:53:49 +02:00
Eric Kohl
221cdeafe2 [NETAPI32] Rename ENUM_CONTEXT to GROUP_ENUM_CONEXT and fix a use of the wrong type 2018-09-12 17:38:18 +02:00
Eric Kohl
4d9425d123 [NETAPI32] Implement NetGroupSetUsers 2018-09-12 17:11:52 +02:00
Pierre Schweitzer
739fd481c1 [MAINTAINERS] Complete myself 2018-09-12 08:13:28 +02:00
Pierre Schweitzer
e516c2950b [MAINTAINERS] Define who can be maintainer and how to be added to the file 2018-09-12 08:13:28 +02:00
Mark Jansen
09bffcab1e [MAINTAINERS] Add myself.
Also add Pierre to ntdll
2018-09-12 08:13:28 +02:00
Thomas Faber
af4ae5e658 [MAINTAINERS] Add myself.
Also add Pierre to the kernel as a whole, at his request.
Also fix a typo in "Abandoned".
2018-09-12 08:13:28 +02:00
Pierre Schweitzer
a8ce91e716 Add a maintainers file 2018-09-12 08:13:28 +02:00
Eric Kohl
e0b5050089 [NETAPI32] Implement NetLogonGetTimeServiceParentDomain 2018-09-11 15:02:19 +02:00
Pierre Schweitzer
cbff9a3046 [WINLOGON] On logoff, also disconnect from any remote location
This avoids keeping connections open and reopening them as soon
as the user reopens their session.
This fixes network shared being duplicated each time session
is reopened.

CORE-15012
2018-09-11 08:30:31 +02:00
Pierre Schweitzer
6f5da265c8 [SDK] Add WNetClearConnections() in the headers for undocumented stuff
CORE-15012
2018-09-11 08:30:31 +02:00
Pierre Schweitzer
cf0112a6e6 [MPR] Implement WNetClearConnections()
This has been submitted upstream.

CORE-15012
2018-09-11 08:30:23 +02:00
Eric Kohl
74620c94d3 [NETAPI32] Implement NetGroupGetUsers 2018-09-10 22:05:49 +02:00
Joachim Henze
31c981c02a [FREETYPE] Fix Regression "Monospaced font in LibreOffice" CORE-15018
LibreOffice started to show GUI in a mono-spaced font after 0.4.10-dev-466-g
35f62fc5ba

We can fix this by partial revert
as proposed by Katayama Hirofumi MZ, who was author of those changes as well.
We revert the changes in penalty system here.
2018-09-10 17:51:59 +02:00
Amine Khaldi
3bf751e046 [USBEHCI_NEW] Bring-in the USB EHCI miniport driver created by Vadim Galyant. (#301) 2018-09-10 09:05:35 +02:00
Hermès Bélusca-Maïto
419e014675 [SERVICES] Only services starting under the LocalSystem account can run interactively. Otherwise ignore the interactive flag. 2018-09-09 23:24:08 +02:00
Hermès Bélusca-Maïto
cccf26da74 [SERVICES] Re-implement RChangeServiceConfigA() around RChangeServiceConfigW(), much as what is done for RCreateServiceA(). 2018-09-09 23:24:04 +02:00
Hermès Bélusca-Maïto
d6e577ced9 [SERVICES] RChangeServiceConfigW: Check valid usage of lpdwTagId when lpLoadOrderGroup is not specified. 2018-09-09 23:23:55 +02:00
Stanislav Motylkov
dcd4a3d000 [NET] Update Russian translation (#849) 2018-09-09 23:11:11 +02:00
Paweł Cholewa
8b37182613 [TRANSLATION] Updated Polish translation in USETUP (#848) 2018-09-09 22:28:02 +02:00
Bișoc George
402ea59af6 [USETUP] Italian translation update 2018-09-09 22:26:39 +02:00
Bișoc George
c1bf18bada [USETUP] Romanian translation update 2018-09-09 22:26:39 +02:00
Baruch Rutman
1fc041c91a [BIDITEXT] Add more demo code. (#842)
Add code that demonstrates the use of the lpOrder and lpCaretPos struct members of GCP_RESULTS w/ and  w/o GCP_REORDER flag.
Changed demo string literals to arrays containing character unicode values.
2018-09-09 18:03:48 +02:00
Baruch Rutman
ab5fdcc01f [LPK] Make GetCharacterPlacement caret positions respect bidi. (#842)
- Try to make use of ScriptStringCPtoX when trying to fill the lpCaretPos struct member;
  if USP10 error happens fallback to the unreorder method.
- Remove now incorrect debug print.
2018-09-09 18:03:45 +02:00
Katayama Hirofumi MZ
a244e4f6dd [WIN32SS][COMCTL32] Fix button text Y positioning (#766)
Fixes the vertical position of button text.
CORE-14906
2018-09-09 17:37:37 +02:00
Eric Kohl
2d645f62fe [NETAPI32] Implement NetGroupAddUser and NetGroupDelUser 2018-09-09 17:35:18 +02:00
Nguyễn Thanh Sơn
f47d0023b7 [SETUP][REACTOS] Added Vietnamese translation. (#716) 2018-09-09 17:34:21 +02:00
Hermès Bélusca-Maïto
320e0d01ae [USETUP] Update French translation. 2018-09-09 17:24:38 +02:00
Bișoc George
e5c0bfacf1 [USETUP] Implement the shutdown timeout progress bar. (#833)
- Add the MUI ID resource.
- Implement the shutdown timeout progress bar function and the TimeOut string handler.
- Add the resource string to other resource languages.
2018-09-09 17:17:16 +02:00
Pierre Schweitzer
02da7b452c [NTOSKRNL] Move data mapping implementation to an internel helper 2018-09-09 14:02:13 +02:00
Eric Kohl
df0137a169 [NETAPI32] Implement NetGroupSetInfo 2018-09-09 13:39:01 +02:00
Eric Kohl
c48d09d19a [NETAPI32] Implement NetGroupAdd and NetGroupDel 2018-09-09 11:52:44 +02:00
Vadim Galyant
3baf43c5de [USBHUB_NEW][USBPORT] Fix buffer size calculation for multi-sz values in IRP_MN_QUERY_ID.
Also fix some copypasta'd DPRINTs.
2018-09-09 11:24:48 +02:00
Eric Kohl
a9da3c50be [NETAPI] Implement NetGroupGetInfo 2018-09-09 09:40:11 +02:00
Eric Kohl
45beb1a523 [PSDK] Add missing struct _GROUP_INFO_3 to lmaccess.h 2018-09-08 22:21:15 +02:00
Eric Kohl
033146ca23 [NETAPI] Implement NetGroupEnum 2018-09-08 20:55:13 +02:00
Eric Kohl
0e69bc3bce [SAMSRV] Fix SamrQueryInformationGroup
- Use the registry value AdminComment for admin comments instead of Description. Fix SamrSetInformationGroup as well.
- Add some TRACEs.
- Do not fail if the Members value does not exist.
2018-09-08 19:24:13 +02:00
Pierre Schweitzer
c287bbe586 [KMTESTS:CC] Fix two failing tests on WHS bot 2018-09-08 15:21:01 +02:00
Eric Kohl
23a90aab5a [NET] Implement the group command 2018-09-08 14:18:36 +02:00
Thomas Faber
5e6810d5d2 [SDK] Make gen_baseaddress.py compatible with Python 3. 2018-09-08 11:11:08 +02:00
Thomas Faber
e400519cb5 [USBUHCI_NEW] Add license headers. 2018-09-08 10:16:02 +02:00
Thomas Faber
855df84fb2 [USBOHCI_NEW] Add license headers. 2018-09-08 10:15:52 +02:00
Pierre Schweitzer
7554829576 [DDK] Add NT6+ implementation for Rx*PrefixTableLock macros 2018-09-08 10:06:40 +02:00
Thomas Faber
d6d6b329be [USBOHCI_NEW][USBUHCI_NEW] Avoid unnecessary/incorrect status defines. 2018-09-08 08:45:18 +02:00
Serge Gautherie
7e95aebfda [KMTESTS:FLTMGR] Hide FltMgrLoad and FltMgrReg
And add "// TODO: WIP/untested/crashes."

ROSTESTS-299
2018-09-07 08:45:50 +01:00
Abdulganiev Rafael
25f4ed75a0 [CPL][DESK] Update monitor resource (#816)
[DESK.CPL] Update monitor resource
2018-09-07 08:43:36 +01:00
Pierre Schweitzer
000bbe074e [LIBTIRPC] Fix CVE-2018-14622 by backporting its fix
CORE-15005
2018-09-05 22:06:30 +02:00
Pierre Schweitzer
3dabca398f [NTOSKRNL] Don't raise a status when parameters are invalid on file mapping 2018-09-05 22:06:29 +02:00
Pierre Schweitzer
e17f61138c [NTOSKRNL] When allocating a new BCB, save it in a list
This list is stored in the shared map. Later, this will allow
reusing BCB when appropriate
2018-09-05 22:06:25 +02:00
Mark Jansen
ea5912e4d1 [SDK] Generate msvc baseaddresses from an RTC build 2018-09-05 21:38:26 +02:00
Serge Gautherie
cb072fd0fe [CMLIB] Fix compiling as NT6+ (#840)
Addendum to r70582 (734bc291).
CORE-12596
2018-09-05 20:18:14 +02:00
Eric Kohl
df053b7d16 [MSV1_0] LsaApLogonUser: Update the logon time/count and bad password time/count 2018-09-05 00:10:54 +02:00
Eric Kohl
97382dee46 [MSV1_0] Use the account expiration time and check account expiration on logon 2018-09-04 23:15:15 +02:00
Eric Kohl
e25cbeba2f [IDL] Implement parts of SamrSetInformationUser.UserInternal2Information 2018-09-04 22:42:49 +02:00
Eric Kohl
f5b3a10885 [IDL] Add some Flags SamrSetInformationUser.UserInternal2Information 2018-09-04 22:42:47 +02:00
Bișoc George
4208e7eed8 [FONTEXT] Add Italian translation (#831) 2018-09-04 22:02:44 +02:00
Bișoc George
773d6a536a [ACCESS] Fix some truncated strings in French resource (#838) 2018-09-03 14:14:57 +02:00
Eric Kohl
653a9be05b [SAMSRV] Implement SamrQueryInformationUser.UserInternal2Information 2018-09-02 17:54:26 +02:00
Stanislav Motylkov
c7415b3faa [MSGINA] Update russian translation (#834)
Addendum to 6f4d70b.
2018-09-02 15:59:33 +02:00
Eric Kohl
791f331d67 [IDL] Add the undocumented struct _SAMPR_USER_INTERNAL2_INFORMATION to sam.idl 2018-09-02 11:59:19 +02:00
Pierre Schweitzer
01c73317cc [KMTESTS:CC] Add tests showing our CcMapData/CcPinRead raise invalid status 2018-09-02 11:50:23 +02:00
Hermès Bélusca-Maïto
4d48b88bfb [WIN32K:NTUSER] co_UserDestroyWindow(): Simplify the destruction of the owned windows. 2018-09-01 23:46:21 +02:00
Hermès Bélusca-Maïto
e286c4c520 [WIN32K:NTUSER] Optimize IntWinListOwnedPopups() a little bit. Improve a trace. 2018-09-01 23:46:20 +02:00
Hermès Bélusca-Maïto
f644a50cd7 [WIN32K:NTUSER] Code formatting only. 2018-09-01 23:46:17 +02:00
Pierre Schweitzer
9ab21d67ae [KMTESTS:CC] Add tests for BCB extension 2018-09-01 21:52:39 +02:00
Pierre Schweitzer
04a192fa30 [KMTESTS:CC] Add more tests crossing CcPinRead and CcMapData 2018-09-01 21:27:24 +02:00
Eric Kohl
6f4d70b405 [MSGINA] Display the 'account expired' message when a user tries to log on using an expired account. 2018-09-01 21:10:42 +02:00
Thomas Faber
c188e387e3 [USBOHCI_NEW] Avoid storing pointers as ULONG and physical addresses as pointers. 2018-09-01 18:23:25 +02:00
Thomas Faber
0dfa7356c8 [USBHUB_NEW] Fix x64 warnings. 2018-09-01 18:23:14 +02:00
Amine Khaldi
a1a65e940a [USBUHCI_NEW] Bring-in the USB UHCI miniport driver created by Vadim Galyant. (#245) 2018-09-01 17:45:45 +02:00
Denis Malikov
69a040d275 [KERNEL32] fix spec file for -version=0x600+
CORE-12596
2018-09-01 17:21:21 +02:00
Hermès Bélusca-Maïto
9a11551a56 [GDI32_APITEST:GetTextFace] Replace tabs by spaces. 2018-09-01 17:18:03 +02:00
Doug Lyons
c74696c06d [GDI32_APITEST] Add tests for GetTextFaceAliasW(), based on Katayama Hirofumi MZ's tests from CORE-14926.
CORE-14995
2018-09-01 17:17:08 +02:00
Pierre Schweitzer
2bd33d58d8 [KERNEL32] Shhhh! 2018-09-01 15:46:44 +02:00
Pierre Schweitzer
b28f538d20 [KMTESTS:CC] Add tests for PIN_EXCLUSIVE 2018-09-01 15:22:41 +02:00
Pierre Schweitzer
38487d63d8 [KMTESTS:CC] Add a test for pinning without access 2018-09-01 12:41:02 +02:00
Pierre Schweitzer
f96f1224a7 [NTOSKRNL] Fail on pinning when there's no pin access set
Instead of assert, now, CcPinRead will just fail. This is
not consistent without Windows behavior, but still better
than asserting while testing!
2018-09-01 12:41:01 +02:00
Pierre Schweitzer
a4dc3c4963 [KMTESTS:CC] Add tests for PIN_IF_BCB flag 2018-09-01 12:41:01 +02:00
Pierre Schweitzer
6937fa8f41 [KMTESTS:CC] Duplicate tests for CcPinRead
To be extended.
2018-09-01 12:41:01 +02:00
Pierre Schweitzer
b0d1522886 [KMTESTS:CC] Add missing FsRtlEnter/ExitFileSystem() calls
Spotted by Thomas
2018-09-01 12:41:01 +02:00
Pierre Schweitzer
8f284f8a0c [KMTESTS:CC] That wasn't meant to be committed 2018-09-01 12:41:00 +02:00
Serge Gautherie
cbcfbc4322 [COMCTL32_WINETEST] treeview.c: Skip test_right_click()
until CORE-14975 is fixed upstream and WINESYNC.

CORE-14975
2018-09-01 09:22:45 +02:00
Pierre Schweitzer
5d04c691af [KMTESTS:CC] Add a test to show we map our buffers wrong in CC
That is expected (cf. CORE-14259)
2018-08-31 23:29:59 +02:00
Pierre Schweitzer
1b9b4c48c9 [KMTESTS:CC] Remove dummy leftover 2018-08-31 23:08:25 +02:00
Pierre Schweitzer
262e5bfef1 [KMTESTS:CC] Extended previous test to show an overlap is enough 2018-08-31 23:07:46 +02:00
Pierre Schweitzer
ad0c93b001 [KMTESTS:CC] Add a test that shows that our CC implementation duplicates BCB
It should instead reuse BCBs when mapping something already mapped.
2018-08-31 23:01:06 +02:00
Pierre Schweitzer
f0eb39084e [NTOSKRNL] Fix a typo 2018-08-31 19:48:32 +02:00
Pierre Schweitzer
e806d16b06 [NTOSKRNL] Warn about unimplemented feature in CcMapData() (in all callers)
Currently, our CcMapData() behavior (same goes for CcPinRead()) is broken
and is the total opposite of what Windows kernel does. By default, the later
will let you map a view in memory without even attempting to bring its
data in memory. On first access, there will be a fault and memory will
be read from the hardware and brought to memory. If you want to force read
on mapping/pinning, you have to set the MAP_NO_READ (or PIN_NO_READ) flag
where kernel will fault on your behalf (hence the need for MAP_WAIT/PIN_WAIT).

On ReactOS, by default, on mapping (and thus pinning), we will force a view
read so that data is in memory. The way our cache memory is managed at the
moment seems not to allow to fault on invalid access and if we don't force
read, the memory content will just be zeroed.
So trying to match Windows behavior, by default, now CcMapData() will enforce
the MAP_NO_READ flag and warn once about this behavior change.
2018-08-31 19:48:32 +02:00
Serge Gautherie
3f65f3a51d [KMTESTS] Re-enable kmtest_.exe installation (#389)
ExPools and other tests don't break Windows Server 2003 anymore.

Revert r73535, so KmTests run on "Test WHS" bot.

CORE-12657
2018-08-31 08:46:48 +02:00
Hermès Bélusca-Maïto
1383fb0514 [MODULES] Order the cmake inclusions alphabetically as we're used to everywhere else. 2018-08-30 22:54:49 +02:00
Hermès Bélusca-Maïto
cb979bb293 [REACTOS] Introduce a "DEBUGFORMAT" environment variable that allows to select different debug trace formats.
CORE-12671

- The default format is used when no format name is specified: this is
  the one we use so far in ReactOS:

    <debug_class>:(<file>:<line>) <message>

  with "debug_class" being "trace", "warn", "err".

- The "wine" format is the one used by Wine. It can be used when trying
  to diff-compare traces for a module with the corresponding one
  obtained from a Wine run. It can also be useful because the logging of
  Wine-synced code assumes that the function names are automatically
  added by the helper macros "FIXME()", "TRACE()", "WARN()" or "ERR()",
  and not manually inside the logging string given to these macros:
  for example:

    FIXME("(%params) message\n", params);

  displays:

    fixme:<module>:SomeFunc(params) message

- The "extended" (or "ext") format is very noisy and tries to output a
  lot of information; it is a hybrid of the previous two formats:

    <debug_class>:(<file>:<line>):<channel>:SomeFunc <message>

Support for displaying the current process ID is added in
addition to the already existing support for thread ID.
2018-08-30 22:42:50 +02:00
Katayama Hirofumi MZ
c8749d379b [WIN32SS][FONT] Fix GetTextFace function and related (#829)
Google Chrome with -no-sandbox parameter in ReactOS wouldn't display the web page because first-chance exception raised.
CORE-14926

- Remove FullName, Style, and FaceName members from TEXTOBJ structure.
- Add TextFace member into TEXTOBJ structure.
- Add MatchFontName() and MatchFontNames() helper functions.
- Fix GetTextFace() and related.
2018-08-30 14:34:03 +02:00
Katayama Hirofumi MZ
56583f3069 [FONT][SETUP] Add 'Tms Rmn' and 'Times' font substitutes (#830)
Add "Tms Rmn" and "Times" font substitutes (same as "Times New Roman"). Windows has these substitutes, hence we also need those to remain compatible.
2018-08-30 13:07:22 +02:00
David Quintana
823552d778 [CMAKE] Update baseaddress files to match latest changes. 2018-08-30 03:45:40 +02:00
Katayama Hirofumi MZ
33fc7bf316 [STORAHCI] Fix MSVC "uninitialized local variable" error (C4700) (#828)
See also PR #821.
2018-08-30 00:50:06 +02:00
Katayama Hirofumi MZ
6c3b7644ef [SDK] Duplicate English messages as Polish Messages (#826) 2018-08-30 00:46:02 +02:00
David Quintana
ae11022712 [MC] Fix VS2017 build. 2018-08-30 00:27:55 +02:00
Eric Kohl
4bbbc40820 [NET] Initialize a new users primary group ID in order to fix logon failures 2018-08-29 22:03:53 +02:00
Eric Kohl
60420c7218 [NET] Fix indentation 2018-08-29 18:56:24 +02:00
Pierre Schweitzer
6d7ec8c7ec [CDFS] Revert 9d0596a
The appropriate fix was the previous one, where the macro
for checking legal chars have been fixed.

Thanks to MS for their review :-).

CORE-14067
2018-08-29 08:34:30 +02:00
Pierre Schweitzer
a2f9762020 [SDK] Fix the implementation of the FsRtlIsAnsiCharacter* macros.
These macros should be implemented using the FsRtlTestAnsiCharacter() macro
that performs extended tests, especially for buffer overruns.
This fixes FsRtlIsAnsiCharacterWild(), FsRtlIsAnsiCharacterLegalFat(),
FsRtlIsAnsiCharacterLegalHpfs(), FsRtlIsAnsiCharacterLegalNtfs().

CORE-14067
2018-08-29 08:34:30 +02:00
Joachim Henze
e217e926e1 [SHELL32] Fix typo in comment 2018-08-28 14:24:49 +02:00
Katayama Hirofumi MZ
b0a1cb52be [TCPSVCS] Remove hardcoded C drive letter (#800)
CORE-13228, CORE-13235

For USETUP, add a comment about why the code uses it when adding a boot-sector boot entry to NTLDR. CORE-13226
2018-08-28 12:45:03 +02:00
Pierre Schweitzer
9d0596afe1 [CDFS] Properly check for legal names in CdIsLegalName()
Up to now, it was working by chance. Indeed, due to the invalid
ASCII check performed before calling FsRtlIsAnsiCharacterLegalHpfs(), the
macro is improperly called and overruns the FsRtlLegalAnsiCharacterArray
buffer. Fortunately, up to now, right after that buffer in kernel binary
there are strings which are more or less consistent with the flags that
are expected by the macro, causing a decent behavior of
FsRtlIsAnsiCharacterLegalHpfs() even for extended ASCII characters
(whereas FsRtlIsAnsiCharacterLegalHpfs() is only designed for ASCII
characters). But this is a totally out of control and wrong behavior.
A single change in the way the kernel was built could have caused the
CDFS driver not to work as previously.

I have made the choice to allow any extended ASCII character as done
for the unicode characters. This is a good compromise to avoid drastic
regressions for users having extended ASCII characters in their CD
file names.

This imports proposed upstream commit 1b6b625641dffb49951e60398e1a9c672318ea71
See pull request https://github.com/Microsoft/Windows-driver-samples/pull/278

CORE-14067
2018-08-28 07:50:58 +02:00
Hermès Bélusca-Maïto
cdb9f03236 [USETUP] Progress-bar: minor improvements.
- Simplify the usage of the PUPDATE_PROGRESS callback.

- Add the possibility of specifying an initial non-zero StepCount when
  creating the progress-bar (using the -Ex version), so that it can be
  initially drawn with the expected initial count.
  Of course ProgressSetStepCount() can continue to be used.
2018-08-27 23:55:58 +02:00
Mark Jansen
191dceb034 [LDR] Load kernel32 in LdrpInitializeProcess.
This allows kernel32 to register itself for manifest probing when loading dlls
CORE-9219
2018-08-27 20:05:00 +02:00
Mark Jansen
66e40be8eb [NTDLL_APITEST] Various small fixes
- Add a missing file
- Add convenience targets for MSVC_IDE
- Remove whitespace at the end of the lines
2018-08-27 20:05:00 +02:00
Mark Jansen
ffae49deaf [COMCTL32] Unregister some classes that were registered.
This should help fix some crashes.
2018-08-27 19:49:57 +02:00
LuRenJia
85bbd69cae [MAGNIFY] Fix the magnification ratio bug for CORE-14946 (#823)
This bug was caused by leaving the magnify window unrefreshed when updating the "Magnification Level" ComboBox.
CORE-14946
2018-08-27 14:36:28 +02:00
Katayama Hirofumi MZ
39dc3cdaf6 [SHELL32] Adjust the IDC_PICKICON_LIST control's height in the IDD_PICK_ICON dialog resource. (#824)
CORE-14974
2018-08-27 12:21:51 +02:00
Mark Jansen
19e9a44118 [SHELL32] Check the result from PathUnExpandEnvStringsW 2018-08-27 11:58:29 +02:00
Mark Jansen
608cb60e44 [SHELL32] Remove some mostly dead code from CShellLink 2018-08-27 11:58:24 +02:00
Katayama Hirofumi MZ
0a8ade5dd4 [SDK][CRT] Fix _ismbblead undefined error on MSVC 2018-08-27 11:09:28 +02:00
Hermès Bélusca-Maïto
d056eb05f2 [TIMEOUT] Fix a typo. 2018-08-27 00:28:10 +02:00
Hermès Bélusca-Maïto
6241a16f41 [USETUP] Implement a basic console 'input queue' and implement PeekConsoleInput() and CONSOLE_ConInKeyPeek() around it. 2018-08-27 00:28:08 +02:00
Eric Kohl
fc2b4bc7ea [LSASRV] LsapLogonUser creates an impersonation token for a network logon 2018-08-27 00:19:10 +02:00
Eric Kohl
a7b52d6a44 [SAMSRV] Simplify the initialization of the account expiration time 2018-08-27 00:12:44 +02:00
Eric Kohl
2fafcff3ef [SAMLIB] Add stubs for SamTestPrivateFunctionsDomain and SamTestPrivateFunctionsUser 2018-08-27 00:11:21 +02:00
Pierre Schweitzer
b8e4af606a [NTOSKRNL] Properly reset pinning state on pinning failure 2018-08-26 22:56:25 +02:00
Pierre Schweitzer
54f89baad4 [NTOSKRNL] When acquiring BCB shared, starve exclusive waiters 2018-08-26 22:47:48 +02:00
Pierre Schweitzer
c1dd4c142f [NTOSKRNL] Handle the PIN_WAIT flag in CcPinMappedData() 2018-08-26 22:05:11 +02:00
Pierre Schweitzer
469e15c7ae [NTOSKRNL] Stubplement CcPinMappedData() and simplify CcPinRead()
It's based on the code that was in CcPinRead() implementation. This
made no sense to have CcPinMappedData() doing nothing while implementing
everything in CcPinRead(). Indeed, drivers (starting with MS drivers)
can map data first and pin it afterwards with CcPinMappedData(). It was
leading to incorrect behavior with our previous noop implementation.
2018-08-26 22:05:11 +02:00
Eric Kohl
a9f2677782 [SAMSRV] Simplify the initialization of the account expiration date for new user accounts 2018-08-26 21:26:31 +02:00
Eric Kohl
dcc188e974 [NETAPI32] Add code to handle special values of the last logon time, last logoff time and account expiration time 2018-08-26 21:07:05 +02:00
Hermès Bélusca-Maïto
e9ba3a8ebc [USETUP] Progress-bar: Add support for displaying a custom progress text. 2018-08-26 20:41:57 +02:00
Hermès Bélusca-Maïto
3a33de0fb1 [USETUP] Progress-bar: Code formatting, add annotations, don't use floats. 2018-08-26 20:41:56 +02:00
Hermès Bélusca-Maïto
914769a14a [USETUP] DrawProgressBar(): Draw the progress bar borders first, then draw its contents. 2018-08-26 20:41:49 +02:00
Eric Kohl
8f63c209bc [NET] Set the proper account expiration time (TIMEQ_FOREVER) when a new user account is created 2018-08-26 20:27:20 +02:00
Katayama Hirofumi MZ
6eb6aa2895 [SHELL32] Fix CShellLink::GetIconLocation (#810)
Fixes a regression from PR #784.
CORE-14961, CORE-14009
2018-08-26 15:37:15 +02:00
Denis Malikov
0cf5efc14c [NTOS:KE] Fix stub for KeAcquireInStackQueuedSpinLockForDpc (#814)
Error was found when building as 0x600+.
CORE-12596
2018-08-26 15:19:26 +02:00
Eric Kohl
bf76e1bf20 [NET] Add a date parser for the expires option of the net user command 2018-08-26 00:13:14 +02:00
Eric Kohl
06e7233134 [NTOSKRNL] IopGetDeviceProperty: Initialize power data struct and convert flags from device capabilities to power data 2018-08-25 19:49:29 +02:00
Pierre Schweitzer
3f9f5f7080 [KMTESTS:FSRTL] Add tests for the FsRtlIsAnsiCharacter* macro
This covers: FsRtlIsAnsiCharacterWild, FsRtlIsAnsiCharacterLegalFat, FsRtlIsAnsiCharacterLegalHpfs,
FsRtlIsAnsiCharacterLegalNtfs, FsRtlIsAnsiCharacterLegalNtfsStream
2018-08-25 14:26:50 +02:00
Pierre Schweitzer
5c10b02957 [NTOSKRNL] Add the OLE flag where appropriate in FsRtlLegalAnsiCharacterArray
This brings in the ability to check NTFS streams names (OLE | NTFS).
This fixes failing tests from previous commit.
2018-08-25 14:26:49 +02:00
Pierre Schweitzer
fcbcdf7073 [KMTESTS:FSRTL] Add tests for FsRtlLegalAnsiCharacterArray
These are failing in ReactOS due to the lack of the OLE flag support.
2018-08-25 14:26:49 +02:00
Katayama Hirofumi MZ
bd9a4499a8 [WIN32SS][NTGDI] Extend PATH_FillPath as PATH_FillPathEx (#798)
The new PATH_FillPathEx function takes an additional PBRUSH parameter.
CORE-2527
2018-08-24 13:37:59 +02:00
Katayama Hirofumi MZ
0f308a0076 [FONTS] Improve Tahoma font (14px bitmap and ligatures) (#809)
Add 14-pixel height bitmap, and improve some ligatures (fi and fl).
CORE-12091
2018-08-24 12:38:35 +02:00
Baruch Rutman
e7d2bbe726 [WIN32SS][LPK] Add BiDi support to menus and window captions (#738)
Added callback function that redirects calls to GreExtTextOutW that didn't went through lpk BiDi processing, calls that are from the kernel.

Completely solves JIRA issue CORE-6910.
2018-08-23 19:43:12 +02:00
Hermès Bélusca-Maïto
b277cbdf22 [CONUTILS] In ConWrite(), emit an \r when a \n is encountered but not already preceded by \r.
And, don't emit \r\n when an \r alone is encountered.
This fixes the problem of extra newlines appearing when redirecting
"more" output to a file.

CORE-14592
2018-08-23 17:04:53 +02:00
Joachim Henze
78b6e43d22 [SDK] "0.4.11-dev" Starts here.
tag will be added in next commit.
2018-08-23 01:22:43 +02:00
Katayama Hirofumi MZ
b8e98c4e66 [NFSD] [TELNET] Remove the hardcoded directory paths C:\ReactOS
CORE-14747
2018-08-22 19:40:11 +02:00
Katayama Hirofumi MZ
86b915ef84 [TRANSLATION][ZIPFLDR] Add Japanese translation (#799)
CORE-14954
2018-08-22 14:26:53 +02:00
Serge Gautherie
ab243b82b4 [ADVAPI32_WINETEST] Restore service.c changes from 3c1b7834e1
This reverts commit a67df65c4f.
New failure was fixed by previous SERVICES commit.
Thus new timeout is avoided.

CORE-14521
2018-08-21 17:36:47 +02:00
Serge Gautherie
e3a1c2c81b [SERVICES] RChangeServiceConfig2A(): Zero-Initialize InfoW variable
This lets forward NULL Info.psd/Info.psd->lpDescription/Info.psfa,
instead of an uninitialized value.

CORE-14521
2018-08-21 17:36:46 +02:00
Baruch Rutman
8a407b5c60 [FONTS] Update Hebrew font subtitutions (#795)
Updated the font substitutions to use the new Hebrew glyphs in the updated Tahoma font.
Also added substitution for the Ubuntu font to make the Lautus and Modern themes legible with Hebrew UI elements.

Follow up to PR #789 and #790 ; CORE-14880, CORE-14943
2018-08-21 17:21:21 +02:00
Andreas Bjerkeholt
5a2a0314a1 [TRANSLATION][ZIPFLDR] Add Swedish translation (#794) 2018-08-21 16:57:01 +02:00
Bișoc George
ee6bc66318 [USETUP] Implement CreateProgressBarEx() (#791)
Improve the progress bar functions:
- Add a member in the struct, which will be used as a bar colour parameter for the new CreateProgressBarEx().
- CreateProgressBar() which will now invoke the Ex variant without the additional parameter.
2018-08-21 15:49:54 +02:00
Serge Gautherie
afe5ecb6b7 [CMAKE] MSVC_IDE: Enable 'unset(CMAKE_IMPORT_LIBRARY_SUFFIX)'
Resolve r67773 "# FIXME: Remove the MSVC_IDE condition when the upcoming RosBE lands.".
2018-08-21 15:39:35 +02:00
Katayama Hirofumi MZ
e58607eaba [FONTS] Add Hebrew vector glyphs to Tahoma Bold font (#790)
Bitmap glyphs are not added.
CORE-14943
2018-08-21 15:35:52 +02:00
Katayama Hirofumi MZ
b80171e5d3 [FONTS] Add Hebrew vector glyphs to Tahoma font (#789)
Bitmap glyphs are not added.
CORE-14943
2018-08-21 15:35:18 +02:00
Serge Gautherie
990e7dfd1a [MSHTML] Fix 3 MSVC warnings about HTML*Element_handle_event()
- "...\htmlanchor.c(769) : warning C4028: formal parameter 2 different from declaration"
- "...\htmlarea.c(427) : warning C4028: formal parameter 2 different from declaration"
- "...\htmlform.c(757) : warning C4028: formal parameter 2 different from declaration"

Cherry-pick Jacek Caban a660f673cb
CORE-7538
2018-08-21 14:33:52 +02:00
Hermès Bélusca-Maïto
3f892a8d6b [CMD] Add missing memory allocation NULL checks (#161). CORE-8304
Adapted from a patch by Jacob S. Preciado.

Bring also the code suggestions emitted during review.
2018-08-21 14:02:24 +02:00
Katayama Hirofumi MZ
73798d2e71 [SHELL32] Enable to change shortcut icon (#784)
CORE-11407
2018-08-21 13:49:32 +02:00
Robert Naumann
b3cfe88eda [BROWSEUI] Show Tooltip text for 'Go' Button
-Patch by Barret Karish CORE-11058
2018-08-21 12:49:04 +02:00
Pierre Schweitzer
c15c61275c Addendum to 45fd48b 2018-08-21 12:41:50 +02:00
Pierre Schweitzer
45fd48bd0f [CDFS_NEW] -> [CDFS] No old driver, thus no new driver 2018-08-21 12:32:15 +02:00
Pierre Schweitzer
5795254933 [CDFS] Delete the old CDFS driver.
You served us well!
2018-08-21 12:27:35 +02:00
Andreas Bjerkeholt
a4554c07b0 [ZIPFLDR] Enable / disable the correct wizard buttons 2018-08-21 12:06:41 +02:00
Timo Kreuzer
f43a7b81a7 [NTOS:Mm] Fix a 64 bit issue in MmMapViewOfArm3Section (#778)
Fixes a Clang-Cl warning
CORE-14306
2018-08-21 11:25:22 +02:00
Timo Kreuzer
d5181e44dd [NTOS] Fix MiFindInitializationCode (#751)
Short: The code was suffering from an off-by-one bug (inconsistency between inclusive end exclusive end address), which could lead to freeing one page above the initialization code. This led to freeing part of the kernel import section on x64. Now it is consistently using the aligned/exclusive end address.

Long:
* Initialization sections are freed both for the boot loaded images as well as for drivers that are loaded later. Obviously the second mechanism needs to be able to run at any time, so it is not initialization code itself. For some reason someone decided though, it would be a smart idea to implement the code twice, once for the boot loaded images, once for drivers and concluding that the former was initialization code itself and had to be freed.
* Since freeing the code that frees the initialization sections, while it is doing that is not possible, it uses a "smart trick", initially skipping that range, returning its start and end to the caller and have the caller free it afterwards.
* The code was using the end address in an inconsistent way, partly aligning it to the start of the following section, sometimes pointing to the last byte that should be freed. The function that freed each chunk was assuming the latter (i.e. that the end was included in the range) and thus freed the page that contained the end address. The end address for the range that was returned to the caller was aligned to the start of the next section, and the caller used it to free the range including the following page. On x64 this was the start of the import section of ntoskrnl. How that worked on x86 I don't even want to know.
2018-08-21 10:35:57 +02:00
Pierre Schweitzer
b5aa79a66d [FASTFAT] Drop an useless #ifdef, we have this cast in all other FSDs 2018-08-21 08:50:29 +02:00
Pierre Schweitzer
4bb1baa860 [FASTFAT] Finally drop the TAG_VFAT allocation tag 2018-08-21 08:36:51 +02:00
Mark Jansen
6c75215bb3 [BTRFS] Fix booting with runtime checks 2018-08-21 07:05:40 +02:00
Timo Kreuzer
e97b95cc2e [NTOS:MM] Fix ASSERT when expanding paged pool
The page directory is double mapped on x86 in the system process, so writing to it will already write to the PDE.
2018-08-20 23:52:42 +02:00
Timo Kreuzer
36051d3065 [SYSSETUP] Fix handling of the status message window
This fixes a race condition, where the message thread was still running when InstallReactOS returned and syssetup.dll was unloaded by the caller (setup.exe).
2018-08-20 22:10:04 +02:00
Pierre Schweitzer
85d4a49acd Add a quick statement about BtrFS :-) 2018-08-20 20:26:16 +02:00
Pierre Schweitzer
53985bf64d [FASTFAT] Disable delayed close
It brings too many regressions for too little gain.

CORE-14938
CORE-14917
CORE-14826
2018-08-20 19:43:43 +02:00
Serge Gautherie
2e7b73dc75 [MSHTML] Fix an MSVC warning about HTMLInputElementImpl_fire_event()
"...\htmlinput.c(1303) : warning C4028: formal parameter 2 different from declaration"

Temporary fix, until WINESYNC replaces this function.
CORE-7538
2018-08-20 19:06:00 +02:00
Timo Kreuzer
c219be9409 [NTOS:MM] Fix paged pool expansion 2018-08-20 18:07:35 +02:00
Adam Słaboń
af3d426685 [TRANSLATION] Polish translation update (#781)
In addition: fix the encoding of the comdlg32 and ntvdm polish resource files.
2018-08-20 17:00:33 +02:00
Katayama Hirofumi MZ
b8ea1b3416 [GDI32][APITESTS] Add GetGlyphOutline testcase (#776)
CORE-14928
2018-08-20 16:31:32 +02:00
Katayama Hirofumi MZ
932df378bf [BOOTDATA] Improve 'Open With' registry information (#586)
* use ""%1""
* double-quoted %1
* remove doubled quotes with rundll32
2018-08-20 16:14:18 +02:00
Jake Collins
72827bc514 [MODERN.MSSTYLES] Add the initial version of the modern theme.
CORE-13020
2018-08-20 15:06:53 +02:00
Victor Perevertkin
d0847939e4 [BTRFSTOOLS] Added python scripts for inspecting BTRFS filesystem
internals
2018-08-20 08:26:56 +02:00
Victor Perevertkin
0e61b570e7 [BTRFS] Applied upstream pull-requests before they are merged 2018-08-20 08:26:56 +02:00
Victor Perevertkin
3b69eee7a6 [FREELDR][BTRFS] Implemented BTRFS support in Free Loader. Now it supports case-insensitive path lookup, symlink folowing and reading uncompressed files.
Volume boot record is also implemented, it supports reading BTRFS tree structures with upto 64k node size.
This support required to change all path in Free Loader to lowercase for better performance.
CORE-13769
2018-08-20 08:26:56 +02:00
Victor Perevertkin
07bc92f740 [USETUP][SETUPLIB] Added support for formatting partition in BTRFS and installing ReactOS on it.
Removed code related to EXT2 boot sector for now.
CORE-13769
2018-08-20 08:26:56 +02:00
Eric Kohl
934104d73f [UMPNPMGR] Simplify PNP_GetDeviceRegProp 2018-08-20 00:55:03 +02:00
Eric Kohl
91fab9e53b [SETUPAPI] SetupDiGetDeviceRegistryPropertyW call CM_Get_DevNode_Registry_Property_ExW for properties that can not be retrieved from the registry 2018-08-20 00:16:18 +02:00
Katayama Hirofumi MZ
5daa7b07c8 [FONT][WIN32SS] Refactor the loop (1 of 5) 2018-08-19 23:08:38 +02:00
Katayama Hirofumi MZ
c4e0107765 [FONT][WIN32SS] Refactor the loop (2 of 5) 2018-08-19 23:07:37 +02:00
Katayama Hirofumi MZ
b9b4c90303 [FONT][WIN32SS] Refactor the loop (4 of 5) 2018-08-19 23:05:35 +02:00
Katayama Hirofumi MZ
7b04962aed [FONT][WIN32SS] Refactor the loop (5 of 5) 2018-08-19 23:05:04 +02:00
Katayama Hirofumi MZ
d641072cb2 [FONT][WIN32SS] Refactor the loop (3 of 5) 2018-08-19 23:03:13 +02:00
Timo Kreuzer
279d179ac4 [TRANSLATION] Polish translation of errcodes.mc (0-499) (#777) 2018-08-19 22:46:51 +02:00
Serge Gautherie
155bd681a0 [GDI32_APITEST] Remove broken EngDeleteSemaphore.c (#655)
- Checks are actually uses-after-free, "by design" :-<
- Actual test code duplicates EngCreateSemaphore.c, EngAcquireSemaphore.c and EngReleaseSemaphore.c.
2018-08-19 22:33:56 +02:00
Hermès Bélusca-Maïto
d0632b0bca [WIN32K:NTUSER] In UserSetProcessWindowStation(), use a duplicated window station handle to be set in the EPROCESS:Win32WindowStation cache.
Fixes most of the user32:desktop window station handle reference count tests.
2018-08-19 22:18:42 +02:00
Hermès Bélusca-Maïto
e3b9152935 [WIN32K:NTUSER] For processes that start without any window station and no desktops but manage these (e.g. winlogon.exe), assign their startup desktop when they assign a desktop to one of their threads. 2018-08-19 22:18:41 +02:00
Hermès Bélusca-Maïto
3270979327 [WIN32K:NTUSER] Add a temporary winsta/desktop-connection hack for CSRSS/USERSRV (connection to WinSta0).
Normally CSRSS must not be connected to any winsta or desktop by default. It should manually connect
to a winsta/desktop only when it has to do some GUI operations, and then disconnect afterwards.

[USERSRV] Temporarily hackfix the harderror dialog display to the current input desktop.
2018-08-19 22:18:40 +02:00
Hermès Bélusca-Maïto
fd39f92fcb [INCLUDE][WINLOGON] Rename the STARTF_SCRNSAVER flag to STARTF_SCREENSAVER,
as documented in "Advanced Windows NT" by Jeffrey M. Richter (Microsoft Press),
and in https://is.muni.cz/el/1433/jaro2010/PB167/um/cv5/undocumented_CreateProcess.pdf .

[INCLUDE][SERVICES][WIN32K:NTUSER] Add an undocumented STARTF_INHERITDESKTOP flag
for the STARTUPINFO::dwFlags structure member, whose purpose is to tell Win32k
that the created handles to the window station and desktop to which the
process is connecting to, can be inherited by its child processes.
It is used when starting interactive services.
Observed via API monitoring on Windows 2003.
2018-08-19 22:18:40 +02:00
Hermès Bélusca-Maïto
f3699c3838 [WIN32K:NTUSER] NtUserCloseDesktop(): Use ObCloseHandle instead. 2018-08-19 22:18:39 +02:00
Hermès Bélusca-Maïto
c697f191cf [WIN32K:NTUSER] Make NtUserResolveDesktop() and IntResolveDesktop() work in a more Win2k3-compatible manner.
CORE-11933 and PR #621.

Since this API is also called from WINSRV when calling the AllocConsole() API,
it can be tested more-or-less easily. The internal helper IntResolveDesktop()
is also tested during process connection to a window station, when such process
first calls a USER32 or GDI32 function.
This is also the functionality tested by the user32:desktop apitest.

- Adjust how IntResolveDesktop() is called.
2018-08-19 22:18:37 +02:00
Hermès Bélusca-Maïto
83104d9f00 [WIN32K:NTUSER] Code style fixes only. 2018-08-19 22:18:36 +02:00
Hermès Bélusca-Maïto
bc7810a97e [WIN32K:NTUSER] Rename some variables with more natural names. 2018-08-19 22:18:36 +02:00
Hermès Bélusca-Maïto
1abeb905c3 [WIN32K:NTUSER] Split NtUserCreateDesktop() into the part that captures the user-mode data and the internal worker IntCreateDesktop() function, which will also be used later. 2018-08-19 22:18:35 +02:00
Hermès Bélusca-Maïto
7bc2ddd669 [WIN32K:NTUSER] Fixes for NtUserCreateWindowStation(), IntCreateWindowStation() and NtUserOpenWindowStation().
CORE-11933 and PR #621.

We are potentially going to modify the window station name to be
created or opened, by one with the format "Service-0x<luidhigh>-<luidlow>$",
in case the user provides an empty name.
Since we want to use the user-mode ObjectAttributes structure pointer so
that the Object manager can correctly perform the access checks and the
capture, we actually need to construct the new window station name in the
user memory space! This allows us then to fetch the new name in the
ObjectAttributes structure so that Ob can use it.
All of this is performed under SEH.

For NtUserOpenWindowStation(), we also need to be Windows-compatible and
detect whether user-mode gave instead the special "Service-0x00000000-00000000$"
name (observed via API monitoring) that is used when one tries to open a
window station with empty name.
2018-08-19 22:18:35 +02:00
Hermès Bélusca-Maïto
26933a0965 [WIN32K:NTUSER] Similarly to what was done in USERSRV for harderrors, introduce the _scwprintf() helper function based on the imported _vscwprintf(). 2018-08-19 22:18:34 +02:00
Hermès Bélusca-Maïto
43e2ab208a [WIN32K:NTUSER] Get rid of the cached window station Name member, and instead just use the name stored in the NT Object's header.
CORE-11933 and PR #621.

- Remove the related hack-FIXMEs;
- Adjust NtUserGetObjectInformation() in accordance.
- Retrieve the window-station/desktop object type string in NtUserGetObjectInformation()
  also from the NT Object's header.

Also simplify the UOI_FLAGS case of NtUserGetObjectInformation() by reading
the handle inheritance information directly from the OBJECT_HANDLE_INFORMATION
structure returned by ObReferenceObjectByHandle().
2018-08-19 22:18:32 +02:00
Hermès Bélusca-Maïto
dae57caa36 [WIN32K:NTUSER] Detect when the NtUserCreateWindowStation() caller has provided an empty window station name, and if so, generate a name in the format: "Service-0x<luidhigh>-<luidlow>$" .
CORE-11933 and PR #621.
2018-08-19 22:18:32 +02:00
Hermès Bélusca-Maïto
ba018294d3 [WIN32K:NTUSER] Split NtUserCreateWindowStation() into the part that captures the user-mode data and the internal worker IntCreateWindowStation() function, which will also be used later.
Add a FIXME note about how we currently handle the window station name.
2018-08-19 22:18:31 +02:00
Hermès Bélusca-Maïto
f47afc3b61 [WIN32K:NTUSER] In UserCreateWinstaDirectory(), use a string-safe printf, and use OBJ_KERNEL_HANDLE as well as a suitable desired access value in a ZwCreateDirectoryObject() call. 2018-08-19 22:18:30 +02:00
Hermès Bélusca-Maïto
2345d63ce3 [WIN32K:NTUSER] Add an extra optional "Process" parameter to the GetProcessLuid() function to be used alternatively in place of "Thread" to retrieve the LUID. 2018-08-19 22:18:30 +02:00
Hermès Bélusca-Maïto
d77c493213 [WIN32K:NTUSER] Move the GetProcessLuid() function to the miscellaneous module. 2018-08-19 22:18:29 +02:00
Hermès Bélusca-Maïto
9c0564063d [USER32] Implement the special case in CreateWindowStationW() that, when no window station name is provided (either NULL or empty string), does not open any WindowStation directory handle to be passed to the Win32k function.
Observed via API monitoring.
This corresponds to the case where Win32k creates a window station whose name is based on the logon session identifier for the calling process.

Add also a note about the fact that we need to use a per-session-based WindowStation directory name, as done already in Win32k.

CORE-11933 and PR #621.
2018-08-19 22:18:22 +02:00
Andrew Cook
8cd5c4e7bd CORE-14513 [CMAKE] Remove modules that are shipped with cmake (#575)
* Remove unused cmake modules - Both are unedited versions of modules provided by cmake itself
* Remove Compiler/GNU.cmake - Only chang was various _INIT flags, which are handled
via CMAKE_USER_MAKE_RULES_OVERRIDE instead
* Remove Platform/Windows.cmake - There's no clear explination for this file being in reactos
and is simply an old version of the one in cmake
* Remove Platform/Windows-MSVC.cmake - _INIT variable changes moved to overrides-msvc.cmake
Remove /implib from link commands
* Remove CMakeDetermineASMCompiler.cmake - Only change from 3.2 is the addition of a compiler list for the generic ASM dialect, but toolchain files explicitly set a compiler so the list is never used
2018-08-19 22:01:31 +02:00
Bișoc George
2eb7ddd598 [OSK] Some enhancements for locales IT and RO (#416)
* Window element improvements for Italian and Romanian
2018-08-19 21:42:57 +02:00
Petr Akhlamov
05fbad174f [OSK] Rearrange window elements for ru-RU and en-US locales (#412)
* Resize osk window at RU and EN(US) languages
2018-08-19 21:40:58 +02:00
Pierre Schweitzer
e8611d3e65 [NETSHELL] Update French translation to reflect 0725098 2018-08-19 20:50:55 +02:00
Stanislav Motylkov
d033fe9bbf [NTOS:EX] Implement SystemFirmwareTableInformation class 2018-08-19 20:27:59 +02:00
Stanislav Motylkov
844483504b [KERNEL32] Implement system firmware functions properly 2018-08-19 20:27:59 +02:00
Stanislav Motylkov
b851d7e1d3 [KERNEL32_APITEST] Add SystemFirmwareTableInformation tests
Thanks goes to Mark Jansen for help!
2018-08-19 20:27:59 +02:00
Serge Gautherie
95fdc24157 [APPVEYOR] Add 'BuildType: vssolution'
Disabled by default, though ready to be enabled.
2018-08-19 20:03:14 +02:00
Denis Malikov
55368bacc8 [UPDATES] New stubs for Automatic Updates service and WUSA.exe. Presence of this modules required for installation by some NT6+ applications. 2018-08-19 19:56:18 +02:00
Paweł Cholewa
8569c905ca [SDK][Translation] Polish translation update (#495)
* Polish translation update in neteventmsg.mc
2018-08-19 19:47:26 +02:00
Serge Gautherie
8283a9ece2 [LOG2LINES] Enforce "Iso" type when unpacking the Iso file
Work around some "7z" dealing with files not named "*.iso" as "Cab" type.
Issue at least with "7-Zip [64]  9.20" on "Ubuntu 16.04".

CORE-14734
2018-08-19 17:39:15 +02:00
Mark Jansen
4b8f6d5eab [ATL_APITEST] Add test for CComQIPtr (or rather, our gcc hack that slightly looks like it) 2018-08-19 17:35:18 +02:00
Mark Jansen
69893ccf38 [ATL] Improve the order of operations in CComPtr and CComQIIDPtr 2018-08-19 17:35:18 +02:00
EUPHORIA-IT\m.jansen
bb5f8cfccb [WSHOM.OCX] Zero-initialize timeout and type if they are not set.
This should fix buildbot timeouts
2018-08-19 16:14:08 +02:00
Eric Kohl
a8cf35d0e4 [SYSSETUP] SetupStartService: Remove the wait loop
CORE-14909
2018-08-19 14:32:29 +02:00
Manuel Bachmann
71ab0b5d4c [NTDLL][NTUSER] Fix unselected text after WM_CBLOSTTEXTFOCUS
When we unselect text after the WM_CBLOSTTEXTFOCUS message,
make sure we also forget we have been focused at all;
otherwise the edit may become focused again, but with an
empty text selection.

CORE-10266
2018-08-19 14:24:34 +02:00
Thomas Faber
c97e9defc1 [WINED3D] Yield CPU to the scheduler in wined3d_pause. CORE-14637 CORE-14534
Much like the previous commit, this is a workaround for our buggy Win32k.
2018-08-19 13:46:08 +02:00
Thomas Faber
adfbefde2b [WINED3D] Avoid spinning in wined3d_cs_run. CORE-14534
Spinning here is supposed to improve performance by avoiding scheduling
overhead, but because ReactOS's Win32 subsystem does not deal with this well,
it causes the system to freeze on ROS.
As a workaround, we disable spinning and jump directly to the wait.

It should become obvious when this starts actually causing performance issues
again and it's time to undo.
2018-08-19 13:46:02 +02:00
Thomas Faber
9bffdcb6e7 [USER32] Log the text of message boxes to help figure out some test bot timeouts. 2018-08-19 12:02:24 +02:00
Pierre Schweitzer
c1ac347825 [CDROM] Set proper status on disk verify
This avoids an assert under certain conditions in CDFS.
Check cdrom_new for reference.

CORE-14873
2018-08-19 11:11:21 +02:00
Pierre Schweitzer
901c47ed14 [FASTFAT] Don't delay any other close once shutdown has started 2018-08-19 09:56:12 +02:00
Pierre Schweitzer
4fe7aafe10 [FASTFAT] Magic values-- 2018-08-19 09:56:12 +02:00
Eric Kohl
0d13bb1015 [SCHEDSVC] Add stubs for the wlnotify control codes 2018-08-18 22:23:22 +02:00
Eric Kohl
9a36ee8359 [WLNOTIFY] Use the wine debug method, add wlnotify to the build and fix some typos 2018-08-18 22:20:17 +02:00
Pierre Schweitzer
047479e0a2 [FASTFAT] Don't leak statistics on dismount 2018-08-18 19:03:30 +02:00
Pierre Schweitzer
639e6d635f [FASTFAT] Reduce the usage of the generic allocation tag
And use tag compatible with MS FastFAT, to use debug with WinDBG
2018-08-18 19:03:30 +02:00
Pierre Schweitzer
50b00f0fcc [FASTFAT] Implement delayed close
When we're about to close a file (ie, forget everything about it
and release any associated structure), actually delay it.
This allows keep data fresh in memory for faster reuse in case
it would be required. The effective closing will only happen after some time.

For specific operations, this will produce a real speed up in ReactOS.
For instance, with that patch, Winamp starts within seconds, instead of dozen
of minutes.
In most cases, it will bring ReactOS to performances it had before fixing
the huge leak in FastFAT (commit 94ead99) without leaking the whole FS.

For now, due to regressions, this is only activated for files and not
for directories. Once it gets fixed, it will be enabled for both.

CORE-14826
CORE-14917
2018-08-18 19:03:30 +02:00
Katayama Hirofumi MZ
b2d2e3433b [CLIPBRD] Clipbrd program should accept the quoted file path (#638) 2018-08-18 18:36:47 +02:00
Mark Jansen
cf56e1cb58 [GDIPLUS] Add sxs registration for 1.0 version.
Needed by by some applications with MSVCR90.dll
CORE-14695
2018-08-18 18:25:13 +02:00
Timo Kreuzer
81a9ce44e9 [FREELDR] Don't insert a driver into the BootDriver list twice (#755)
This happened for the livecd, where the cdfs driver was inserted twice - once since it is the driver for the boot device, and the 2nd time, because it was specified in the registry - which was then initialized twice by the kernel, leading to a name conflict when trying to create another device object, which resulted in the newly created device object to be dereferenced again and the driver unloaded. This can be seen from the debug message "(ntoskrnl\mm\ARM3\sysldr.c:955) Leaking driver: cdfs.sys"
2018-08-18 16:41:30 +02:00
Eric Kohl
df849213a2 [WLNOTIFY] Add SCard, Termsrv and Wlballon notifications and remove the test notifications 2018-08-18 16:18:36 +02:00
Katayama Hirofumi MZ
0725098c74 [NETSHELL] Fix the too long texts 2018-08-18 13:18:03 +02:00
Timo Kreuzer
6da93539a9 [FREELDR] Fix calculation of page lookup table (#761)
On x64 we only map 1GB of pages, so adjust MM_MAX_PAGE accordingly and also respect that value when searching for the best location of the page lookup table.
CORE-11048 #resolve
2018-08-18 12:16:33 +02:00
Timo Kreuzer
27c3a4d26a [USER32] Fix copying from WNDCLASS to WNDCLASSEX
This must be done field by field, since the alignment of the structures is different on _WIN64
2018-08-17 22:13:18 +02:00
Timo Kreuzer
094a90ad4e [NTOS:PS] Fix an issue with PROCESS_DEVICEMAP_INFORMATION size on 64 bit builds
The PROCESS_DEVICEMAP_INFORMATION  union has 2 fields, one is a handle, the other one is a structure of 36 bytes (independent of architecture). The handle forces 64 bit alignment on 64 bit builds, making the structure 4 bytes bigger than on 32 bit builds. The site is checked in NtQueryInformationProcess (case ProcessDeviceMap). The expected size on x64 is the size of the Query structure without alignment. autocheck correctly passes the site of the Query union member, while smss passes the full size of PROCESS_DEVICEMAP_INFORMATION. Packing the structure is not an option, since it is defined in public headers without packing. Using the original headers sizeof(PROCESS_DEVICEMAP_INFORMATION) is 0x28, sizeof(PROCESS_DEVICEMAP_INFORMATION::Query) is 0x24.
2018-08-17 22:08:37 +02:00
Hermès Bélusca-Maïto
36174f926b [USER32] Implement support for the MB_SERVICE_NOTIFICATION flag in the MessageBox*() APIs. 2018-08-17 21:50:09 +02:00
Hermès Bélusca-Maïto
c035f4648b [ROSTESTS] Add a test for the MB_SERVICE_NOTIFICATION flag of the MessageBox*() APIs. 2018-08-17 21:50:08 +02:00
Hermès Bélusca-Maïto
f8f08f3e9b [ROSTESTS] Rename the "softmodalmsgbox" test to "messagebox". 2018-08-17 21:50:07 +02:00
Timo Kreuzer
2c909db295 [NTOS:OB] Rename object types to their official names to satisfy WinDbg
- Rename ObDirectoryType to ObpDirectoryObjectType and remove it from NDK (this is not exported!)
- Rename ObSymbolicLinkType to ObpSymbolicLinkObjectType
- Remove duplicated ObpTypeObjectType from ob.h
2018-08-17 20:28:45 +02:00
Pierre Schweitzer
65f9783808 [NTOSKRNL] Properly initialize the IO_STATUS_BLOCK 2018-08-17 19:13:13 +02:00
Joachim Henze
abf9340f1b [SHELL32] Translation de-DE CORE-14916
fix control overlapping in IDD_FOLDER_OPTIONS_FILETYPES
(broke in 0.4.10-dev-24-ed1c6bb0060d06f4c0167d9c2d732f4dc2b4cce4)

and translate IDD_NEWEXTENSION, IDD_EDITTYPE, IDD_ACTION, IDD_FOLDER_CUSTOMIZE
2018-08-17 18:07:35 +02:00
Hermès Bélusca-Maïto
9b4673a3ca [USER32] Update file description. 2018-08-17 17:12:25 +02:00
Hermès Bélusca-Maïto
2be262bfb1 [USER32] Implement SoftModalMessageBox() based on the original MessageBoxTimeoutIndirectW().
Additional changes:

- Adapt the message-box dialog procedure to correctly take into account
  the presence or absence of a CANCEL button and take appropriate actions.

- Cache the strings retrieved by MB_GetString() (add FIXME notices too).
2018-08-17 17:12:24 +02:00
Hermès Bélusca-Maïto
5fedabbf0a [ROSTESTS] Add an interactive test for the user32.dll API SoftModalMessageBox(). 2018-08-17 17:12:23 +02:00
Hermès Bélusca-Maïto
4f7318b759 [USER32] Code refactoring for MessageBoxTimeoutIndirectW(), in preparation for SoftModalMessageBox() implementation.
- Remove usage of ButtonLen and ibtn-pointer arrays, to make the code
  more generic and less dependent on the (maximal) number of buttons
  in the message boxes.

- Move around the code that computes the positions and sizes of the
  window controls.
2018-08-17 17:12:22 +02:00
Hermès Bélusca-Maïto
e3fee2db82 [USER32] Get rid of the old MSGBOXINFO structure and use the new internal MSGBOXDATA structure instead. 2018-08-17 17:12:21 +02:00
Hermès Bélusca-Maïto
b55cf70340 [USER32] Code formatting only. 2018-08-17 17:12:21 +02:00
Hermès Bélusca-Maïto
cb77cc707f [USER32] Specify the font to be used for the message-box in its dialog template, using DS_SETFONT and a font point size of 0x7FFF, instead of passing a font handle and setting the font of each control manually.
Also improve the flags used in the DrawTextW() call for calculating
the size to be taken by the message-box text.
2018-08-17 17:12:20 +02:00
Hermès Bélusca-Maïto
ed1de7184c [SDK][UNDOCUSER] Add undocumented user32.dll SoftModalMessageBox() definition and its structure MSGBOXDATA.
Documented on http://www.vbforums.com/showthread.php?840593-Message-Box-with-Four-Buttons
and augmented from my own testings.

In addition, add also MessageBoxTimeoutA/W() and MB_GetString().
2018-08-17 17:12:20 +02:00
Hermès Bélusca-Maïto
7bfd6858fb [PSDK] Add IDCANCEL and IDASYNC values (returned by MessageBoxTimeout() and WTSSendMessage() functions). 2018-08-17 17:12:19 +02:00
Hermès Bélusca-Maïto
fcfcf7a5c9 [USER32] Move related functions close to each other. 2018-08-17 17:12:19 +02:00
Hermès Bélusca-Maïto
5e4b3c7cf0 [USER32] Code formatting/indentation fixes only. 2018-08-17 17:12:15 +02:00
Oleksandr Shaposhnikov
729d6e7981 [CONFIGURE] Fix tabulation issue 2018-08-17 17:45:07 +03:00
Serge Gautherie
669d6b445b [SHELL32_WINETEST] Fix 2 MSVC warnings about flags
- "...\ebrowser.c(1188) : warning C4133: 'function' : incompatible types - from 'DWORD *' to 'EXPLORER_BROWSER_OPTIONS *'"
- "...\ebrowser.c(1198) : warning C4133: 'function' : incompatible types - from 'DWORD *' to 'EXPLORER_BROWSER_OPTIONS *'"

Cherry-pick 535f2f9e66
CORE-7538
2018-08-17 16:21:30 +02:00
Serge Gautherie
2ad650469e [OLEAUT32] Fix an MSVC warning about VarCyMul()
"...\vartype.c(3808) : warning C4028: formal parameter 2 different from declaration"

Mininal cherry-pick Alexandre Julliard 18f7ec3670
CORE-7538
2018-08-17 16:18:41 +02:00
Katayama Hirofumi MZ
bd2ab1e9bc [FONT][WIN32SS] Ignore identical mapping in IntLoadFontSubstList 2018-08-17 16:05:04 +02:00
Serge Gautherie
2ee150c374 [REACTOS] Warn if not using RosBE custom CMake
Better be explicit immediately, than fail later without a clue.

Thanks to Yuntian Zhang for initial code, adapted by me.

CORE-14607
2018-08-17 14:03:59 +02:00
Pierre Schweitzer
12e8d7fe0e [NTOSKRNL] Only allow page file on a few specific device types 2018-08-16 19:00:22 +02:00
Pierre Schweitzer
cc59c97308 [NTOSKRNL] Don't need all access for file object 2018-08-16 18:54:23 +02:00
Pierre Schweitzer
8281f4baa6 [NTOSKRNL] Add a check commented out for now.
It's to be enabled once page file handling is moved to ARM3
2018-08-16 18:49:55 +02:00
Pierre Schweitzer
7f0ad923d2 [NTOSKRNL] MmTotalCommitLimit and MmTotalCommitLimitMaximum are in pages, not bytes 2018-08-16 18:40:23 +02:00
Oleksandr Shaposhnikov
c8d51bb87a [CONFIGURE] Added support for new VS 19.15.x 2018-08-16 18:13:54 +03:00
Timo Kreuzer
dd73d1b6d4 [NTOS:MM] Make SLIST handling for kernel stacks portable
Kernel stacks that re freed, can be placed on an SLIST for quick reuse. The old code was using a member of the PFN of the last stack page as the SLIST_ENTRY. This relies on the following (non-portable) assumptions:
- A stack always has a PTE associated with it.
- This PTE has a PFN associated with it.
- The PFN has an empty field that can be re-used as an SLIST_ENTRY.
- The PFN has another field that points back to the PTE, which then can be used to get the stack base.

Specifically: On x64 the PFN field is not 16 bytes aligned, so it cannot be used as an SLIST_ENTRY. (In a "usermode kernel" the other assumptions are also invalid).

The new code does what Windows does (and which seems absolutely obvious to do): Place the SLIST_ENTRY directly on the stack.
2018-08-16 16:52:02 +02:00
Timo Kreuzer
6c154c0625 [NTOS:SE] Fix SeSetSecurityDescriptorInfoEx to prevent pool corruption on x64 2018-08-16 16:32:49 +02:00
Getequ
d559ca9c98 [ADVAPI32][SHELL32][DESK.CPL] Kill copy-paste of RegLoadMUIString. (#748)
RegLoadMUIStringW/A is part of advapi32.dll . shell32.dll and desk.cpl contained exact line-by-line copy of that function.
2018-08-16 16:10:41 +02:00
Serge Gautherie
20d4b2cfac [NTOS:MM] Update a DPRINT string (#760)
CORE-12729
2018-08-16 15:10:24 +02:00
Katayama Hirofumi MZ
5b89e663af [FONT][WIN32SS] Support MS symbol encoding (#759)
This commit adds support for the MS symbol encoding (FT_ENCODING_MS_SYMBOL) in our font engine.
It also fixes the display of the Anastasia font. And replacing our Marlett font with Windows' Marlett font is also fixed.

CORE-13269, CORE-14907
2018-08-16 14:38:46 +02:00
Thomas Faber
5403094339 [USBPORT] Fix 64 bit warnings. 2018-08-16 14:14:42 +02:00
Thomas Faber
bd4529b717 [USBPORT] Specify the correct length for the root hub's hub descriptor. 2018-08-16 14:14:31 +02:00
Thomas Faber
db54e5eb1c [USBPORT] Remove an unnecessary check in USBPORT_AllocateBandwidthUSB2. CID 1434261 2018-08-16 14:14:23 +02:00
Thomas Faber
7ad4cf96f3 [USBPORT] Remove an unnecessary check in USB2_ConvertFrame. CID 1434244 2018-08-16 14:14:15 +02:00
Thomas Faber
d1e5699e60 [USBPORT] Accept negative BusTime in USB2_MoveTtEndpoint. CID 1434226 2018-08-16 14:14:04 +02:00
Thomas Faber
7b2bb85ceb [WIN32K:NTUSER] Fix type confusion in MsgMemorySize. 2018-08-16 14:13:47 +02:00
Pierre Schweitzer
19318dcc1d [NTOSKRNL] Start making our MMPAGING_FILE struct look like the real one 2018-08-16 14:04:27 +02:00
Pierre Schweitzer
e392bdf962 [NTOSKRNL] Store page file sizes in pages, not in bytes 2018-08-16 13:50:16 +02:00
Pierre Schweitzer
2fe4e71383 [NTOSKRNL] Store page file minimum size and use it to prevent page file shrinking 2018-08-16 13:41:16 +02:00
Pierre Schweitzer
bfc6a7957c [NTOSKRNL] Page files don't have an init size, but a minimum size
NFC
2018-08-16 12:42:34 +02:00
Pierre Schweitzer
315867d4ff [NTOSKRNL] Drop the MmPagingFile spin lock in favor of a guarded mutex 2018-08-16 12:39:24 +02:00
Pierre Schweitzer
891a6eeeb9 [NTOSKRNL] Drop the alloc map from page file
It was making no sense, and implemented in a broken way
that couldn't have worked if code path was used.
2018-08-16 12:16:39 +02:00
Pierre Schweitzer
5bd938bd24 [NTOSKRNL] Stub page file extension support 2018-08-16 11:58:58 +02:00
Katayama Hirofumi MZ
11b7619a71 [WIN32SS] Fix DrawText wrt DT_CALCRECT | DT_VCENTER (#745)
The test program: https://jira.reactos.org/secure/attachment/47925/TnB3.zip
CORE-14896
2018-08-15 19:50:19 +02:00
Stanislav Motylkov
68a4cdd5ec [SYSDM] Use single string control for system version 2018-08-15 19:30:23 +02:00
Katayama Hirofumi MZ
6d9f89f813 [SYSSETUP] Fix the button sizes of theme selection dialog (#746)
CORE-14896
2018-08-15 18:32:17 +02:00
Mike Swanson
3c7e9bb332 Remove unnecessary executable bits 2018-08-15 18:29:09 +02:00
Denis Malikov
9e198799d4 [WIN32SS][USER] fixing couple typos for WINVER >= 0x600
CORE-12596
2018-08-15 18:27:31 +02:00
Pierre Schweitzer
c13ccc92f6 [BTRFS] Leak the root stream file object on mount.
For whatever (unknown) reason yet, this stream file object
seems to be deleted when still in use while installing
ReactOS on BtrFS partition, leading to use after free.

So, quick and dirty hack: leak it to prevent deletion.

CORE-13769
2018-08-15 16:38:56 +02:00
Pierre Schweitzer
80e11516b1 [BTRFS] Allow driver to start at first stage when no hive is present.
Contrary to upstream, we will ignore failure when opening registry
and will keep going.

CORE-13769
2018-08-15 16:35:05 +02:00
Mark Jansen
13a3cf03d7 [APPHELP_APITEST] Fix rc dependency.
As pointed out by Thomas.
2018-08-13 13:24:12 +02:00
Mark Jansen
9b6fb9f2f8 [RTL][KERNEL32] Add a comment indicating we need SEH in RtlImageNtHeaderEx
CORE-14532
CORE-14857
2018-08-13 13:24:12 +02:00
Mark Jansen
ad08c6631b [LDR] Guard some sections where we grab a lock.
CORE-14532
2018-08-13 13:24:12 +02:00
Mark Jansen
86fe412d5c [NTDLL_APITEST] Show behavior with exceptions in DllMain.
CORE-14532
2018-08-13 13:24:12 +02:00
Mark Jansen
55053f0099 [LDR] Add debug logging when we encountered an exception in dll/tls callbacks.
CORE-14532
2018-08-13 13:24:12 +02:00
Mark Jansen
dfff8ed0d8 [LDR] Protect calls from LdrpCallInitRoutine and LdrpCallTlsInitializers with SEH.
CORE-14532
2018-08-13 13:24:00 +02:00
Pierre Schweitzer
1ea68d0510 [NTOSKRNL] Don't use anonymus allocations for MM objects 2018-08-13 08:30:17 +02:00
Pierre Schweitzer
34e8f45122 [NTOSKRNL] Keep page file name along the page file and free it on shutdown 2018-08-13 08:30:17 +02:00
Pierre Schweitzer
5aaadf39db [NTOSKRNL] Dereference page file objects in MM shutdown phase 1
Hack the call the MM shutdown phase  1
2018-08-13 08:30:17 +02:00
Pierre Schweitzer
3814a822f1 [NTOSKRNL] Close page files (and delete them!) on shutdown 2018-08-13 08:30:17 +02:00
Pierre Schweitzer
d793f196df [NTOSKRNL] Stub MM shutdown 2018-08-13 08:30:17 +02:00
Eric Kohl
9d26058a8e [UMPNPMGR] Partially implement ReenumerateDeviceInstance which is needed by the Lenovo T400 network driver installer 2018-08-12 22:26:22 +02:00
Stanislav Motylkov
a91df23308 [SYSTEMINFO] Fix various bugs and add SMBIOS support 2018-08-12 21:18:31 +02:00
Katayama Hirofumi MZ
35f62fc5ba [WIN32SS][FONT] Fix font metrics (#713)
Fix vertical alignment and Aspect penalty; improve font penalty system; fixes for Wine tests.
This is an update of #706. See CORE-11536 for more details.

The display of the following programs is fixed:
- Total Commander 8.52 setup: font displayed too large - CORE-11620.
- Effective File Search 6.8.1 german localization text rendering issues - CORE-14378.
- Font garbage in register splash screen in Foxit Reader 7.1.5 - CORE-9767.
- Calipers-1 is not displayed correctly - CORE-14302.
- Some MSI-installers draw their dialogs too large (example: Click-N-Type Virtual Keyboard 3.03.0412) - CORE-13161.
- Irfanview 4.50: font in zoom combobox displayed too large - CORE-14396.
- Rufus: The window and controls are displayed larger than necessary - CORE-14461.
2018-08-12 15:12:13 +02:00
Eric Kohl
956086d369 [NETAPI32] Add DFS RPC interface and some DFS stubs 2018-08-12 14:31:07 +02:00
Stanislav Motylkov
6ac04ad787 [DXDIAG] Fix wrapped controls in russian translation 2018-08-12 14:21:56 +02:00
Stanislav Motylkov
a03d1860f2 [DXDIAG] Minor code style fixes 2018-08-12 14:21:56 +02:00
Stanislav Motylkov
50b0332438 [DXDIAG] Fix blank system and BIOS values
CORE-5961 #resolve
2018-08-12 14:21:56 +02:00
Stanislav Motylkov
4259aab7b0 [SDK] Add user-mode DMI/SMBIOS helper library
CORE-5961
2018-08-12 14:21:56 +02:00
Katayama Hirofumi MZ
22e86add33 [MSPAINT] Fix interpretation of command line (#707) 2018-08-12 11:23:16 +02:00
Pierre Schweitzer
c79e5dc476 [KMTESTS:MM] Properly clean up files
This fixes driver unloading on Windows.

ROSTESTS-266
2018-08-12 10:05:25 +02:00
Pierre Schweitzer
02b0ca08e4 [NTOSKRNL] Misc fixes:
- Rename page file struct to MMPAGING_FILE
- Increment page files count after current page file was put in the list
2018-08-11 23:34:08 +02:00
Pierre Schweitzer
f106c297de [NTOSKRNL] Rename PagingFileList to MmPagingFile and make insertion simpler 2018-08-11 23:19:58 +02:00
Pierre Schweitzer
47cd447cfa [NTOSKRNL] Remove useless define 2018-08-11 23:07:53 +02:00
Pierre Schweitzer
f080ee1305 [NTOSKRNL] Replace the alloc map by a bitmap 2018-08-11 23:01:12 +02:00
Pierre Schweitzer
fb07332450 [NTOSKRNL] Drop unused field 2018-08-11 23:01:11 +02:00
Pierre Schweitzer
814a6fc098 [NTOSKRNL] Revert r4668 (yeah, that was 15y ago)
It's hardly understandable and doesn't really makes sense.
Furthermore, it breaks compatibility with 3rd party FSD that
don't implement such FSCTL.
Obviously, Windows doesn't do this.
2018-08-11 23:01:11 +02:00
Pierre Schweitzer
28b4b419c2 [NTOSKRNL] Restrict rights on the page file 2018-08-11 23:01:11 +02:00
Pierre Schweitzer
36c20dc56b [NTOSKRNL] Deny page file creation on floppy disk 2018-08-11 23:01:11 +02:00
Pierre Schweitzer
2969c28a27 [NTOSKRNL] Properly open a page file and set appropriate attributes 2018-08-11 23:01:11 +02:00
Pierre Schweitzer
0ad4ef6002 [NTOSKRNL] Check that caller has appropriate right before creating page file 2018-08-11 23:01:05 +02:00
Eric Kohl
2bbac12427 [DLLHOST] Add dllhost to make the device driver extractor for my Lenovo T400 happy 2018-08-11 22:25:30 +02:00
Katayama Hirofumi MZ
cbfe4d023b [WIN32SS][FONT] Fix the system logical stock font data (#709)
This fixes the stock font data to improve font selection.
CORE-14885
2018-08-10 15:37:37 +02:00
Katayama Hirofumi MZ
db13b422b3 [SHELL32] Fix a careless mistake of ShellExecCmdLine (#737)
CORE-14886
2018-08-10 13:25:50 +02:00
Katayama Hirofumi MZ
83891d2843 [CONSRV] Implement support for file/directory drag-and-drop (#692).
CORE-14833
2018-08-09 14:08:05 +02:00
Serge Gautherie
7d6bda16c6 [REACTOS] Improve how some ASSERTMSG() message values are printed: enforce ending "\n".
NB: Not touching calls in "third-party" code: class and classpnp.
2018-08-08 22:03:45 +02:00
Serge Gautherie
fb48381cb4 [CMLIB] Simplify an ASSERTMSG() as an ASSERT(). 2018-08-08 21:45:46 +02:00
Hermès Bélusca-Maïto
d53991895d [BOOTLIB] Fix the implementation of RtlAssert() ('Message' can be NULL, and fix the printing of ANSI string). Fix also the implementation of DbgPrint(). 2018-08-08 21:37:22 +02:00
Serge Gautherie
97d3b3ce33 [REACTOS] RtlAssert(): use "%lu" as LineNumber format. 2018-08-08 21:24:07 +02:00
Hermès Bélusca-Maïto
1a89a3e731 [CONSRV] Minor code re-organization. 2018-08-08 20:46:41 +02:00
Hermès Bélusca-Maïto
a9064d3283 [CONSRV] Add a PasteText() helper function and use it. 2018-08-08 20:46:34 +02:00
Thomas Faber
1ed0f9ab57 [HAL] Remove misleading debug prints about USB controllers. 2018-08-08 20:08:38 +02:00
Hermès Bélusca-Maïto
65f47728c0 [CMD] Small translation update. 2018-08-08 17:43:09 +02:00
Bișoc George
3c131c2393 [TRANSLATION][WMIC] Add Italian translation 2018-08-08 12:55:10 +02:00
Eric Kohl
fb5d5ecd64 [WLNOTIFY] Add sens service stubs 2018-08-07 22:56:33 +02:00
Serge Gautherie
9ff9bd81c4 [NTOSKRNL] Round memory size up, "debug log" part
Assumed to better match actual physical RAM size.

CORE-12321
2018-08-07 20:36:04 +02:00
Jared Smudde
092c3710f2 [BOOTDATA] Change the default open command for HTA files to open in Wine Internet Explorer. (#719)
It's a shortcut from implementing the function in mshtml but it works.
Also add an edit option to the right click menu.
2018-08-07 13:22:03 +02:00
Hermès Bélusca-Maïto
23b36fc173 [CMD] Add speed-optimized checks for dot-directories "." and ".." .
Adapted from PR #592 by Katayama Hirofumi MZ.
2018-08-06 22:40:17 +02:00
Hermès Bélusca-Maïto
17ebc8421a [CMD] Fix the way the DIR-command pattern is interpreted when it contains paths or filenames with trailing dots.
Particular DIR commands like: "DIR .", "DIR .." now work as expected,
and we also correctly fix the behavior for files without extension,
that r38746 (2b06cfc0) originally tried to fix but broke the previous
examples.
Therefore "DIR *." and "DIR noextfile." work too.

Pathological cases like "DIR \...", "DIR \...\.", "DIR ..\...\.." and
the like (and with more than 3 dots) now work as expected.

Adapted from PR #592 by Katayama Hirofumi MZ, but with extended bugfixing.

CORE-13961
2018-08-06 22:40:17 +02:00
Hermès Bélusca-Maïto
c57d49d0c1 [CMD] Code formatting; use LPCTSTR where possible; use a MAX_PATH sized dircmd buffer. 2018-08-06 22:40:17 +02:00
Katayama Hirofumi MZ
12517aa309 [CMD] Create a DirNodeCleanup() helper for cleanup and simplify code (adapted from PR #592). 2018-08-06 22:40:16 +02:00
Hermès Bélusca-Maïto
06504ee4be [CMD] Fix French translation. 2018-08-06 22:40:12 +02:00
Mark Jansen
b2b1c054e4 [NTOSKRNL] Fix a nullptr dereference in IopStartDevice 2018-08-06 20:51:21 +02:00
Hermès Bélusca-Maïto
10c5bfb8fe [WINLOGON] Hack-fix for CORE-14877 ; see commit bcec1fd6. 2018-08-06 17:38:00 +02:00
Hermès Bélusca-Maïto
40000a1716 [WINLOGON][MSGINA] Fix typo. 2018-08-06 17:37:38 +02:00
Eric Kohl
8f911f21b8 [SYSSETUP] SetupStartService: Wait until the service is running 2018-08-05 20:02:22 +02:00
Eric Kohl
5ebcc6cdc1 [ADVAPI32] Add parameter checks to LogonUserExW and initialize the token handle. 2018-08-05 16:16:53 +02:00
Eric Kohl
b4040ea740 [NETAPI32] Implement I_NetServerSetServiceBits() 2018-08-05 15:57:03 +02:00
Eric Kohl
89f6e701d4 [NETAPI32] Add annotations and move NetUseGetInfo to a better location. 2018-08-05 15:36:48 +02:00
Eric Kohl
0a5ccac599 [SRVSVC] Set and retrieve service bits and rename unknown functions
- Service bits are set by NetrServerSetServiceBits and can be retrieved by NetrServerGetInfo.
- The real name of function 42 is NetrServerSetServiceBitsEx and the real name of function 47 is NetrDfsSetServerInfo.
2018-08-05 15:05:19 +02:00
Katayama Hirofumi MZ
bfcbda227f [SHELL32] Fix handling of multiple parameters in the 'Run' dialog (#665)
The "Run" dialog failed when multiple parameters wee specified.
We use instead a newly-created ShellExecCmdLine() helper function to fix the problem (as found via API-tracing on Windows).
Note that ShellExecCmdLine() starts to be exported with Vista+.

- Implement ShellExecCmdLine() function in shell32.
- Add URL support.
- Fix RunDlgProc function in shell32.
- Add a testcase for ShellExecCmdLine() function.

CORE-14790
2018-08-05 13:39:17 +02:00
Thomas Faber
ff63ef3c55 [MSCONFIG] Fix buffer overflow when handling long service command lines. 2018-08-05 12:58:35 +02:00
Mark Jansen
572976bb14 [ZIPFLDR] Add 'Extract All' to individual item context menu. 2018-08-05 11:54:56 +02:00
Mark Jansen
875e58d781 [ZIPFLDR] Add 'Extract All' menu item to the folder context menu. 2018-08-05 11:54:56 +02:00
Mark Jansen
09719d25c4 [ATL] Fix the CComQIIDPtr template. 2018-08-05 11:54:56 +02:00
Mark Jansen
eb324b6a9c [ZIPFLDR] Implement RouteTheCall, so that applications can 'launch' zip files 2018-08-05 11:54:56 +02:00
Denis Malikov
4ea570975c [HAL] Add NT6-compatible version of HalpMapPhysicalMemory64 and HalpUnmapVirtualAddress 2018-08-05 10:14:57 +02:00
Eric Kohl
4e32ad3623 [LSASRV] Implement and call the policy change notification routine 2018-08-05 01:05:52 +02:00
Eric Kohl
620217cec9 [LSASRV][SECUR32] Implement LsaRegisterPolicyChangeNotification and LsaUnregisterPolicyChangeNotification 2018-08-04 22:17:52 +02:00
Timo Kreuzer
cf77354dce [REACTOS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
0f8439aa71 [DLLS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
6f13066647 [APPLICATIONS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
807331436e [MVDM] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
3323d117c3 [WINSRV] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
2a5e2a2ab6 [REACTX] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
e59d7a5687 [APPHELP] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
52ea7d39db [SHELL32] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
e9ad66d52f [USER32] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
7ad5f405cb [GDI32] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
4f0a158a2f [KERNEL32] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
9e066abe2a [DRIVERS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
f8bf0e9c3a [UNIATA] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
c1944118ca [USBPORT] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
ff7cc6f37e [NTOS] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
6dcf3c29e0 [FREELDR] Fix 64 bit issues 2018-08-04 19:19:34 +02:00
Timo Kreuzer
7cf7b27a3a [ROSTESTS] Fix 64 bit issues 2018-08-04 14:39:13 +02:00
Timo Kreuzer
a265dc9ce1 [KMTESTS] Fix 64 bit issues 2018-08-04 14:39:13 +02:00
Julio Carchi
d7559e2354 [TRANSLATIONS] Fix spanish translations for some resources (#725)
Setup wizard
Network settings wizard
Input CPL
Open file dialogs
Devmgr
Explorer
2018-08-03 15:08:13 +02:00
Bișoc George
adc2e99690 [TRANSLATION][TASKKILL] Add Italian translation (#717) 2018-08-03 12:12:29 +02:00
Nguyễn Thanh Sơn
1ad27c73be [MSPAINT] Added Vietnamese translation. (#722) 2018-08-03 12:10:16 +02:00
Bișoc George
dd4cc2c2ff [INPUT] Fix a truncated text 2018-08-03 12:08:41 +02:00
Stanislav Motylkov
0854c69a75 [I8042PRT] Move DMI/SMBIOS parsing functions into library 2018-08-02 21:29:57 +02:00
Stanislav Motylkov
d956eafda8 [KERNEL32] Implement System Firmware functions
- Implement EnumSystemFirmwareTables
- Implement GetSystemFirmwareTable

These functions currently using registry workaround and can be improved later.

CORE-12105
2018-08-02 21:15:28 +02:00
Stanislav Motylkov
8acc68dd98 [KERNEL32_APITEST] Add SystemFirmware tests
CORE-12105
2018-08-02 21:15:28 +02:00
Stanislav Motylkov
a9f20984cd [I8042PRT] Dump SMBIOS tables into registry for usermode access
Reference:
https://social.msdn.microsoft.com/Forums/en-US/0bb0840e-85f4-4cdb-9710-7581f7348f2f/how-to-get-motherboard-serial-number-without-using-wmi-in-c

CORE-12105 CORE-14867
2018-08-02 21:15:28 +02:00
Jared Smudde
4ceea74919 [USRMGR] Disable the Extra tab. It serves no purpose. (#700) 2018-08-01 22:15:27 +02:00
Julio Carchi
d3045af9d5 [TRANSLATIONS] Fix some Spanish translations (#715)
Also added some new ones.
2018-07-31 10:58:21 +02:00
Phil Eaton
b5c1aa4129 [RAPPS] Deselect apps after installing
I found it unintuitive that each time I selected some software for installation, it wasn't automatically deselected after installation. I kept re-triggering the same installation a few times before I realized I had to manually uncheck the checked packages.
2018-07-30 15:01:22 +03:00
Eric Kohl
bf1e655172 [ADVAPI32] Stop the service dispatcher thread only if a SERVICE_CONTROL_STOP command was sent 2018-07-29 23:40:36 +02:00
Hermès Bélusca-Maïto
74adcadbd0 [SHELL32] Silence a noisy DPRINT. 2018-07-29 17:39:09 +02:00
Hermès Bélusca-Maïto
3b6faba11a [AUTOCHK] Improvements: code + command-line handling.
- Add support for the following command-line arguments: /k, /p (and a little bit
  of /r), and add support for checking a particular volume.
  A description of these arguments can be found at:
  "Description of Enhanced Chkdsk, Autochk, and Chkntfs Tools in Windows 2000",
  https://web.archive.org/web/20150215210228/http://support.microsoft.com:80/kb/218461

- Slightly improve some messages.

- Get rid of legacy OpenDirectory() and simplify GetFileSystem().
2018-07-29 16:21:09 +02:00
Hermès Bélusca-Maïto
472d1d2f64 [AUTOCHK] Improve the timeout countdown prompt by displaying the actual remaining seconds before the disk check.
Make also keyboard availability optional.
2018-07-29 16:21:08 +02:00
Hermès Bélusca-Maïto
4225172506 [AUTOCHK] Minor code formatting; reduce indentation level of some blocks; use RTL_NUMBER_OF() macro; normalize file header. 2018-07-29 16:21:07 +02:00
Hermès Bélusca-Maïto
8dbe62b294 [EXPLORER] Improve debug output. 2018-07-29 16:21:06 +02:00
Katayama Hirofumi MZ
994a5f457f [WIN32SS][FREETYPE] Update copyright text 2018-07-29 15:23:58 +02:00
Pierre Schweitzer
cf3b9d5b56 [NTOSKNRL] Only allocate a MDL if we have an output length
For user mode, when probing output buffer, if it's null, length
will also be set to 0.

This avoids user mode applications being able to trigger various
asserts in ReactOS (and thus BSOD when no debugger is plugged ;-)).
2018-07-29 13:58:30 +02:00
Katayama Hirofumi MZ
30830ca963 [WIN32SS] Add 5 members to FONTGDI structure 2018-07-29 13:11:48 +02:00
Katayama Hirofumi MZ
5e1a099cd1 [WIN32SS][FONT] Change the type of 2nd argument of IntRequestFontSize 2018-07-29 13:11:18 +02:00
Eric Kohl
24cd7bbe0b [RPCRT4] Update the support for remote pipes which was dropped by the sync to Wine Staging 2.9 and update rpcrt4_ros.diff accordingly 2018-07-29 07:30:43 +02:00
Serge Gautherie
8f440355da [ROSDDT] do_update_base(): Fix assignment to f (#702)
Thanks to "devpao" for reporting this.

ROSAPPS-343
2018-07-27 21:54:12 +02:00
Serge Gautherie
d69d401325 [MAN] AnalyzeArgv(): Fix 2 overruns related to element (#703)
- Also use _countof().
- Also add braces.
- Also enforce consistent "no spaces" style.

Thanks to "devpao" for pointing to this function.

ROSAPPS-344
2018-07-27 21:53:50 +02:00
Baruch Rutman
65a5a989c5 [LPK] Changes (#622).
- Changed how the ScriptIsComplex check is made to account direction, most noticeble on dxdiag,
  https://docs.microsoft.com/en-us/windows/desktop/api/usp10/nf-usp10-scriptiscomplex
  However commented out the ScriptIsComplex flag change because of a bug.

- Added a check and debug print if BIDI_Reorder fails.
2018-07-27 00:47:48 +02:00
Baruch Rutman
e054a053ff [LPK] Added more error handling code (#622).
- Added a codepath if both glyphs and reordered_str arrays are NULL.
- Move variables back to the beginning of function.

CORE-14732
2018-07-27 00:47:28 +02:00
Baruch Rutman
7fe6a14ede [LPK] Diverse fixes (#622).
- Changed wcspy to strsafe function.
- Use GetCharWidthI instead of GetCharWidth32W if dealing with glyph indices.
2018-07-27 00:47:14 +02:00
Baruch Rutman
33d3e56cf4 [LPK] Refactoring (#622).
- Moved lpDx and lpGlyphs operations to seperate brackets.
- lpGlyphs == NULL checks + memory managment additions.

CORE-14732
2018-07-27 00:46:02 +02:00
Katayama Hirofumi MZ
bfc6b719cf [USER32][WIN32SS] Implement TileWindows function (#678)
CORE-14815
2018-07-26 14:34:00 +02:00
David Knapp
7bbb6bd4b5 [AUTOCHK] Improve readability of messages 2018-07-26 07:28:42 +02:00
Mark Jansen
e6ea0bcbbf [KMTESTS] Add compile time asserts for IO_STACK_LOCATION offsets
CORE-14782
2018-07-25 20:22:36 +02:00
Mark Jansen
370ffd1123 [XDK][NDK] Restore struct alignment for IO_STACK_LOCATION
CORE-14782
2018-07-25 20:22:36 +02:00
Jared Smudde
1f2f03dd76 [EXPLORER] Fix creation of shortcuts in the start menu. 2018-07-25 00:57:58 +02:00
Alisson Lauffer
7572ff067b Update README.md with the latest release 2018-07-24 07:29:06 +02:00
Eric Kohl
66981e1b07 [SERVICES] Keep a global service bits variable that combines the service bits of all running services 2018-07-23 01:48:49 +02:00
Hermès Bélusca-Maïto
2158f31b71 [KERNEL32] Use RtlStringCbCopyNW() to correctly fill the WIN32_FIND_DATA.cFileName and cAlternateFileName members without any overflow and with a terminating NULL character. 2018-07-22 21:32:38 +02:00
Hermès Bélusca-Maïto
b003d68ca5 [WIN32SS:NTUSER] Update SetWindowStationUser() and NtUserSetWindowStationUser() prototypes.
Also, improve NtUserSetWindowStationUser() capture order, make psid optional as it should (and avoid a user-mode triggered BSOD), and initialize luidUser only when everything succeeded.
2018-07-22 19:26:53 +02:00
Hermès Bélusca-Maïto
9bf7fb6f42 [WIN32SS:USER] Code formatting only. 2018-07-22 19:26:50 +02:00
Hermès Bélusca-Maïto
e90316aeaa [USER32_APITEST] Add few other tests (validation of the desktop path string); improve the output of some messages, displaying the expected values in case of test failure.
See also PR #621.
2018-07-22 19:03:17 +02:00
Hermès Bélusca-Maïto
67adf7ab78 [ROSTESTS] Add an interactive test for window stations. See also PR #621. 2018-07-22 19:03:17 +02:00
Hermès Bélusca-Maïto
02eee253b2 [WINLOGON] Allow WinSta0 access only when needed. Also, reset the WinSta0 user as soon as we have logged-off. 2018-07-22 19:03:17 +02:00
Mark Jansen
9c48edb58c [LDR] Release the loader lock the same way it was acquired 2018-07-22 17:17:36 +02:00
Eric Kohl
91a5ee334d [SERVICES] Add a checks for vaild info level to RChangeServiceConfig2A/W and RQueryServiceConfig2A/W
CORE-14837
2018-07-22 12:45:23 +02:00
Eric Kohl
add1be24a7 [NET] Add the workstations option to the user command 2018-07-21 22:13:49 +02:00
Hermès Bélusca-Maïto
bcec1fd6c3 [WINLOGON] When starting Setup (which runs with SYSTEM credentials), explicitly specify on which window station and desktop we start it, so as to avoid the default choice of the non-interactive Service-0x0-3e7$ window station.
Also, switch to the WinSta0\Default desktop just only before starting Setup, and restore Winlogon setup when it finishes.
2018-07-17 01:59:51 +02:00
Hermès Bélusca-Maïto
b1c7fd08e9 [PSDK] Fix a typo. Has also been caught independently by George Bișoc (#686). 2018-07-17 01:59:51 +02:00
Victor Perevertkin
2ae1675208 [ASM] Fixed ".double" macro in asm.inc.
GAS uses ".double" symbol for declaring floating-point constants and
".quad" symbol for declaring 64-bit numbers.
This is not compatible with our macro for MASM and introduces bugs.
Now 64-bit constants are supposed to be declared using ".quad" macro.
2018-07-15 23:25:23 +02:00
Eric Kohl
4ffa0a2e55 [NTOSKRNL][NDK][UMPNPMGR] Define and use PLUGPLAY_CONTROL_PROPERTY_DATA.Properties values
NDK: Define PLUGPLAY_CONTROL_PROPERTY_DATA.Properties and PLUGPLAY_CONTROL_DEVICE_RELATIONS_DATA.Relations values.

NTOSKRNL: Map PLUGPLAY_CONTROL_PROPERTY_DATA.Properties values to IoGetDeviceProperty properties and add (dummy) code for unsupported cases.

UMPNPMGR: Use PLUGPLAY_CONTROL_PROPERTY_DATA.Properties values in PNP_GetDeviceRegProp.
2018-07-15 15:57:57 +02:00
Pierre Schweitzer
0075c2a02d [NTOSKRNL] Be noisy when deferring writes. 2018-07-15 09:57:16 +02:00
Timo Kreuzer
82b2aef091 [PSDK] Add SymTagENum to dbghelp.h and imagehlp.h 2018-07-14 15:48:23 +02:00
Serge Gautherie
246005c625 [WINDOWSCODECS] Fix an MSVC warning about get_decoder_info() (#684)
"...\info.c(2163) : warning C4028: formal parameter 1 different from declaration"

Cherry-pick 90518ebd2c
CORE-7538
2018-07-14 02:50:23 +02:00
Katayama Hirofumi MZ
42353ecbad [USER32][WIN32SS] Fix display of owned popup windows (#683)
An owned popup window should be hidden when its owner window was minimized.
- Add IntWinListOwnedPopups function.
- Fix ShowWindow and ShowOwnedPopups functions.

CORE-14818
See also: CORE-3326, CORE-12252, CORE-13168, and CORE-14824.
2018-07-13 16:03:45 +02:00
Katayama Hirofumi MZ
75b09f3f88 [EXPLORER][SHELL32][USER32] Implement 'Show the Desktop' action of Task Bar (#668)
The keyboard shortcuts Win+D and Win+M are also enabled.

- Implement IShellDispatch4::ToggleDesktop().
- Implement some commands in CTrayWindow.
- Add "sdk/include/reactos/traycmd.h" for tray commands.
- Fix task window switching.
- Improve the user32!SwitchToThisWindow() function and use it.

CORE-14318, CORE-13157
See also: CORE-14806 and CORE-8723
2018-07-13 10:34:42 +02:00
Katayama Hirofumi MZ
706a1c5132 [CMD] "del /s directory" command doesn't show the directories or files names in the confirmation message (#680)
CORE-14059
2018-07-13 01:47:45 +02:00
Mark Jansen
80bac79070 [CMAKE] Update all base addresses, taking into account the reserved user32 address from CORE-12752
CORE-11382
2018-07-12 21:55:21 +02:00
Mark Jansen
6b92dd7323 [SDK] Update gen_baseaddress.py for reserved base addresses.
CORE-11382
2018-07-12 21:55:21 +02:00
Julio Carchi
5943bbb8b4 [TRANSLATIONS][DISPLAY] Translate to spanish some strings on the display (#667)
CORE-14767
2018-07-12 17:48:57 +02:00
Katayama Hirofumi MZ
e018ccea4b [SHELL32] lpDirectory must have priority in ShellExecuteEx (#681)
Based on a patch by Mark Jansen.
CORE-14469
2018-07-12 17:45:43 +02:00
Bișoc George
5a637150f0 [TRANSLATION][CLIP] Implement Italian translation (#682) 2018-07-12 17:41:20 +02:00
Katayama Hirofumi MZ
cc3ba6e41c [USER32][WIN32SS] Improve CascadeWindows function (#677)
If the window is too large, then shrink it if possible.
CORE-14807
2018-07-09 14:52:30 +02:00
Eric Kohl
506bd64e44 [NET] Revert useless changes 2018-07-09 05:56:41 +02:00
Eric Kohl
b4969dc0d7 [NET] Implement the undocumented /RANDOM option to generate random passwords 2018-07-09 05:56:40 +02:00
Katayama Hirofumi MZ
4e45a91547 [USER32][WIN32SS] Implement CascadeWindows function (#676)
CORE-14807
2018-07-09 01:51:14 +02:00
Katayama Hirofumi MZ
55469633cf [SHELL32] Add 'Properties' menu item in My Computer (#647)
- Add a Shell_DefaultContextMenuCallBack() helper function.
- Implement the IContextMenuCB interface in CDrivesFolder.
CORE-12509
2018-07-08 17:01:12 +02:00
Katayama Hirofumi MZ
96c0ef4209 [SHELL32] Improve CShellLink a little (#651)
Improve the display and UI in the shortcut dialog.
CORE-11407
2018-07-08 16:45:40 +02:00
Katayama Hirofumi MZ
33a65d45aa [APPWIZ] Add support for creating internet shortcuts (#664)
CORE-8737
2018-07-08 16:40:14 +02:00
Katayama Hirofumi MZ
58825de892 [EXPLORER] Fix TrackCtxMenu about NULL ppt (#666)
CORE-14772
2018-07-08 16:36:28 +02:00
Katayama Hirofumi MZ
a882ec7a02 [SHELL32][EXPLORER] Update system-wide environment variables (#663)
- Implement shell32 RegenerateUserEnvironment() function and use it.
- CShellBrowser and CDesktopBrowser implements WM_SETTINGCHANGE actions.

CORE-1459, CORE-14397
2018-07-08 16:32:42 +02:00
Hermès Bélusca-Maïto
25004bb5b4 [WIN32K:NTUSER] Remove the hackish code that has been introduced in IntSendChildNCPaint() in r73532 (6d7fcc4b) to attempt to pseudo-fix CORE-12071 and CORE-12085 while breaking other stuff, amongst which CORE-14763 is one of the latest manifestations, and re-enable the correct original code.
This fixes painting hangs under diverse situations, while CORE-12071 and
CORE-12085 remain fixed.
2018-07-08 15:39:50 +02:00
Hermès Bélusca-Maïto
ee0511b49d [WIN32K:NTUSER] Add diagnostic asserts in IntLinkWindow() and IntUnlinkWindow(). Don't link a window to itself in IntLinkWindow()! Add diagnostic traces for this situation, as well as in IntLinkHwnd().
Helps in correctly fixing CORE-12071 and CORE-12085.
2018-07-08 15:39:50 +02:00
Hermès Bélusca-Maïto
4d057cf626 [WIN32K:NTUSER] Formatting only! 2018-07-08 15:39:48 +02:00
Timo Kreuzer
9cab5b549d [ROSAPPS] Fix 64 bit issues 2018-07-08 10:59:16 +02:00
Hermès Bélusca-Maïto
c7022c1b0c [KERNEL32] Use NULL for pointers. 2018-07-07 18:58:03 +02:00
Timo Kreuzer
3a85d2764c [BLUE] Use ByteOffset.QuadPrt instead of ByteOffset.LowPart 2018-07-07 16:15:58 +02:00
Timo Kreuzer
741c3c0022 [BLUE] Reformat and add missing success checks + DPRINTs on failure 2018-07-07 16:15:58 +02:00
Timo Kreuzer
64f46045af [BLUE] Formatting, no code change 2018-07-07 16:15:58 +02:00
Mark Jansen
3904fd6257 [SHELL32] Ensure OpenAs_RunDLL does not loop to infinity and beyond.
This should fix a timeout on the apitests.
2018-07-06 21:51:24 +02:00
Paweł Cholewa
ed4eb9c7c3 [TRANSLATION][TIMEOUT] Created Polish translation of timeout 2018-07-02 14:02:23 +02:00
Paweł Cholewa
a13890cd35 [TRANSLATION][WHOAMI] Add Polish translation (#653) 2018-07-01 23:20:57 +02:00
Mark Jansen
5a9dc5e791 [SDK] Add gen_baseaddress.py
This tool was already used to calculate the last baseaddress update.
It is based on baseaddress.sh that has been floating around.
CORE-11382
2018-07-01 20:17:46 +02:00
Mark Jansen
a3ddb8a4c2 [CMAKE] Change winspool.drv to winspool again.
CORE-14781
2018-07-01 19:21:59 +02:00
Mark Jansen
8fb0c5a0ab [CMAKE] Update baseaddress for gcc with dwarf.
CORE-14781
2018-07-01 18:21:12 +02:00
Eric Kohl
aad801914b [LICCPA] Fix translation and align dialog controls 2018-07-01 17:28:29 +02:00
Eric Kohl
2fdb4d99c7 [LICCPA] Make the License Manager GUI build and make it visible (again)
- Add the missing CMakeLists.txt file.
- Comment-out an unused variable.
- Make WM_INITDIALOG return TRUE, so that the dialog gets visible.
2018-07-01 17:28:28 +02:00
Paweł Cholewa
73194a8ea9 [TRANSLATION][TREE] Polish translation of tree utility (#654) 2018-07-01 16:04:14 +02:00
Mark Jansen
82351bc6d4 [CMAKE] Update baseaddress for msvc & gcc with rossym.
CORE-14781
2018-07-01 15:35:57 +02:00
Timo Kreuzer
e39876dab7 [SDK] Fix 64 bit issues 2018-07-01 14:45:21 +02:00
Timo Kreuzer
ae9e9eaef3 [NDK] Fix definition of MSR_DEBUG_CTL_LBR and MSR_DEBUG_CTL_BTF 2018-07-01 14:45:21 +02:00
Timo Kreuzer
3b78272d39 [NDK] Fix alignment macros and add missing ones
Remove obsolete ALIGN_UP_BY macro definition
2018-07-01 14:45:21 +02:00
Timo Kreuzer
ca9fd861aa [DRIVERS][NTOS][NDK] Use IO_STACK_LOCATION instead of EXTENDED_IO_STACK_LOCATION and remove the latter from NDK 2018-07-01 14:45:21 +02:00
Timo Kreuzer
8719252e48 [XDK][NDK] Fix IO_STACK_LOCATION alignments
* Also add missing DIRECTORY_NOTIFY_INFORMATION_CLASS
2018-07-01 14:45:21 +02:00
Timo Kreuzer
03c86af7d5 [XDK] Stop randomly packing structures half throughout ntifs.h / wdm.h
Nothing in there should be packed!
2018-07-01 14:45:21 +02:00
Timo Kreuzer
de1b195837 [NDK] Fix the type of KPROCESS::ActiveProcessors
Also fix related logic in KiSwapProcess
2018-07-01 14:45:21 +02:00
Timo Kreuzer
158812409d [NDK] Update x64 version of KEXCEPTION_FRAME 2018-07-01 14:45:21 +02:00
Timo Kreuzer
a262e8da2d [LIBUSB] Add additional operator new/delete
This is required, since newer versions of MSVC demand that non-member operator new/delete are in the global namespace and neither static nor inline. See https://msdn.microsoft.com/en-us/library/mt723604.aspx ("Overloaded operator new and operator delete")
2018-07-01 14:45:21 +02:00
Timo Kreuzer
03830f67a7 [CMAKE] winspool.drv -> winspool in baseaddress_msvc.cmake 2018-07-01 14:45:21 +02:00
Serge Gautherie
c1d0d409e7 [FREELDR] PcMemGetBiosMemoryMap(): Add a default handling of entry with "EA.ErrorLog = 1". CORE-14150
This FIXME is meant as a reminder/help to actually use this data.
2018-07-01 12:03:50 +02:00
Serge Gautherie
a0313c750f [FREELDR] pcmem.c: Improve output strings. No functional changes. CORE-13332
- Plus: Add missing email address in 74f92c3d86.
- Remove superfluous blank lines.
- Add 2 TRACE("FunctionName()\n").
- Use "0x%llx", not "%lu", for BaseAddress and Length. (Copypasta in my recent commits.)
- Add "0x" to 1 "%p" and 1 "%lx".
2018-07-01 12:03:50 +02:00
Hermès Bélusca-Maïto
b7c4c4dc79 [COMDLG32] Add the missing NEWFILEOPENV2ORD dialog resource, whose absence made all of the Open/Save-file dialogs not displaying anymore.
This was a regression from last Wine (Staging) 3.9 sync (f68b0c51) that
introduced the usage of this new dialog.
To do: Properly generate the dialog localization.

CORE-14656, CORE-14674, CORE-14689, CORE-14769
2018-07-01 00:44:48 +02:00
Timo Kreuzer
c73c4f0cb3 [MC] Fix build of message text files for latest VS version
* Latest VS does not like half translated files :/
* errcodes.mc is duplicated in kernel32
* It would probably be better to separate each language into it's own file, but we need a build mechanism for that
2018-06-30 21:21:36 +02:00
Hermès Bélusca-Maïto
2afb483a9e [SHELL32] Shell Profile Folders fixes.
- Fix a regression introduced in r65415 (1795a3bf) where the directory
  paths stored in "Windows\CurrentVersion\Explorer\User Shell Folders"
  were stored in expanded format instead of in unexpanded format:
  _SHGetDefaultValue() *MUST* return unexpanded paths by design!!

- Augment _SHExpandEnvironmentStrings() and _SHGetUserShellFolderPath()
  to take a user token handle to be able to correctly resolve/expand
  user-specific directory paths.

- Fix _SHExpandEnvironmentStrings() so that it always retrieve the
  correct current user / all-users directory paths by calling userenv
  functions, instead of hardcoding a broken logic. As a result this
  removes the "C:\Documents and Settings\SYSTEM" ghost directory we got
  during ReactOS installation.

- Delimit the changes with respect to Wine by #if(n)def __REACTOS__ .
2018-06-30 18:20:08 +02:00
Katayama Hirofumi MZ
6abc9f5b5a [WIN32SS] Fix NtUserGetClipboardData for text paste (#645)
Fix the NtUserGetClipboardData function for the synthesized text formats (CF_TEXT, CF_OEMTEXT and CF_UNICODETEXT).
CORE-11471
2018-06-30 17:12:23 +02:00
Timo Kreuzer
2170901e6a [WIN32K] Implement RECTL_bClipRectBySize() and use it in IntEngBitBlt() to clip the target rect against the bounds of the target surface. Also clip the source rect against the source surface. Fixes remaining part of CORE-14463 2018-06-30 16:40:04 +02:00
Timo Kreuzer
79ad68ddc3 [CMAKE] Zap builddir.h.cmake and instead define macros globally
This changes __RELFILE__ to always be relative and not rely on a GCC extension, since __FILE__ is *always* relative to the root.
2018-06-30 13:26:56 +02:00
Stanislav Motylkov
73aa420f0e [SHELL32] Update russian translation
CORE-11407
2018-06-30 01:15:41 +02:00
Stanislav Motylkov
707f2ed360 [SHELL32] Fix some elements positions and styles
Addendum to eb1912b. CORE-11407
2018-06-30 01:15:41 +02:00
Serge Gautherie
6830ecb118 [NOTEPAD] Globals.encFile: explicitly cast to ENCODING 2018-06-30 01:12:00 +02:00
Mark Jansen
a731be3f12 [DEVENUM] Initialize rgpins. 2018-06-29 22:28:57 +02:00
Mark Jansen
ae8762e15e [FREETYPE] Allow a NULL style_name.
CORE-14775
2018-06-29 21:55:54 +02:00
Thomas Faber
97df61edfa [NOTEPAD] Avoid a cast. 2018-06-29 18:49:44 +02:00
Serge Gautherie
534a309edc [NOTEPAD] Fix a MSVC warning about Globals.encFile (#648)
"...\dialog.c(365) : error C4133: 'function' : incompatible types - from 'ENCODING *' to 'int *'"
CORE-7538
2018-06-29 14:17:29 +02:00
Katayama Hirofumi MZ
e353b48cb2 [SHELL32] Refresh 'General' tab if the folder icon is updated (#646)
CORE-11407
2018-06-29 14:13:37 +02:00
Hermès Bélusca-Maïto
fafcd50a35 [SERVICES] Minor additions.
- Remove a redundant ScmWaitForLsa() call.
- Remove the LSA_RPC_SERVER_ACTIVE macro (just use directly the string).
- Improve output of DPRINTs.
2018-06-28 23:34:08 +02:00
Hermès Bélusca-Maïto
75dc031080 [SERVICES] Remove the "Special service accounts initialization" hack, and enable per-service account logging.
This effectively removes the temporary hacks introduced in r73486 (a35a785b)
and in r73487 (0ce031f7) for the LocalService and NetworkService accounts.

Now these accounts (and their corresponding user profiles) are created
on the fly, the first time a service that needs these is started.
The code introduced in r73501 (ade0d2cd) is now re-enabled: this has
been made possible thanks to commit f42b4bbe (thanks Eric!).

Dedicated to Joachim Henze ;-)

CORE-12541, CORE-12279
2018-06-28 23:34:02 +02:00
Katayama Hirofumi MZ
1345cb77b3 [FONT][FREETYPE] Refactor global variable names and locking (#591)
Refactor the font engine code in "win32ss/gdi/ntgdi/freetype.c".
- Add "g_" prefix to global variables.
- Make the locking macros function-like.
CORE-13065
2018-06-28 22:00:55 +02:00
Katayama Hirofumi MZ
eb1912b15f [SHELL32] Initial implementation of Folder Customization (#642)
- Add property sheet;
- Implement changing the folder icon.
CORE-11407
2018-06-28 21:51:37 +02:00
Katayama Hirofumi MZ
8a685446b6 [WIN32SS] Fix IntSynthesizeDib to synthesize CF_DIB with CF_BITMAP (#644)
CORE-14770
2018-06-28 19:27:40 +02:00
Serge Gautherie
3766d836c7 [DBGHELP] Fix 3 MSVC warnings about MiniDumpWriteDump() (#643)
- Fixes MSVC errors: "...\dll\win32\dbghelp\minidump.c(857) : error C4028: formal parameter 5 different from declaration", for parameters 5, 6 and 7.
- Fix spec file too.
CORE-7538
2018-06-28 17:44:49 +02:00
Hermès Bélusca-Maïto
4d494caf61 [NTOS:SE] Overhaul the token management code.
- Overhaul SepCreateToken() and SepDuplicateToken() so that they
  implement the "variable information area" of the token, where
  immutable lists of user & groups and privileges reside, and the
  "dynamic information area" (allocated separately in paged pool),
  where mutable data such as the token's default DACL is stored.
  Perform the necessary adaptations in SepDeleteToken() and in
  NtSetInformationToken().

- Actually dereference the token's logon session, when needed, in the
  'TokenSessionReference' case in NtSetInformationToken().

- Overhaul SepFindPrimaryGroupAndDefaultOwner() so that it returns
  the indices of candidate primary group and default owner within the
  token's user & groups array. This allows for fixing the 'TokenOwner'
  and 'TokenPrimaryGroup' cases of NtSetInformationToken(), since the
  owner or primary group being set *MUST* already exist in the token's
  user & groups array (as a by-product, memory corruptions that existed
  before due to the broken way of setting these properties disappear too).

- Lock tokens every time operations are performed on them (NOTE: we
  still use a global token lock!).

- Touch the ModifiedId LUID member of tokens everytime a write operation
  (property change, etc...) is made on them.

- Fix some group attributes in the SYSTEM process token, SepCreateSystemProcessToken().

- Make the SeCreateTokenPrivilege mandatory when calling NtCreateToken().

- Update the token pool tags.

- Explicitly use the Ex*ResourceLite() versions of the locking functions
  in the token locking macros.
2018-06-27 23:40:18 +02:00
Hermès Bélusca-Maïto
a3376cd50d [NDK] Update NtCreateToken() prototype annotations. 2018-06-27 23:40:17 +02:00
Hermès Bélusca-Maïto
a9eda8f492 [LSASRV] Enable SE_CREATE_TOKEN_PRIVILEGE in LSASS since one of our purposes is to create access tokens -- NtCreateToken() requires this privilege. 2018-06-27 23:40:16 +02:00
Hermès Bélusca-Maïto
c901c3d37f [LSASRV] Move the LSA_RPC_SERVER_ACTIVE event creation to a better place, in LsarStartRpcServer(). 2018-06-27 23:40:16 +02:00
Hermès Bélusca-Maïto
0208a4d196 [LSASRV] Add the SE_GROUP_OWNER attributes to the token owner. 2018-06-27 23:40:16 +02:00
Hermès Bélusca-Maïto
9594022ce1 [NTOS:SE] Add a documentation note about SeTokenIsWriteRestricted() and SeTokenIsAdmin(), and update the one for NtDuplicateToken().
[XDK] Move TOKEN_HAS_ADMIN_GROUP where appropriate.
2018-06-27 23:40:15 +02:00
Hermès Bélusca-Maïto
f61694cfbb [NTOS:SE] Minor style changes.
- Use TRUE/FALSE instead of 1/0 for booleans.
- Use NULL instead of 0 for null pointers.
- Print 0x prefix for hex values in DPRINTs.
- Use new annotations for SepCreateToken() and SepDuplicateToken().
2018-06-27 23:40:15 +02:00
Hermès Bélusca-Maïto
986bf4c407 [NTOS:SE] In SepCreateClientSecurity(), fix the impersonation level value passed to the SeCopyClientToken() call.
Caught while debugging, in the case the ImpersonationLevel value was
uninitialized, due to the fact it was left untouched on purpose by
PsReferenceEffectiveToken().
2018-06-27 23:40:14 +02:00
Hermès Bélusca-Maïto
0ef734dba4 [FORMATTING] No code change; typo fix. 2018-06-27 23:40:14 +02:00
Hermès Bélusca-Maïto
5b2dda9134 [NTOS:SE] Finish SepCreateImpersonationTokenDacl() implementation.
- Re-enable a commented-out block;
- Return the allocated Dacl.
- Use the correct pool tag when freeing the allocated Dacl.
2018-06-27 23:40:14 +02:00
Hermès Bélusca-Maïto
813879f02f [NTOS:PS] Adjust the PsReferenceEffectiveToken() prototype in the header; add a comment about the fact that the ImpersonationLevel parameter can be left untouched on purpose in one special case. 2018-06-27 23:40:13 +02:00
Hermès Bélusca-Maïto
3cdb717a7b [PSDK] ntsecpkg.h: fix minor typos (make some structure names MS-PSDK-compatible), and add LSA_TOKEN_INFORMATION_V2. 2018-06-27 23:40:13 +02:00
Hermès Bélusca-Maïto
cf56db2eb3 [SAMSRV] In SamrGetAliasMembership(), perform STATUS_OBJECT_NAME_NOT_FOUND status fixup in the assignment loop as done in the allocation loop.
This avoids this function returning failure while everything actually succeeded.
2018-06-27 23:40:13 +02:00
Hermès Bélusca-Maïto
62384951c8 [LSASRV] If TokenInfo1->Privileges is NULL, which can be expected, pass a valid pointer to a valid but empty privilege structure to NtCreateToken(), as it always want a non-NULL pointer. 2018-06-27 23:40:12 +02:00
Hermès Bélusca-Maïto
d4b4da5385 [ADVAPI32] Additions for CreateProcessAsUserA/W().
- Use a common helper function used by both the ANSI and UNICODE functions
  so that the large code block that deals with setting the new process token
  becomes automatically common to both these functions, while the ANSI vs.
  UNICODE conversions are handled directly via the CreateProcessA/W() calls.

- Duplicate the token and acquire the process primary token assignment
  privilege before calling NtSetInformationProcess().
2018-06-27 23:40:07 +02:00
Katayama Hirofumi MZ
3189ec9428 [SHELL32] Add missing desktop.ini files (#640)
Add the "desktop.ini" files to the special folders to realize their custom icons.
CORE-10045
2018-06-27 23:11:31 +02:00
Bișoc George
089ff1511d [TRANSLATION][AT] Implement the Italian resource file (#641) 2018-06-27 23:09:56 +02:00
Katayama Hirofumi MZ
c74bd5d662 [SHELL32] Enable custom CD/DVD icons (#639)
Properly show the custom icon specified in "autorun.inf" file in CDs/DVDs.
CORE-14766
2018-06-27 23:06:54 +02:00
David Knapp
893a3c9d03 [AUTOCHK] Improve autochk messages 2018-06-26 09:16:34 +02:00
Bișoc George
23881cfcf3 [NEWDEV] Fix a truncated text 2018-06-25 13:55:19 +02:00
Russell Johnson
6a683dc6d8 [SHELL32] Fixed TRASH_CanTrashFile() sending the wrong path string to GetVolumeInformationW() (#635)
Function TRASH_CanTrashFile() would always fail because GetVolumeInformationW() requires only the base root path. The path (stored in buffer wszRootPathName) was not being stripped correctly.

CORE-12340
2018-06-24 20:29:57 +02:00
Katayama Hirofumi MZ
1b1e1baa6e [SHELL32] Implement Folder Options File Types 'Change' button (#629)
CORE-12906
2018-06-24 20:04:25 +02:00
Katayama Hirofumi MZ
6e6c46a832 [BROWSEUI] Re-enable the "Folder Options" menu item (#630)
It was originally disabled in r71192 (8b77c254).
CORE-11141
2018-06-24 20:02:36 +02:00
Katayama Hirofumi MZ
1829f5fed7 [SHELL32] Fix desktop.ini folder icon again (retrial of #595) (#632)
#595 failed at non-Desktop folder. We should use ILGetDisplayNameExW instead of SHGetPathFromLDList to get path from psf and pidl.
CORE-9196
2018-06-24 19:59:03 +02:00
Bișoc George
d5440316fa [TRANSLATION][WHOAMI] Add Italian resource (#626)
Note: Supersedes PR #627
2018-06-24 19:49:47 +02:00
Katayama Hirofumi MZ
cc8b2717ae [SHELL32] Implement OpenAs_RunDLLA/W (#628)
CORE-14751
2018-06-24 19:46:06 +02:00
Abdulganiev Rafael
824a52aa99 [TRANSLATION][SHELL32] Update Russian translation (#633) 2018-06-24 19:42:34 +02:00
David Quintana
23d0ec4c4a Add a document on the rules we should follow while managing/reviewing PRs,
and link to it from CONTRIBUTING.md and CODE_OF_CONDUCT.md
2018-06-24 17:00:00 +02:00
Timo Kreuzer
994eb598b3 [CMAKE] Add support for VS 15.7.1 / CL 19.14.x 2018-06-24 11:42:43 +02:00
Katayama Hirofumi MZ
a33908b60f [SHELL32] Improve French Folder Options 2018-06-23 10:51:48 +02:00
Getequ
b9415740a1 [REGEDIT] Fix importing very big *.reg files (HEX values commonly) (#618)
This bug was found when I tried to import *.reg with huge HEX value (about 500 and much more lines of hex text).
2018-06-22 20:15:12 +02:00
Katayama Hirofumi MZ
6f82659da6 [SHLWAPI][APITESTS] Add test for PathUnExpandEnvStringsForUser (#602)
ROSTESTS-308
2018-06-22 16:44:58 +02:00
Katayama Hirofumi MZ
cb69443362 [SHELL32] Implement the 'General' tab of the "Folder Options" dialog (#604)
CORE-14678
2018-06-22 16:40:06 +02:00
Hermès Bélusca-Maïto
12de9654b0 [EXPLORER] Simplify the current-shell-is-explorer check when trying to start the auto-start programs, by using the existing code. 2018-06-22 16:34:16 +02:00
Katayama Hirofumi MZ
0a8cd95cad [USERINIT][EXPLORER] Fix auto startup of Start Menu (#594)
- Remove code for Start-Menu auto-startup items from userinit and put it where it belongs: in explorer.

CORE-10839
2018-06-22 16:02:25 +02:00
Katayama Hirofumi MZ
f8926dccbd [SHELL32] Fix desktop.ini folder icon (#595)
The folder icon location specified in desktop.ini of a folder should accept its relative path.
CORE-9196
2018-06-22 15:37:03 +02:00
Katayama Hirofumi MZ
c84f398306 [EXPLORER] 'Run' (Win+R) should set the proper current directory (#593) 2018-06-21 18:18:57 +02:00
Arnav Bhatt
c771a6d339 [WELCOME] Add Hindi translation (#620) 2018-06-21 14:07:03 +02:00
Serge Gautherie
4f1a29e1b1 [LOG2LINES] translate_line(): Let 'offset' be an 'unsigned int', instead of a 'size_t' (#624)
Avoids half-uninitialized value on, i.e., Linux 64-bit (with ReactOS 32-bit).
CORE-14737
2018-06-21 14:05:35 +02:00
Andrea Crescentini
d303b70b7a [TRANSLATION] Improving italian translation (#623)
- Improved Italian translation for USETUP, WELCOME, REACTOS, EXPLORER.
- Completed translation in SYSSETUP.
- Correct some characters encoding and text alignment in USETUP.
2018-06-21 14:03:35 +02:00
Serge Gautherie
15c29d0798 [NETAPI32_APITEST] Fix a NULL dereference of pInfo
With DPH enabled,
{{
Unhandled exception
ExceptionCode:    c0000005
Faulting Address:        0
...
modules/rostests/apitests/netapi32/DsRoleGetPrimaryDomainInformation.c:23 (func_DsRoleGetPrimaryDomainInformation)
...
}}
2018-06-17 12:16:08 +02:00
Bișoc George
b8036ea176 [USETUP] Some changes to address the recent review 2018-06-16 22:28:53 +02:00
Bișoc George
682ac75ecd [USETUP] Italian translation update 2018-06-16 22:28:53 +02:00
Thomas Faber
e4f067068c Set minimum required version to 3.2.1 and set appropriate policies.
#556
2018-06-14 22:34:09 +02:00
Katayama Hirofumi MZ
12713b7709 [APITESTS] Add ShellStateTest 2018-06-14 20:07:52 +02:00
Katayama Hirofumi MZ
d5f5161804 [SHELL32][APITESTS] Add tests of OpenAs_RunDLL 2018-06-14 19:59:11 +02:00
Serge Gautherie
e5904542d6 [DELAYIMP] Fix/Merge definitions of __pfnDliNotifyHook2 and __pfnDliFailureHook2 2018-06-13 23:28:15 +02:00
Serge Gautherie
9415f94c3a [DELAYIMP] Fix 2 Clang-Cl warnings about __pfnDliNotifyHook2Default and __pfnDliFailureHook2Default
"warning: 'extern' variable has an initializer [-Wextern-initializer]"

CORE-14306
2018-06-13 23:28:15 +02:00
Denis Malikov
7916d0ae3e [SHELL32] Copy-paste files/folders into current place.
Files are copied with trying to find new path by adding (%d) suffix before asking for overwrite existing item

CORE-13788
2018-06-13 20:13:44 +02:00
Serge Gautherie
e01f935f0e [HALX86] Fix a Clang-Cl warning about KiUnexpectedInterrupt
"warning: cast between incompatible calling conventions 'cdecl' and 'fastcall'; calls through this pointer may abort at runtime [-Wcast-calling-convention]"

CORE-14306
2018-06-13 10:48:55 +02:00
Serge Gautherie
1668527acf [SYSSETUP] Fix a DPH report about dwPageCount
- "(sdk/lib/rtl/heappage.c:1329) corrupted suffix pattern"
  detected at
  "dll/win32/syssetup/wizard.c:2672 (InstallWizard)"
- Add an ASSERT(), as hinted by Mark Jansen.
2018-06-12 23:57:12 +02:00
Yaroslav Veremenko
04ff92bbdd [MODULES] Update README file, with instructions about how to include rostests and rosapps (#613) 2018-06-12 23:38:05 +02:00
Adam Słaboń
565ce5e827 [TRANSLATION] Polish translation update (#611)
Polish translation update for MODE, USETUP and SHELL32.
2018-06-12 15:51:37 +02:00
Bișoc George
03b7e13df5 [USETUP] Display the ReactOS release status (#608)
Update the introduction page with a more up-to-date exposition of the current status of ReactOS.
2018-06-11 22:53:57 +02:00
Erdem Ersoy
a6bd5b8ceb [TRANSLATION][NOTEPAD] Update Turkish translation (#609) 2018-06-11 14:56:59 +02:00
Thomas Faber
95c3e17a80 [ADVAPI32] Fix crash when running advapi32:security with DPH.
Import the following Wine commits:
* 79636bebbfa Michael Müller: advapi32: Set last error to ERROR_SUCCESS in GetSidIdentifierAuthority.
* 1d03ba76116 Hans Leidekker: advapi32: Fix parsing empty DACL/SACL security descriptor strings.
* 5bc2e83c7ab Hans Leidekker: advapi32: Fix size returned from ConvertStringSecurityDescriptorToSecurityDescriptor on 64-bit.
2018-06-10 19:05:26 +02:00
Thomas Faber
05b4bd3833 [AFD] Respect the maximum receive buffer size for datagram sockets. CORE-14048 2018-06-10 13:00:37 +02:00
Hermès Bélusca-Maïto
8a83c24419 [CONSRV] Don't show the newly-created console if the window station, on which the console is created, is not interactive. 2018-06-10 04:00:18 +02:00
Hermès Bélusca-Maïto
243fe6d6a3 [CONSRV] Use a similar parameter name as in other functions. 2018-06-10 04:00:18 +02:00
Hermès Bélusca-Maïto
9d3d5e464d [WIN32K] Fix DBG_PRINT macro. 2018-06-10 04:00:06 +02:00
Pierre Schweitzer
52f0f80a83 [FASTFAT] Don't add an extra \, when renaming a file at root.
This fixes failures to rename a file where destination is
the root of a FAT volume.

CORE-10503
2018-06-09 22:17:17 +02:00
Pierre Schweitzer
6aa4beeefb [FASTFAT] Use the FastFAT mechanism for counting clusters already implemented
This allows us having more accurate statistics regarding available clusters
count. Even though FastFAT and chkdsk still don't agree!

CORE-3877
2018-06-09 18:23:07 +02:00
Mark Jansen
f133d01f20 [RAPPS] Fix command line handling 2018-06-09 17:14:06 +02:00
Mark Jansen
4f8dc9c266 [ATL] Add CString.CompareNoCase 2018-06-09 17:14:06 +02:00
Mark Jansen
0ec08818b5 [RAPPS] Select the search bar with ctrl+f 2018-06-09 17:14:06 +02:00
Hermès Bélusca-Maïto
7cb411e88f [USERSRV] HardError: Free WindowTitleU buffer only if we really allocated it. 2018-06-09 15:37:54 +02:00
Pierre Schweitzer
704baed2df [FASTFAT] Start implementing FAT32 statistics support
Not fully perfect yet, chkdsk still complains.

CORE-3877
2018-06-09 12:36:43 +02:00
Pierre Schweitzer
04640f9264 [FASTFAT] Save the FSINFO sector location 2018-06-09 12:11:43 +02:00
Pierre Schweitzer
2149c3d0d0 [AUTOCHK] Let the timeout for disk repair to be configured 2018-06-09 00:19:09 +02:00
Bișoc George
4217688b49 [TRANSLATION][DRWTSN32] Implement Romanian and Italian resource translations for Dr.Watson (#607) 2018-06-08 19:06:56 +02:00
Pierre Schweitzer
01e2877161 [FASTFAT] Properly check for buffer size on dir enumeration.
This avoids improper returns when multiple entries are requested
and, in rare circumstances, entries not being seen by umode.

CORE-14699
2018-06-07 19:34:47 +02:00
Serge Gautherie
b012d48d00 [MSI_WINETEST] Fix MSVC_IDE build. (#564)
"reactos-cov\modules\rostests\winetests\msi\msi_winetest.rc(2): error RC2135: file not found: custom.dll [C:\ros_build\modules\rostests\winetests\msi\msi_winetest.vcxproj]".

Output files are written to Debug\ and Release\ subfolders in VSSolution mode, so the RC compiler will only find custom.dll if it knows to look in the right folder.

Thanks to Thomas Faber, who helped.

CORE-11836
2018-06-07 18:27:56 +02:00
Katayama Hirofumi MZ
698cbc6184 [SHELL32] Split dialogs/folder_options.cpp (#582)
The dialogs/folder_options.cpp source file in shell32 is too big to manage. We will split it to smaller files.
CORE-12906
2018-06-06 14:04:50 +02:00
Hermès Bélusca-Maïto
f215f394d8 [CRT] Always initialize _[w]pgmptr with a *FULL* path to the current application.
Otherwise fall back to the computed argv[0].
This is expected by some applications, for example Git.
Code is adapted from Wine.

Many thanks to Stanislav Motylkov for having investigated this bug!

CORE-12931 CORE-13892 CORE-13898 CORE-14066
2018-06-05 23:55:46 +02:00
Serge Gautherie
cac1bc12ae [USER32_APITEST] RedrawWindow: Add a DestroyWindow() call (#423)
Addendum to 7905efdf35.

CORE-13734
2018-06-05 21:23:21 +02:00
Serge Gautherie
637026ffd7 [RSHELL] Remove a duplicated add_custom_command() call (#570) 2018-06-05 20:17:34 +02:00
Serge Gautherie
c1256dda20 [EXT2FS][REISERFS] VSSolution: Actually disable C4189 errors (#540)
Multiple "error C4189: '[...]': local variable is initialized but not referenced".

Thanks to Yuntian Zhang, who hinted at this in CORE-11836.

CORE-11280
2018-06-05 20:16:22 +02:00
Serge Gautherie
2ca29e142c [BROWSEUI] Remove a duplicated add_custom_command() call 2018-06-05 20:03:16 +02:00
Pierre Schweitzer
79975ede26 [AUTOCHK] Allow users to skip disk checking if dirty
CORE-14692
2018-06-05 19:34:47 +02:00
Pierre Schweitzer
54f383d996 [VFATLIB] Only check volume if full scan or if allowed to fix it
This allows doing a quick probe about whether a volume needs to be
fixed by checking its dirty bit.

CORE-14692
2018-06-05 19:34:47 +02:00
Serge Gautherie
695547cd8c [CONFIGURE][CMAKE] Remove Visual Studio 9 (2008) support
ReactOS does not compile anymore with it.
VS9 is already officially unsupported.

CORE-11836
2018-06-05 18:59:36 +02:00
Serge Gautherie
9822462946 [CMAKE] Add "--always" parameter to "git describe" call
"fatal: No names found, cannot describe anything." message,
when called without enough history, i.e. appveyor.yml "clone_depth: 5".
2018-06-05 18:59:11 +02:00
Jared Smudde
76a73b4295 [MSHTA] Implement MSHTA.exe (#577) CORE-12813
Implement mshta.exe. It links directly to the function RunHTMLApplication in mshtml and passes the file name and other optional arguments along. While the function is unimplemented in mshtml, it's a start.

[MSHTML] Add ADD_IMPORTLIB to CMakeLists so mshta can link to mshtml.
[BOOTDATA] Add the association information for mshta.exe to the registry.
2018-06-05 17:17:00 +02:00
Thomas Faber
1d398057a3 [NTOS:CC] Access SectionObjectPointers without lock in CcRosInitializeFileCache. CORE-14691
kmtest:NtCreateSection calls CcInitializeCacheMap with a
NULL value for SectionObjectPointers. This will cause an exception when
trying to access it, which in Windows can be handled gracefully.
However accessing it while holding ViewLock means the lock will not be
released, leading to an APC_INDEX_MISMATCH bugcheck.

This solves the problem by allocating SharedCacheMap outside the lock,
then freeing it again under lock if another thread has updated SharedCacheMap
in the mean time. This is also What Windows Does(TM).
2018-06-05 16:24:13 +02:00
Katayama Hirofumi MZ
2355838fbb [FONTS] Delete 16px bitmap from Tahoma Bold 2018-06-05 15:57:45 +02:00
Thomas Faber
1a1206c5f8 [OLE32_WINETEST] Fix MSVC build. 2018-06-05 14:40:32 +02:00
Thomas Faber
c6f49f5394 [JSCRIPT] Fix MSVC build. 2018-06-04 20:26:14 +02:00
Amine Khaldi
1074ede011 [XMLLITE_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:59:33 +01:00
Amine Khaldi
f554481baf [WTSAPI32] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:59:11 +01:00
Amine Khaldi
c399348b83 [WMVCORE] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:58:45 +01:00
Amine Khaldi
2f569d4a7f [WINTRUST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:58:20 +01:00
Amine Khaldi
c33584a490 [WININET_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:57:53 +01:00
Amine Khaldi
12381d5dc1 [WININET] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:57:34 +01:00
Amine Khaldi
ed06e8a117 [WINHTTP_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:57:07 +01:00
Amine Khaldi
8317165d65 [WINHTTP] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:56:48 +01:00
Amine Khaldi
da5f3d5a8c [WINDOWSCODECS_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:56:11 +01:00
Amine Khaldi
324214f998 [WINDOWSCODECS] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:55:39 +01:00
Amine Khaldi
3c18f2a7c7 [INCLUDE/WINE] Update rbtree.h. CORE-14656 2018-06-04 03:54:55 +01:00
Amine Khaldi
983dc4266c [WBEMPROX] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:54:01 +01:00
Amine Khaldi
6091f5c76b [VERSION] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:53:34 +01:00
Amine Khaldi
c78e873652 [VBSCRIPT_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:53:02 +01:00
Amine Khaldi
bcea8c65d0 [VBSCRIPT] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:52:36 +01:00
Amine Khaldi
af009ed327 [USP10_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:51:59 +01:00
Amine Khaldi
aa15c73fc5 [USP10] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:51:34 +01:00
Amine Khaldi
e23b04e946 [URLMON_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:50:58 +01:00
Amine Khaldi
d0eebfbd6f [URLMON] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:50:24 +01:00
Amine Khaldi
dfaac82a1c [RPCRT4_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:49:34 +01:00
Amine Khaldi
96d77d846f [RPCRT4] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:49:11 +01:00
Amine Khaldi
9e90c368ef [RICHED20_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:48:31 +01:00
Amine Khaldi
aefc6e4447 [RICHED20] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:48:07 +01:00
Amine Khaldi
be43e1385f [PROPSYS] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:47:25 +01:00
Amine Khaldi
4523246628 [PIDGEN] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:46:44 +01:00
Amine Khaldi
a6cdf4ff08 [OLE32_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:46:11 +01:00
Amine Khaldi
85037eb745 [OLE32] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:45:35 +01:00
Amine Khaldi
9ce306e4cc [ODBCCP32_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:44:42 +01:00
Amine Khaldi
d52f5b708b [ODBCCP32] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:44:04 +01:00
Amine Khaldi
33bcb8c53a [NTDSAPI] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:43:22 +01:00
Amine Khaldi
2e5bae69da [PSDK] Update ntdsapi.h. CORE-14656 2018-06-04 03:42:29 +01:00
Amine Khaldi
9b29365701 [MSCTF_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:41:36 +01:00
Amine Khaldi
4335e46944 [MSCTF] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:41:08 +01:00
Amine Khaldi
217390ae60 [PSDK] Update msctf.idl. CORE-14656 2018-06-04 03:40:17 +01:00
Amine Khaldi
6b881f6502 [JSCRIPT_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:39:17 +01:00
Amine Khaldi
3f071cc527 [JSCRIPT] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:38:45 +01:00
Amine Khaldi
454e360303 [ITSS_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:37:50 +01:00
Amine Khaldi
e64b032987 [ITSS] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:37:18 +01:00
Amine Khaldi
1656f44ad3 [IMM32] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:36:30 +01:00
Amine Khaldi
88b70c737a [IEFRAME] Sync with Wine Staging 3.9. CORE-14656 2018-06-04 03:35:42 +01:00
Hermès Bélusca-Maïto
c441de2232 [SYSSETUP] If creating the default-user hive file fails because the file already exists, make a backup (i.e. rename it) and retry its creation.
This situation happens when one "updates" ReactOS by re-installing it on top of an existing installation.
2018-06-04 01:36:19 +02:00
Hermès Bélusca-Maïto
b2606fd07a [SETUPLIB] Silence annoying DPRINT1s. 2018-06-03 23:23:24 +02:00
Hermès Bélusca-Maïto
6f185c5fe2 [USETUP] Use correct flags for the NtCreateFile call that creates new file directories.
DIRECTORY_ALL_ACCESS is not the correct flag, because it is used with the NtCreateDirectoryObject API
that creates virtual "directories" in the NT object namespace; that's not our purpose here.

svn path=/branches/setup_improvements/; revision=74716
2018-06-03 22:12:46 +02:00
Hermès Bélusca-Maïto
cacae6d9a0 [SETUPLIB][USETUP] Diverse additions.
- Use NT string safe functions.
- Add support for other bootloaders;
- Update a couple of comments;
- Remove deprecated __REACTOS__ #ifdefs.

svn path=/branches/setup_improvements/; revision=74713
2018-06-03 22:12:45 +02:00
Hermès Bélusca-Maïto
563d9f26c4 [SETUPLIB] Adjustments in the code.
- Call OpenAndMapFile() with its new ReadWrite parameter;
- Add informative comments in osdetect.c;
- In partlist.c, check whether a disk has a valid MBR by also checking for its 0xAA55 signature.

svn path=/branches/setup_improvements/; revision=74712
2018-06-03 22:12:45 +02:00
Hermès Bélusca-Maïto
7f5428633b [SETUPLIB] Additions for filesup.c and inicache.c.
- In DoesFileExist(): Call NtOpenFile with FILE_GENERIC_READ instead of the more generic GENERIC_READ access right.
- OpenAndMapFile(): Add support for opening & mapping files with write access (to be used latter).

svn path=/branches/setup_improvements/; revision=74710

- Split IniCacheLoad() and IniCacheSave() into: themselves & IniCacheLoadByHandle() and IniCacheSaveByHandle(),
  respectively, so that we can load & save INI files if we already have an opened handle to them.

svn path=/branches/setup_improvements/; revision=74711
2018-06-03 22:12:44 +02:00
Hermès Bélusca-Maïto
6b6163a5d9 [USETUP] Minor fixes & simplifications.
- Remove a redundant NtClose() call;
- Return failure if NtQuerySymbolicLinkObject() fails;
- Use RTL_CONSTANT_STRING and RtlInitEmptyUnicodeString() where needed;
- Reduce code indent level;
- Add old-style function annotations;
- Remove the deprecated code copyright notice, since the copyright in usage is already reported in the COPYING file in the top level ReactOS source code directory.

svn path=/branches/setup_improvements/; revision=74698
2018-06-03 22:12:43 +02:00
Hermès Bélusca-Maïto
6681fb8af5 [SETUPLIB] Add a new module "bldrsup.c" (WIP) where I place all the NT boot loaders (i.e. ntldr, freeldr, and possibly bootmgr in the future) management functions.
So far we only have:
- a function FindNTOSBootLoader() that detects the existence of a given boot loader;
- a function EnumerateNTOSBootEntries() (and corresponding helpers) that enumerate the different boot entries in the configuration file(s) for a given boot loader, and for each entry, calls a user-provided callback.
Only supported at the moment: ntldr and freeldr.
Doing that allows me to simplify large portions of the NT-OS detection code so that it becomes more bootloader-agnostic, and this will help me for simplifying some parts of usetup/bootsup.c too, later...

svn path=/branches/setup_improvements/; revision=74661
2018-06-03 22:12:43 +02:00
Hermès Bélusca-Maïto
b53b7b11e3 [SETUPLIB][USETUP] Refactor the DoesFileExist() function so that it now looks closer to DoesPathExist() and use it almost everywhere.
- Adjust also its callers, adjust OpenAndMapFile() parameters.
- Related to that, simplify IsValidNTOSInstallation() parameters & introduce a IsValidNTOSInstallation_UStr()
  that does the same, but takes a UNICODE_STRING instead.
- Simplify CheckForValidPEAndVendor().

Now only exactly 5 calls use the "old" 'DoesFileExist' syntax, using a temporarily auxiliary function "DoesFileExist_2"...

svn path=/branches/setup_improvements/; revision=74641
2018-06-03 22:12:43 +02:00
Hermès Bélusca-Maïto
d27ef70aab [SETUPLIB][USETUP] Transform the existing ConcatPaths() function into a variadic function, and derive a CombinePaths() from it (plus their equivalent taking va_list).
This allows building concatenated paths with an arbitrary number of separated components.
- Use the newly-introduced CombinePaths() and ConcatPaths() functions.
- Fix also few comments, and place some UNICODE_NULLs here & there.

svn path=/branches/setup_improvements/; revision=74637
svn path=/branches/setup_improvements/; revision=74640
2018-06-03 22:12:43 +02:00
Hermès Bélusca-Maïto
92b99b865e [SETUPLIB][USETUP] Move some code to the SetupLib.
- filesup.c's functions ConcatPaths(), Does[Path|File]Exist(), NtPathToDiskPartComponents(), OpenAndMapFile(), UnMapFile();
- Move the inicache library to setuplib as it'll be used for the 1st stage GUI setup too (indeed, there is no good INI file API
  under Win32; the Win32 profile "API" is just good enough to manipulate the win16 ini files, and are here anyways for backward
  compatibility purposes only);
- Move the OS detector too.
- Remove the duplicated ConcatPaths() code in arcname.c.

svn path=/branches/setup_improvements/; revision=74634
svn path=/branches/setup_improvements/; revision=74638
2018-06-03 22:12:35 +02:00
Mark Jansen
c7eb46d9fd [NTOSKRNL] Ignore IMAGE_SCN_CNT_UNINITIALIZED_DATA
CORE-12582
CORE-14556
2018-06-03 20:40:51 +02:00
Thomas Faber
ffa94ca0f0 [NTDLL_APITEST] Add tests for mapping and relocating an image with IMAGE_SCN_CNT_UNINITIALIZED_DATA
CORE-12582
CORE-14556
2018-06-03 20:40:51 +02:00
Stanislav Motylkov
a551ec537a [CREDITS] Update the credits list 2018-06-03 20:32:39 +02:00
Stanislav Motylkov
adf334eaf2 [SYSDM] Update the credits list
Added to Development Team:

Aleksandar Andrejevic
Alexander Shaposhnikov
Amine Khaldi
Benedikt Freisen
Cameron Gutman
David Quintana
Giannis Adamopoulos
Hermès Bélusca-Maïto
Jérôme Gardou
Katayama Hirofumi MZ
Mark Jansen
Peter Hater
Stanislav Motylkov
Thomas Faber
Vadim Galyant

Added to Release Engineers:

Amine Khaldi
Joachim Henze
Thomas Faber
2018-06-03 20:32:39 +02:00
Stanislav Motylkov
245d7bee43 [SYSDM] Fix typo in the credits
Contributers -> Contributors
2018-06-03 20:32:39 +02:00
SebastianoPistore
45b08ed38d [SCREENSAVER] Add Italian translation. (#587)
By Sebastiano Pistore.
2018-06-03 16:43:50 +02:00
Joachim Henze
1c151c9977 [COMCTL32] Simplify some ifdefs CORE-14649
Addendum to 16d6c9b5e0
Giannis suggested and Thomas explained:

Before the Wine sync, comctl32/button.c was based on ROS's
user32/button.c, so _USER32_ would highlight changes between
user32 (originally based on Wine) and comctl32. Now our
comctl32/button.c is based on Wine's comctl32/button.c, so
__REACTOS__ is enough.
2018-06-03 14:27:34 +02:00
Hermès Bélusca-Maïto
a165999067 [CMD] Improve the situations when the console title can be changed.
- Introduce two small helpers to change and restore the console title.
- Console title can change even when internal commands are executed.
- Note that when commands are run from within batch files, title is unchanged.
- When "cmd.exe /c command" is run, the console title is unchanged; however
  when "cmd.exe /k command" is run, the console title changes.
2018-06-03 02:36:39 +02:00
Hermès Bélusca-Maïto
39af25024a [CMD] Print a newline after the interactive 'pause' command message finishes to run. 2018-06-03 02:36:32 +02:00
Stanislav Motylkov
07302fe8eb [BOOTDATA] Use double quotes for mspaint file path
Addendum to 313ded4. CORE-13293
2018-06-02 23:32:20 +02:00
Joachim Henze
ea42633bed [ZIPFLDR] Fix text-cutoff + improve de-DE CORE-14682 2018-06-02 22:03:03 +02:00
Eric Kohl
6ce2ca540b [SYSDM] Improvements to the user profile page
- Store the full profile user name in the listview item for later use in the delete and copy functions.
- Change the button state according to the selected profile.
- Fix some hard-coded string sizes.
2018-06-02 16:11:50 +02:00
Pierre Schweitzer
2dfe5e3f46 [CRT] Reimplement qsort() using FreeBSD implementation.
Our implementation had a bug that could be triggered while
building our USBD library on ReactOS: the compare function
could be called with a NULL pointer instead of a valid value.

With this bug fixed (and the cmd hack in CORE-14648), ReactOS
can totally selfhost :-)! I was able to build LiveCD and BootCD
without any trouble, crash, deadlock or whatever.
(Next step: having a buildbot slave hosted on ReactOS ;-)).

Enjoy: https://twitter.com/HeisSpiter/status/1002880397103988737

CORE-14680
2018-06-02 13:56:42 +02:00
Joachim Henze
16d6c9b5e0 [COMCTL32] Fix regression CORE-14649
Fixes a regression that was introduced by Wine Staging 3.3 Sync.
Symptom was missing button text and icons for specific buttons
in Delphi applications, e.g. Double-Commander, Lazarus, Peazip.
The patch restores and ifdef-guards previous changes of Giannis.
2018-06-02 12:28:47 +02:00
Eric Kohl
e3905cc68a [SYSDM] Retrieve and show the domain and user names for the user profiles
Fixes CORE-11789
2018-06-02 12:18:19 +02:00
Eric Kohl
bd2f3d39a9 [KERNEL32] Get/SetTimeZoneInformation: Convert the Milliseconds value between TIME_FIELDS and SYSTEMTIME too
CORE-14658
2018-06-01 12:49:26 +02:00
Dheeraj Bhaskar
ce5d4fd3e1 Create a Code of conduct to complete the Github community checklist (#431) 2018-05-31 23:26:33 +02:00
Benedikt Freisen
313ded449c [MSPAINT] use __targv[1] instead of lpszArgument
This should make Paint's handling of command line strings less brittle.

CORE-13293
2018-05-31 20:17:30 +02:00
Hermès Bélusca-Maïto
c434a5ab21 [USETUP] Some fixes/improvements suggested by Thomas (2/2).
- In the partlist.c disk getters: Remove useless "IsListEmpty(&List->DiskListHead)" checks, because this is actually the kind of check the while() loop does just after...
- Fix few DPRINTs.

svn path=/branches/setup_improvements/; revision=74629
2018-05-31 19:54:09 +02:00
Hermès Bélusca-Maïto
f88d029c9d [USETUP] Further improve the OS detection code.
- Improve FindExistingNTOSInstall() so that we can find an existing installation either by system root
  ARC path or NT path. This is used during the enumeration of available installations from the boot.ini/freeldr.ini
  and during other existence & validity checks of NTOS installations.
- Improve AddNTOSInstallation() so that we can save the system root ARC path and NT path of the installation,
  as well as its partition entry structure pointer, for caching & later retrieval purposes.
- Remove some deprecated comments & todos, and implement other todos.
- Improve the output of some DPRINTs.
- Fix the return value of FindSubStrI.

svn path=/branches/setup_improvements/; revision=74632
2018-05-31 18:01:01 +02:00
Hermès Bélusca-Maïto
3074ad7159 [USETUP] Some fixes/improvements suggested by Thomas (1/2).
- isspace('\0') returns FALSE anyways so no need to separately test for a NULL character;
- The (str/wcs)toul function cannot return a NULL pointer from its second paramter;
- VersionInfo32_FindChild(): the third argument is indeed a number of characters (not bytes),
  so rename the parameter to make this fact clear. The function is however correctly used within this module.

svn path=/branches/setup_improvements/; revision=74629
2018-05-31 18:01:00 +02:00
Hermès Bélusca-Maïto
5a6050902b [USETUP] Improve the NTOS installations detector.
In all the disks/partitions available, it searches for the presence of freeldr.ini / boot.ini, open & parse them,
and enumerates the available boot entries (as candidates for installations). For each of them, it maps their ARC paths
into the NT namespace (hence the ARC 2 NT path resolver committed in r74621), then attempts to detect in these paths
the existence of NTOS installations.

svn path=/branches/setup_improvements/; revision=74622
2018-05-31 18:00:59 +02:00
Hermès Bélusca-Maïto
aa44ab1fbc [SETUPLIB] Add an ARC path to (and from) NT path resolver.
The NT path resolver allows mapping between an ARC path as specified in freeldr.ini / boot.ini , to its corresponding NT path, if possible.
Currently, only the mapping direction "ARC to NT" is implemented. It will be used wherever such mappings are needed, for example when identifying
the ReactOS / Windows installations from the available freeldr.ini / boot.ini entries (for upgrading / repair purposes).

The resolver supports the usual ARC paths: multi()disk()[r|f]disk()[partition()] ; eisa()disk()[r|f]disk()[partition()] ; multi()disk()cdrom() ;
scsi()disk()[r|f]disk()[partition()] ; scsi()cdrom()fdisk() ; ramdisk(x) ; net(x) (actually reported as "unsupported" since it would map to some
path on some network), and the newly-introduced Win2k signature()disk()rdisk()[partition()].

The code is in work-in-progress status.
Some validation tests, that were used during the implementation of the resolver, have been added.

svn path=/branches/setup_improvements/; revision=74621
svn path=/branches/setup_improvements/; revision=74631
2018-05-31 18:00:59 +02:00
Hermès Bélusca-Maïto
b1741a07cf [USETUP][SETUPLIB] Move all the code that retrieves the version resources from PE executable, out of osdetect.c, and place it in its own module inside the SetupLib.
Remove also some commented headers in precomp.h.

svn path=/branches/setup_improvements/; revision=74618
2018-05-31 18:00:58 +02:00
Hermès Bélusca-Maïto
2c76ce526c [USETUP] PartList module: Add a couple of disk/partition getters: GetDiskByBiosNumber, GetDiskByNumber, GetDiskBySCSI, GetDiskBySignature, GetPartition, GetDiskOrPartition.
They will be used in the subsequent commits.

svn path=/branches/setup_improvements/; revision=74617
2018-05-31 18:00:58 +02:00
Hermès Bélusca-Maïto
b76fa34121 [USETUP] Introduce an NT OS installation detector: a functionality that attempts to detect installations of NT 5.x operating systems (MS Windows <= 2k3, ReactOS).
The aim is to use this detector to be able to detect and select an existing installation of ReactOS for upgrading.
The user then could either select one, or skip this step and perform a regular ReactOS installation.

What remains to be done, is to parse the NTOS loader configuration files (freeldr.ini in ReactOS' case, or boot.ini in Win2k3's case, etc...)
to retrieve the actual installation paths. So far these are currently hardcoded for testing purposes only.

The detector attempts to distinguish between ReactOS and Windows installations by checking at the company name vendor of the ntoskrnl.exe & ntdll.dll files,
so that only ReactOS installations are allowed to be upgraded.

svn path=/branches/setup_improvements/; revision=74527
svn path=/branches/setup_improvements/; revision=74550
2018-05-31 18:00:44 +02:00
Eric Kohl
4911382913 [NDK] Replace the SYSTEMTIME fields StandardDate and DaylightDate in RTL_TIME_ZONE_INFORMATION by TIME_FIELDs and fix resulting errors
Patch will be sent upstream.

CORE-14658
2018-05-31 17:48:29 +02:00
Eric Kohl
ac45758aff [NTDLL_APITEST] Add missing test file for 0f8e7207.
CORE-14658
2018-05-31 17:12:52 +02:00
Eric Kohl
0f8e720711 [NTDLL_APITEST][LIB_RTL] Add a test for RtlQueryTimeZoneInformation and fix the bug in RtlpQueryRegistryDirect
In working on some problems with Time Zone adjustments in  ReactOS I found that the RtlQueryTimeZoneInformation function is partially broken and wrote an apitest to capture the failures.

Patch by Doug Lyons.

CORE-14658
2018-05-31 16:47:42 +02:00
Hermès Bélusca-Maïto
528e6339c2 [WINLOGON] Update Italian translation (#513) (by deleted user) 2018-05-31 15:41:09 +02:00
Katayama Hirofumi MZ
222534a5a2 [SHELL32] Fix and improve the PickIconDlg function (#574)
CORE-10972
2018-05-31 15:33:07 +02:00
Eric Kohl
5d8bbf72e3 [USERENV] LoadUserProfileW: User the user name passed in via lpProfileInfo to create the profile directory instead of the user name extracted from the token 2018-05-30 23:29:14 +02:00
Katayama Hirofumi MZ
5187ec858f [SHELL32] Implement the 'Advanced' button of the 'File Types' dialog (#565)
This allows the user to edit the File Type / extension information by clicking 'Advanced' button in the 'File Types' property sheet of Folder Options.
CORE-12906, CORE-10972
2018-05-30 17:22:31 +02:00
Eric Kohl
f0a792631d [MSGINA] Remove a dialog that should not have been added. 2018-05-30 15:22:56 +02:00
Baruch Rutman
a4a59ad413 [GDI32][LPK] BiDi support for ExtTextOut and GetCharacterPlacement (#534)
Introduce BiDi (bi-directional text) support for ExtTextOut and GetCharacterPlacement, using Wine's GDI BIDI_Reorder function.
Solves the main issue with CORE-7003.

To be compatible with Win2k3+, introduce the "Language Pack" (LPK) dll.
- All the bidi code is removed from gdi32 and replaced by calls to LPK.
  Gdi32 uses dynamic linking to lpk.dll. In case of linking failure no bidi processing will be available.
- Implemented LpkGetCharacterPlacement.
- Implement LpkExtTextOut.
- Add a demo test program to show how the apis should function.
- Added all the remaining code, added special case for lpDx calculation if also GCP_GLYPHSHAPE flag was called.
  Applications that call GCP that use GCP_GLYPHSHAPE flags should also use the GCP_REORDER flag.
  (As written in https://msdn.microsoft.com/en-us/library/windows/desktop/dd144860(v=vs.85).aspx )
- Add ETO_RTLREADING flag handling.
  Imported the ETO_RTLREADING flag handling from wine, which changes the string part order (runs).
  A RRR1LLLRRR2 string without will show as RRR1LLLRRR2 without it, with it RRR2LLLRRR1.
2018-05-30 14:41:22 +02:00
Serge Gautherie
3ca1ac639c [REACTOS] Improve/Fix some "printf" formats (#555)
The smbios.c one was initially spotted by "Alahndro" on CORE-6328.
2018-05-30 14:18:23 +02:00
Katayama Hirofumi MZ
e0f5ded66a [FONTS] Improve Tahoma Bold font (tahomabd.ttf) #580 2018-05-30 13:44:54 +02:00
Eric Kohl
f0273d814e [SYSSETUP][USERENV] Create the system profile after the creation of the default profile has been finished
CopySystemProfile: Don't try to create the user hive. Just copy it as it has already been created.
2018-05-30 09:21:14 +02:00
Eric Kohl
e7340a2800 [SYSSETUP] Save the HKEY_USERS\.DEFAULT hive in the ntuser.dat file of the default user profile 2018-05-30 08:18:55 +02:00
Eric Kohl
249dc97165 [SYSSETUP] Fix an issue that may be caused by a missing security settings file
Found by Serge Gautherie
2018-05-29 12:49:24 +02:00
Eric Kohl
67e45c41ee [SYSSETUP] Open the security settings inf file only once in order to apply the settings 2018-05-29 01:32:52 +02:00
Pierre Schweitzer
6e4e772e6c [VFATLIB] Addendum to 469289e 2018-05-28 23:38:00 +02:00
Pierre Schweitzer
86198abd67 [VFATLIB] Fix MSVC build? 2018-05-28 23:29:06 +02:00
Pierre Schweitzer
469289ed5c [VFATLIB] Upgrade fsck.fat to 4.1
Also make it easier to sync in the future.
2018-05-28 23:18:25 +02:00
Pierre Schweitzer
9f3169b295 [FASTFAT] Lock DirResource on flush in case we're updating entry
CORE-14660
2018-05-28 19:37:56 +02:00
Pierre Schweitzer
59dc951bf7 [VFATLIB] Only attempt to clear the dirty set bit in rw mode. 2018-05-28 19:37:56 +02:00
Eric Kohl
cd9f22e9e5 [SYSSETUP][INF] Add the 'Registry Values' section to the default security settings and apply it to the registry 2018-05-28 19:26:02 +02:00
Eric Kohl
1f9543940c [USERENV] Implement CopySystemProfile Part 2 (Create the profile directory) 2018-05-28 02:13:22 +02:00
Eric Kohl
975b7d427d [SETUP] Remove myself from the 1st stage setup code
Congratulations Hermès!
You just earned yourself full maintainership of the 1st stage setup. It's yours now. I'm out!
2018-05-27 21:33:07 +02:00
Hermès Bélusca-Maïto
c8ea82d67b [USETUP] Improve the inicache module.
From the existing IniCacheLoad() function, introduce a IniCacheLoadFromMemory() function that just does the same (initialize an INI file cache and parse the INI file), but takes the input from a memory buffer. Then, rewrite the IniCacheLoad() function to just open the file given in input, and then fall back to calling IniCacheLoadFromMemory.
The IniCacheLoadFromMemory() function will be used later.

svn path=/branches/setup_improvements/; revision=74620
2018-05-27 20:18:53 +02:00
Hermès Bélusca-Maïto
38e988ace7 [USETUP] Improve the FileSup module.
- Add a NtPathToDiskPartComponents() helper, that takes in input a fully qualified NT path to a file on hard disk,
  e.g.: \Device\Harddisk1\Partition2\foo\bar, and returns in output the disk number ('1'), the partition number ('2'),
  and the the path component "\foo\bar" that is after the device-harddisk-partition identifier.
- Make the OpenAndMapFile() return the file size of the opened file.

Both of these additions will be used soon.

- Turn a isspace() call into a iswspace() one.

svn path=/branches/setup_improvements/; revision=74619
2018-05-27 20:18:53 +02:00
Hermès Bélusca-Maïto
1ed0e1c84a [USETUP] Code fixups after the introduction of the SetupLib.
- Use the previously-introduced 'PreparePartitionForFormatting()' function; set the FormatState of the newly-formatted partition to Formatted.
- Remove the hackish call to CreateFileSystemList() in SelectFileSystemPage().
- Move 'TempPartition' and 'FormatState' back to USETUP.
- Put large "case"-blocks into brackets.

svn path=/branches/setup_improvements/; revision=74575
svn path=/branches/setup_improvements/; revision=74576
2018-05-27 20:18:52 +02:00
Hermès Bélusca-Maïto
1716749bcb [SETUPLIB] Consolidate the FsUtil and PartList modules of the SetupLib.
- Add a PreparePartitionForFormatting routine that sets the partition ID depending on the chosen filesystem.
- The 'FORMATMACHINESTATE FormatState' machine-state and the 'TempPartition' members of the partition list structure is purely a USETUP convenience, so remove them from the PARTLIST structure and move them back into USETUP.
- Attempt to recognize the filesystem (set the 'FileSystem' member of PARTENTRY) of partitions we are adding into the PARTLIST list.
- Fix the return value of the SelectPartition function, which is by the way completely broken (it doesn't do what it is supposed to do; alternatively its naming is completely wrong...).

svn path=/branches/setup_improvements/; revision=74572
svn path=/branches/setup_improvements/; revision=74573
2018-05-27 20:18:51 +02:00
Hermès Bélusca-Maïto
3a19ee6a96 [SETUPLIB][USETUP] Introduce a 'SetupLib' library. CORE-13544
- Create the beginnings of a "setuplib" library, whose aim is to be shared between the (currently existing) 1st-stage text-mode installer, and the (future) 1st-stage GUI installer.
- Finish to split the GenList and PartList codes into their UI part, which remain in usetup, and their algorithmic part, which go into setuplib.
- Move SetMountedDeviceValue into the PartList module.
- Split the FileSystem list code into its UI and the algorithmic part (which goes into setuplib under the name fsutil.c).
  * The algo part is meant to be able to manage the filesystems available on the running system, similarly to what is mostly done (in scattered form) in fmifs, format, chkdsk / autochk codes...
    It also manages the partition filesystem recognition, using OS routines.
  * The UI part manages the FS list as it appears on screen, showing only the possible FSes that can be used to format the selected partition (a bit similar to what we do in the shell32's drive.c, etc...).
- Adapt the calling code to these changes.
- Remove some "host" code that was dating back from the dark old times.

svn path=/branches/setup_improvements/; revision=74570
svn path=/branches/setup_improvements/; revision=74659
2018-05-27 20:18:50 +02:00
Bișoc George
739e72b6ed [USERSRV] Romanian translation update 2018-05-27 17:35:47 +02:00
Eric Kohl
334fe302a1 [USERENV] Implement CopySystemProfile Part 1 (Add a new profile subkey and values to the profile list)
CORE-12541
2018-05-27 15:31:43 +02:00
Pierre Schweitzer
d65c0d5ada [WINETESTS] Fix build
CORE-14656
2018-05-27 09:51:38 +02:00
Amine Khaldi
02c546ced9 [HNETCFG_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:13:26 +01:00
Amine Khaldi
1d62a5beb5 [HNETCFG] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:12:51 +01:00
Amine Khaldi
4f653a5538 [HLINK_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:12:13 +01:00
Amine Khaldi
ea2a3922c9 [GDIPLUS_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:11:35 +01:00
Amine Khaldi
6619d0261f [GDIPLUS] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:10:39 +01:00
Amine Khaldi
4b8fbca3f7 [PSDK] Add missing GdipSetPathGradientPath() and GdipTranslatePenTransform(). CORE-14656 2018-05-27 04:09:49 +01:00
Amine Khaldi
2fb248c799 [DBGHELP] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:08:32 +01:00
Amine Khaldi
102f53e05c [CRYPT32] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:07:57 +01:00
Amine Khaldi
234f89c07b [COMDLG32_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:07:12 +01:00
Amine Khaldi
f68b0c5100 [COMDLG32] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:06:36 +01:00
Amine Khaldi
41e2b83f96 [INCLUDE/WINE][USER32_APITEST] Add ARRAY_SIZE to test.h and remove it from RealGetWindowClass.c. CORE-14656 2018-05-27 04:05:33 +01:00
Amine Khaldi
2f668a30bd [PSDK] Add missing OFN_EX_NOPLACESBAR. CORE-14656 2018-05-27 04:03:38 +01:00
Amine Khaldi
01707e98b5 [AVIFIL32] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:02:26 +01:00
Amine Khaldi
202ccf50ba [QUARTZ_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:01:18 +01:00
Amine Khaldi
f267af2ac1 [QUARTZ] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 04:00:39 +01:00
Amine Khaldi
20e02be701 [MSDMO] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:59:47 +01:00
Amine Khaldi
e467e5ff1b [DMUSIC] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:59:04 +01:00
Amine Khaldi
979d53be2a [DINPUT_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:58:11 +01:00
Amine Khaldi
e2ded18d65 [DINPUT] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:57:38 +01:00
Amine Khaldi
6e5b60fcf4 [DEVENUM_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:56:54 +01:00
Amine Khaldi
5e3341f4bb [DEVENUM] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:56:13 +01:00
Amine Khaldi
e00ccd4551 [PSDK] Add missing DRV_QUERYFUNCTIONINSTANCEID. CORE-14656 2018-05-27 03:55:03 +01:00
Amine Khaldi
561fd57166 [D3DX9_24 => 43] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:54:15 +01:00
Amine Khaldi
61ea4c528e [D3DRM] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:53:02 +01:00
Amine Khaldi
7af3969e9f [D3D8][D3D9][DDRAW][WINED3D] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:52:04 +01:00
Amine Khaldi
a5f73f6c86 [AMSTREAM] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:50:07 +01:00
Amine Khaldi
fcf9cc1ab7 [REG_WINETEST] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:49:14 +01:00
Amine Khaldi
98cf80fbc5 [REG] Sync with Wine Staging 3.9. CORE-14656 2018-05-27 03:48:33 +01:00
Hermès Bélusca-Maïto
216f15c675 [USETUP] Similarly to what was done for GenLists, factor out the UI code from the partition list code.
This will allow to reuse it for the 1st-stage GUI setup too, while using another UI representation.
Add also two partition iterator functions: GetNextPartition and GetPrevPartition.

svn path=/branches/setup_improvements/; revision=74554
2018-05-26 22:45:50 +02:00
Hermès Bélusca-Maïto
92692eae3d [USETUP] Factor out the UI-specific code from the GenList code, and wrap it inside a GENERIC_LIST_UI structure.
The aim here is to decouple the UI-specific code from code that can be used by both the text-mode USETUP and a future 1st-stage GUI setup.
Indeed, the GenLists can actually be used in the 1st-stage GUI; and their contents be displayed inside ListBoxes/ListViews... (this is just one example amongst others).

Additionally (in usetup.c):
- Make both FormatPartitionPage and CheckFileSystemPage return PAGE_NUMBERs.
- Improve a couple of comments.

svn path=/branches/setup_improvements/; revision=74553
2018-05-26 22:45:50 +02:00
Hermès Bélusca-Maïto
199fb91939 [USETUP] Additions for generic lists.
- Allow retrieving the number of items existing in the list;
- Fix the name of some function parameters.

svn path=/branches/setup_improvements/; revision=74547
2018-05-26 22:45:50 +02:00
Hermès Bélusca-Maïto
2521d3c478 [USETUP] Additions for the PartList code.
- Document more some of the fields in the PARTENTRY, DISKETNRY and PARTLIST structures;
- Remove the redundant members "SystemDisk", "OriginalSystemDisk" and "TempDisk" in PARTLIST as these can be consistently deduced from the corresponding (Original)(System)(Temp)Partition members
  (note that we however keep "CurrentDisk" alongside "CurrentPartition", see the comment in the code why we do it so).
- Adjust the rest of the code to take the removal of the redundant members into account. The 2nd parameter of GetNextUnformattedPartition() and GetNextUncheckedPartition() is now really optional.
- Introduce a SetPartitionType() helper to simplify the code that sets the partition type, which also automatically adjusts other internal variables of said partition in accordance.
- "Mounted" logical drives can have assigned letters too, registered in \DosDevices\.

svn path=/branches/setup_improvements/; revision=74532
2018-05-26 22:45:39 +02:00
Hermès Bélusca-Maïto
eaf7d6ebbe [USETUP] Code improvements for PartList.
- Use explicit ansi string safe functions (where they are used ansi, but not explicitely);
- Add (old-school) function parameters annotations;
- Use PARTITION_ENTRY_UNUSED where needed (instead of hardcoding its value);
- Turn some functions static to this module;
- Turn the 2nd parameter of both GetNextUnformattedPartition() and GetNextUncheckedPartition() optional (for next commit);
- Improve some comments;
- Use NT types.

svn path=/branches/setup_improvements/; revision=74531
2018-05-26 19:09:39 +02:00
Hermès Bélusca-Maïto
56ea51bbe4 [USETUP] Enhancements for filesystem utility functions.
- Introduce code that detects the filesystem of a (mounted?) partition, using NtQueryVolumeInformationFile() with FileFsAttributeInformation class,
  aka. rely on ReactOS itself (kernel, storage stack, filesystem drivers...) to recognize the FS on a partition that should normally be seen by the system.
  This currently half-works for whatever reason (to be insvestigated), while it works on Windows.
- Fix few comments & a function parameter name.
- Use NT string pointer types.

svn path=/branches/setup_improvements/; revision=74529
2018-05-26 19:09:38 +02:00
Hermès Bélusca-Maïto
60532e9c43 [USETUP] Add & modify some file utility functions that are going to be used next.
- ConcatPaths that concatenates paths (or a path and a file name);
- OpenAndMapFile (resp. UnMapFile), whose purpose is to open a file and map it in memory (resp. unmap it from memory).
- Add extra optional parameters to DoesPathExist and DoesFileExist: an optional "RootDirectory" handle and, for DoesFileExist only, an optional PathName.
- Close the opened file handles only on success.

svn path=/branches/setup_improvements/; revision=74528
svn path=/branches/setup_improvements/; revision=74538
svn path=/branches/setup_improvements/; revision=74549
2018-05-26 19:09:38 +02:00
Hermès Bélusca-Maïto
14284ddc61 [USETUP] Fix some spacings in the french translation.
svn path=/branches/setup_improvements/; revision=74574
2018-05-26 19:09:37 +02:00
Hermès Bélusca-Maïto
833c0e59da [USETUP] Code formatting only.
svn path=/branches/setup_improvements/; revision=74530
2018-05-26 19:09:35 +02:00
Eric Kohl
f42b4bbe17 [MSV1_0] Add logon support for the LocalService and NetworkService accounts 2018-05-26 18:43:46 +02:00
Pierre Schweitzer
fc788cf2fd [FASTFAT] Lock DirResource when modifying an entry on disk.
Likely not optimal, but fixes some races conditions where
the directory is uninit in the middle of the write.
2018-05-26 17:13:08 +02:00
Benedikt Freisen
cca1a3f47f [MSPAINT] When clicking selection, invalidate _and_ repaint Scroll Client _and_ Image Area
Previously, the canvas disappeared when a selection was clicked until the mouse was moved.

CORE-13288
2018-05-26 14:21:07 +02:00
Benedikt Freisen
97025c3e06 [MSPAINT] Store subsequent changes to file selected via Save As
Paint has erroneously been storing subsequent changes to Unnamed.bmp

CORE-13291
2018-05-26 14:16:17 +02:00
Pierre Schweitzer
de58c459fa [UBTRFS] Upgrade to 1.0.2
CORE-14655
2018-05-26 11:00:51 +02:00
Pierre Schweitzer
2da53310a4 [SHELLBTRFS] Upgrade to 1.0.2
CORE-14655
2018-05-26 10:58:48 +02:00
Pierre Schweitzer
c7806a6b29 [BTRFS] Upgrade to 1.0.2
CORE-14655
2018-05-26 10:44:36 +02:00
Pierre Schweitzer
47b9db9d02 [FASTFAT] Initialize cache if neded for changing volume label.
CORE-14654
2018-05-26 10:12:55 +02:00
Eric Kohl
4db10a404c [MSGINA] Clean-up the resource IDs and the dialog function names. 2018-05-26 01:54:58 +02:00
Pierre Schweitzer
f15afdbc43 [NTOSKRNL] Implement KeQueryValuesProcess().
And make use of it.
2018-05-25 21:40:39 +02:00
Pierre Schweitzer
b0b7437882 [NTOSKRNL] Make NtSetInformationJobObject() success for JobObjectExtendedLimitInformation
This fixes pip from Python 2.7.9 starting in ReactOS.
Though it doesn't work due to TLS issues.
2018-05-25 08:48:51 +02:00
Pierre Schweitzer
f300ca7245 [NTOSKRNL] Define required sizes with structures sizes 2018-05-25 08:48:51 +02:00
Pierre Schweitzer
69a7879e81 [SDK] Add more types for job objects information 2018-05-25 08:48:51 +02:00
Pierre Schweitzer
ffbd6995e6 [NTOSKRNL] Implement NtQueryInformationJobObject().
This is required by some Python2 applications
such as pip.exe
2018-05-25 08:48:51 +02:00
Pierre Schweitzer
fb9ffed1cd [SDK] Add a few types for job objects information 2018-05-25 08:48:51 +02:00
Stanislav Motylkov
1007a2e0f9 [MSPAINT] Fix call sequence in OnRButtonUp
This fixes unexpected undo action when zooming out with right mouse
click.

The call sequence in OnLButtonUp is already correct.

CORE-14539
2018-05-24 22:12:15 +02:00
Eric Kohl
f7c01906e7 [STORPORT] Enumerate attached devices
- Implement AcquireSpinlock, ReleaseSpinlock and GetExtendedFunctionTable notifications.
- Implement a bus scan routine, borrowed from scsiport.

Storport and storahci are now able to detect a disk device attached to a Virtual Box AHCI controller.
2018-05-24 11:39:47 +02:00
Stanislav Motylkov
8c726ae0d2 [MSPAINT] Fix divide by zero in drawZoomFrame
CORE-14539 #resolve
2018-05-23 23:40:28 +02:00
Katayama Hirofumi MZ
ed1c6bb006 [SHELL32] Add icons to the 'File Types' listview (#557)
This commit adds icons to the listview of the 'File Types' property sheet of Folder Options.
CORE-12906
2018-05-23 23:25:11 +02:00
Stanislav Motylkov
e27d5d2efc [MSPAINT] Fix copy-pasta bug (#562)
This would fix setting image height via Attributes dialog and help fixing CORE-14539.
2018-05-23 22:17:22 +02:00
Eric Kohl
ef9cfec290 [MSGINA] Implement the Welcome text feature 2018-05-23 13:51:45 +02:00
Pierre Schweitzer
2cf9a69bce [NTOSKRNL] Addendum to 8a8cb4d: don't print uninit pointer. 2018-05-23 08:44:43 +02:00
Pierre Schweitzer
8a8cb4d890 [NTOSKRNL] Only consider SharedCacheMap value once ViewLock is acquired.
This avoids a really nasty race condition in our cache controler where
two concurrents could try to initialize cache on the same file.
This had two nasty effects: first shared map was purely leaked and erased
by the second one. And the private cache map, allocated on the first shared
cache map couldn't be freed and was leading to Mm BSOD (free in a middle of
a block).

This was often triggered while building ReactOS on ReactOS (with multi threads).
With that patch, I cannot crash anylonger while building ReactOS.

CORE-14634
2018-05-23 08:41:46 +02:00
Eric Kohl
39281f0f70 [MSGINA] Clear the password on logoff 2018-05-23 00:27:11 +02:00
Eric Kohl
8828567086 [MSGIINA] Make sure we do not leak bitmaps 2018-05-23 00:24:53 +02:00
Pierre Schweitzer
b4363068d1 [FASTFAT] Properly handle IRPs that can wait and these that cannot.
CORE-14634
2018-05-22 21:30:08 +02:00
Eric Kohl
8c5cf73018 [MSGINA] Always stop the automatic login after the first try
Fixes CORE-14643
2018-05-22 21:19:58 +02:00
Eric Kohl
46dcab7ab1 [WINLOGON] Ignore the CTRL+SHIFT+ESC hotkey when the session is not in the logged-on state
Should fix CORE-13478
2018-05-22 18:14:42 +02:00
Eric Kohl
47567abf27 [MSGINA] Do not try to impersonate the user on shutdown when we are already logged off 2018-05-22 17:35:33 +02:00
Eric Kohl
4c4c6e88b3 [MSGINA] Close the LSA handle on shutdown 2018-05-22 17:31:20 +02:00
Eric Kohl
bab4d87ac8 [MSGINA] Close the user token in WlxLogoff 2018-05-22 16:32:10 +02:00
Eric Kohl
c98b8dc98c [MSGINA] Rename context variable: Domain -> DomainName 2018-05-22 14:39:38 +02:00
Eric Kohl
1f0fe38634 [WINLOGON] Prevent shell restart when the user is logged off 2018-05-22 14:36:55 +02:00
Eric Kohl
b784c7bfba [BOOTDATA][MSGINA][SYSSETUP] Rename the DefaultDomain registry value to DefaultDomainName 2018-05-22 11:30:27 +02:00
Eric Kohl
665926d38b [MSGINA] Add the IgnoreShiftOverride feature again 2018-05-22 11:06:38 +02:00
Eric Kohl
0d308f4b6e [MSGINA] Simplify the auto logon code path
- Get rid of DoAutoLogon() and the AutoLogonState variable.
- Handle the auto logon in the normal logon code path instead.
- Set bAutoAdminLogon to FALSE on a successful login. This will prevent another automatic logon after a logoff.
- The IgnoreShiftOverride feature got lost by this change but I will add it again.
2018-05-21 16:29:02 +02:00
Pierre Schweitzer
3dc07c91f8 [WINLOGON] Fix build. 2018-05-21 11:33:02 +02:00
Eric Kohl
02f3cb5381 [WINLOGON] Close all dialog boxes on SAS
CORE-13593
2018-05-21 11:21:42 +02:00
Pierre Schweitzer
e9e14be661 [FASTFAT] Properly queue pending write IRPs.
Addendum to 30b836b
2018-05-21 10:41:59 +02:00
Pierre Schweitzer
30b836bf3f [FASTFAT] When extending a file, also lock the DirResource.
This avoids race conditions under high IOs and thus corruption on
the FS, or assertions failures in the kernel.
Easily triggered by building ReactOS on ReactOS ;-).
2018-05-21 10:30:14 +02:00
Eric Kohl
0fbaea843e [SETUPAPI] Add stubs for CM_Detect_Resource_Conflict and CM_Detect_Resource_Conflict_Ex 2018-05-21 02:30:35 +02:00
Hermès Bélusca-Maïto
1eca625839 [CONUTILS] Remove old code; modify an informative note. 2018-05-20 22:39:21 +02:00
Joachim Henze
cfb8f97968 [SDK] "0.4.10-dev" Starts here.
tag will be added in next commit.
2018-05-20 20:35:12 +02:00
Hermès Bélusca-Maïto
ddd03a8973 [CMD] Use string-safe call to build the new console title (possibly truncated, we don't care), avoiding any buffer overflow. Caught by David Quintana. 2018-05-20 19:57:43 +02:00
Hermès Bélusca-Maïto
7b618314c2 [USETUP] Remove now-unneeded file. 2018-05-20 19:27:57 +02:00
Hermès Bélusca-Maïto
cb679a8917 [BOOTDATA] Set the 'BootExecute' SMSS value to an empty value as we do not want AutoChk to start when booting the LiveCD. CORE-14633
Add also a missing closing quote.
2018-05-20 18:34:35 +02:00
Hermès Bélusca-Maïto
edc0aeb5a8 [SETUPAPI] Fix MSVC build; pathetic GCC/LD didn't see we were using two different prototypes for these functions. 2018-05-20 15:32:06 +02:00
Pierre Schweitzer
a10f6c7a0c [FASTFAT] Fail if allocating the stream FO fails. 2018-05-20 13:53:43 +02:00
Eric Kohl
b250eb5f3e [SAMSRV] SamrChangePasswordUser: Check StoredLmEmpty and StoredNtEmpty instead of checking StoredNtEmpty twice 2018-05-20 11:53:01 +02:00
Eric Kohl
d1c376f37d [SETUPAPI] Implement CM_Get_Resource_Conflict_Count and add stubs for CM_Get_Resource_Conflict_DetailsA/W 2018-05-20 11:48:39 +02:00
Pierre Schweitzer
f99f48045d [EVENTMSG] Add French translation. 2018-05-20 11:36:00 +02:00
Joachim Henze
6d5aae4865 [OLE32] Restore 4 cur files (+ note diff) to fix CORE-14608 2018-05-20 01:41:34 +02:00
Hermès Bélusca-Maïto
de87a936ce [NTOS] Demote an ASSERT to a mere DPRINT since we only support registry hives with cluster size == 1 in any case so far (other sizes are UNIMPLEMENTED!) 2018-05-19 22:07:06 +02:00
Eric Kohl
cee1817e06 [SETUPAPI] Implement CM_Free_Resource_Conflict_Handle() and CM_Query_Resource_Conflict_List() 2018-05-19 18:12:28 +02:00
Katayama Hirofumi MZ
82a5983504 [SHELL32] Allow deleting a file type/extension (#553)
CORE-12906
2018-05-19 16:12:11 +02:00
Eric Kohl
d7e40954d5 [SETUPAPI] Add CM_Free_Resource_Conflict_Handle and CM_Query_Resource_Conflict_List stubs 2018-05-19 15:14:30 +02:00
Pierre Schweitzer
7283f3cfd9 [FASTFAT] Addendum to d69f318 2018-05-19 13:46:34 +02:00
Eric Kohl
de824808b7 [USETUP] Use _wcstoui64() instead of atoi() to convert the partition size in order to prevent unexpected misinterpretation of leading zeroes. 2018-05-19 13:33:28 +02:00
Adam Słaboń
72ad0fe70b [TRANSLATION] Polish translation update (#554)
- Added translations for cmdutils (at, clip, comp, eventcreate, mode, taskkill, wmic) and zipfldr.
- Updated translations for cmdutils (reg), drwtsn32, mmc, eventvwr, shell32 and cpl applets (console, input).
2018-05-19 13:17:49 +02:00
Eric Kohl
76eeb35148 [BOOTDATA] Add the (still disabled) faeroese keyboard layout
CORE-13127
2018-05-19 12:41:37 +02:00
Eric Kohl
8a2cc3cdda [USETUP] Improved entering of partition size
Patch by Эдуард.

CORE-13249
2018-05-19 12:09:58 +02:00
Pierre Schweitzer
d69f31848e [FASTFAT] Misc. fixes spotted by Thomas. 2018-05-19 10:07:14 +02:00
Pierre Schweitzer
7c01587680 [FASTFAT] Completely rewrite support for dirty volumes.
Until now, our support for dirty volumes was totally broken
to a point where, on FAT32 volume, the dirty couldn't even
be written nor read from the disk.

This commit totally rewrites its handling, for both FAT16 and FAT32
so that it's now fully functionnal. Furthermore, it also gets
totally compatible with our vfatlib, and thus, autochk.
Now, on mount, FastFAT will check if the volume is dirty or not, and
autochk will be able to ask for a repair if dirty. vfatlib will
repair the volume and remove the dirty bit. So that, on next
reboot, the volume will be mounted clean.

As a reminder, the dirty bit is set immediately after mounting
the volume, so that, if you crash or have a powercut, autochk
will always attempt to repair your volume (with more or less,
that's FAT!).

If you want to experience without breaking your FAT volume,
just boot, open a cmd prompt and type: fsutil dirty set c:
and reboot!

CORE-13758
CORE-13760
CORE-13759
2018-05-18 23:05:05 +02:00
Pierre Schweitzer
efa75dd5b2 [FASTFAT] Allow locking system volume on boot.
This is a hack, and totally not the default behavior.
But it will allow autochk locking the boot volume in
order to verify it on boot, in case it would have
been improperly dismounted.

CORE-13759
2018-05-18 23:05:05 +02:00
Katayama Hirofumi MZ
bfb19dd251 [SHELL32] Fix usage of DeferWindowPos (fix of #544) (#552) 2018-05-18 22:27:22 +02:00
Mark Jansen
bb5db143f0 [DRWTSN32] Use GetCommandLineW for CommandLineToArgvW.
Spotted by Hermès
2018-05-18 18:27:36 +02:00
Pierre Schweitzer
a837694518 [FASTFAT] Uninit directory cache on last handle close.
CORE-14629
CORE-14557
2018-05-18 14:51:24 +02:00
Pierre Schweitzer
3c3ebe3320 [FASTFAT] Only initialize directory cache on use.
This avoids initializing cache directly on directory
open/create.
The advantage is we reduce the load on cache manager
and on memory manager by avoiding creating everytime
a stream file object, and initializing cache for it.

This will avoid initializing cache for started
applications 'current directory' which is just opened
for having a valid handle but no read/write is performed
in it, by default.

This is a step forward for autochk.

CORE-14629
2018-05-18 14:09:30 +02:00
Katayama Hirofumi MZ
f20bdf1994 [SHELL32] Add 'Create New Extension' IDD_NEWEXTENSION dialog (#544)
A 'Create New Extension' dialog is implemented, which enables the user to add a new file extension.
CORE-12906
2018-05-18 12:47:52 +02:00
Pierre Schweitzer
5d743b7bd7 [FASTFAT] When attaching our FCB to a FO, also set the VPB.
Spotted by Alex.
2018-05-18 10:30:52 +02:00
Wexpo Lyu
1d11d56d1a [TRANSLATION][DRWTSN32] Add zh-CN translation. (#549) 2018-05-17 19:57:57 +02:00
Wexpo Lyu
6b5f84dfcd [TRANSLATION][TASKMGR] Update Chinese Translation. 2018-05-17 19:56:48 +02:00
Serge Gautherie
6c9359221c [IPHLPAPI] ipstats_reactos: Review all TRACE/WARN calls
- Improve/Promote failures to ERR.
- Improve other TRACE calls.
2018-05-17 17:11:17 +01:00
Baruch Rutman
bf34d6bf8b [CHARMAP]Code improvements (#436)
* [CHARMAP][GETUNAME] Code improvements

Based on the code from nls2txt,
switches the linking from dynamic to static, also simplifies the code.
2018-05-17 16:18:57 +01:00
Serge Gautherie
0c683c264c [KMTEST] Check/Wait for start/stop of services to complete
This is cleaner behavior and lets report failures.

- Create KmtEnsureServiceState(),
  called at end of KmtStartService() and KmtStopService().
- Create KmtGetServiceStateAsString(),
  called from KmtEnsureServiceState().

ROSTESTS-263
2018-05-17 16:17:36 +01:00
Peter Wathall
ae9cc6bb52 Fixed typo 2018-05-17 16:15:25 +01:00
Peter Wathall
6412253d44 Fixed typo 2018-05-17 16:15:25 +01:00
Peter Wathall
3a3a4f7970 Fixed typo 2018-05-17 16:15:25 +01:00
Pierre Schweitzer
d37280efaa [FASTFAT] Deny dismounting system volume or a volume with a pagefile 2018-05-16 21:45:35 +02:00
Eric Kohl
7c3cff3a68 [USETUP] Remove the WIN32 support because usetup is a native-only application 2018-05-15 23:35:17 +02:00
Eric Kohl
4038773f45 [USETUP] Disable install path test that may tests 2018-05-15 22:58:34 +02:00
Eric Kohl
1b323ff2f4 [USETUP] Remove unused VolumeLabel and FileSystemName from the PARTENTRY type 2018-05-15 20:02:04 +02:00
Eric Kohl
3ce0c5d48b [USETUP] Get rid of the interface directory because we support text-mode only 2018-05-15 19:47:52 +02:00
Eric Kohl
849fe9f4eb [USETUP] Simplify the unattended code path in the install directory page and verify the unattended install path. 2018-05-15 18:11:12 +02:00
Eric Kohl
16daf6700a [USETUP] Improve the install path checks
- Path must not contain whitespace characters.
- Path must be at least 2 characters long.
- Path must start with a backslash.
- Path must not end with a backslash.
- Path components must not end with a dot.

CORE-9529
2018-05-15 15:45:31 +02:00
Eric Kohl
3bf2f30cf2 [USETUP] Add support for HOME, END, DEL, LEFT and RIGHT keys to partition size and install path edit fields.
CORE-13975
2018-05-15 11:28:33 +02:00
Eric Kohl
7e9b628bb8 [USETUP] Fix the name of the backspace key in the german translation
CORE-14006
2018-05-14 23:35:48 +02:00
Thomas Faber
ccaf7b24c3 [NDIS] Fix parameter order when calling ResetHandler. CORE-14624 2018-05-14 18:17:52 +02:00
Hermès Bélusca-Maïto
ebe3d5273e [CLIPBRD] Improvements for the Clipboard Viewer.
- Improve the scrolling support for bitmaps, DIBs and text formats.
  This completes the work started in CORE-10679 by Ricardo Hanke.
  Includes scrolling with the keyboard and the mouse wheel.
- Add support for the CF_DSP* clipboard formats, as well as CF_TEXT
  and CF_OEMTEXT.
- Add support for owner-display clipboard format CF_OWNERDISPLAY.
- Realize any palette found in the clipboard (CF_PALETTE) before
  displaying the clipboard data format we want.
- Remove dead code.
- Update the file headers.
2018-05-13 22:25:55 +02:00
Andrew Cook
5a00192870 Add virtio drivers to reactos.dff.in
qxl has some visual glitches, viostor loads but it seems reactos
doesn't support scsi disks yet
2018-05-13 22:24:41 +02:00
Katayama Hirofumi MZ
2e96d85133 [SHELL32] In #543, I forgot sq-AL.rc and sv-SE.rc 2018-05-12 17:09:59 +02:00
Katayama Hirofumi MZ
2b0238a48a [shell32] add some control IDs for IDD_FOLDER_OPTIONS_FILETYPES 2018-05-12 13:47:09 +02:00
Mark Jansen
60a1006d0f [LDR] Initial verifier implementation 2018-05-12 13:35:10 +02:00
Mark Jansen
ad8a2edd85 [VERIFIER] Add skeleton provider. 2018-05-12 13:35:09 +02:00
Mark Jansen
84d7db2c57 [SDK] Add initial verifier header. 2018-05-12 13:34:36 +02:00
Mark Jansen
5a68fbeb43 [SDK] Correct NtGlobalFlag names. 2018-05-12 13:34:24 +02:00
Eric Kohl
35bd6571bd [SETUPAPI] SetupDiCallClassInstaller: Use the class GUID enclosed in curly brackets as a sub key name to retrieve the class co-installer. 2018-05-12 12:42:56 +02:00
Eric Kohl
abf9bd2d68 [BOOTDATA] Register the CriticalDeviceCoInstaller for the keyboard device class 2018-05-12 12:38:27 +02:00
Pierre Schweitzer
38078335b9 [FASTFAT] Implement support for stack overflow in read operations.
Before performing a read operation, FastFAT driver will
attempt to compute whether it would run out of stack
during the operation. If so, instead of attempting the
operation in the current thread, it will post the read
request to the overflow thread.

This should help with the regressions brought in by
94ead99e0c.

CORE-14601
2018-05-12 12:03:18 +02:00
Thomas Faber
0ce31759d0 [USBPORT] Fix x64 build. 2018-05-12 10:11:21 +02:00
Bișoc George
337e7322a6 [INETCPL] Fix a typo in Romanian resource file 2018-05-11 23:34:52 +02:00
Vadim Galyant
c89a190ea6 [USBPORT][USBOHCI_NEW] Avoid using pointers for physical addresses. 2018-05-11 15:46:25 +02:00
Thomas Faber
837411e292 [USBOHCI_NEW] Fix build. 2018-05-11 15:44:19 +02:00
Eric Kohl
c2089d5319 [BOOTDATA] Add settings for the Latvian (QUERTY) keyboard layout (disabled) 2018-05-10 17:13:04 +02:00
Eric Kohl
02fbc6c51b [USETUP] Use an existing latvian keyboard layout
Use the existing Latvian keyboard layout instead of the Latvian (QUERTY) keyboard layout, which it not implemented yet.

CORE-14561
2018-05-10 16:18:04 +02:00
Eric Kohl
6ca124323e [BOOTDATA] Remove superfluous quotation marks 2018-05-10 16:03:59 +02:00
Pierre Schweitzer
7eca874824 [NTOSKRNL] Fix FsRtlStackOverflow work item free.
Oneliner of the day... This typo just prevented the
whole feature to work properly. Because any allocated
work item would miserably fail to be freed.

This will obviously help real world FSD relying on
StackOverflow worker from FsRtl to work better!

CORE-14611
2018-05-10 10:49:17 +02:00
Pierre Schweitzer
7662858670 [AUTOCHK] Statically link to FS libs.
This will help reducing the number of handles open.

CORE-13759
2018-05-10 10:49:17 +02:00
Pierre Schweitzer
935dcd64a5 [FSLIB] Add headers for our FS libs.
CORE-13759
2018-05-10 10:49:17 +02:00
Bișoc George
96c3d8d9eb [COMCTL32] Update Romanian translation (#538) 2018-05-08 23:06:33 +02:00
Serge Gautherie
f6a4ec8041 [APPSHIM_APITEST] Fix a Clang-Cl warning about n
- "warning: comparison of unsigned expression >= 0 is always true [-Wtautological-unsigned-zero-compare]"

CORE-14306
2018-05-08 21:36:26 +02:00
Alexander Shaposhnikov
33cc014cf5 Reflect latest release versions in README.md
Should have updated this a month ago, oops!
2018-05-08 10:24:26 +03:00
Serge Gautherie
627f3dc725 [DEVMGR] Fix a Clang-Cl warning about DriverInfoDetailData.SectionName
"warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]"

CORE-14306
2018-05-07 14:00:41 +02:00
Eric Kohl
12bdbe5710 [IDL][NETAPI32][SRVSVC] Hack around another midl/rpcrt4 bug
NETAPI32: Get rid of the old WINE NetServerGetInfo and replace it by a proper call to NetrServerGetInfo.
SRVSVC: Implement parts of NetrServerGetInfo.
srvsvc.idl: Hack around a bug in midl or rpcrt4. They are not able to handle a pointer to a union of pointers to structs. A pointer to a union of structs works a advertised.
2018-05-06 16:49:24 +02:00
Thomas Faber
93edd2a185 [IPHLPAPI_APITEST] Avoid crash on ROS and failure on Windows. CORE-14411
- Make the reply buffer for IcmpSendEcho large enough to hold the reply,
  even when testing a smaller size. This avoids a buffer overflow with ROS's
  broken implementation.
- Avoid unnecessary initialization.
- Fix IcmpSendEcho return value check to succeed on Win2003.
- Don't free a string literal in the GetInterfaceName test.
2018-05-06 08:36:19 +02:00
Hermès Bélusca-Maïto
34b0f3e4f8 [BOOTDATA][SHELL32] Add some recognized file extensions (.db, .efi, .nls, .ocx, .tlb, .nt), and update some reported MIME types.
CORE-11308
2018-05-05 22:20:21 +02:00
Eric Kohl
c7994ca74f [IDL] srvsvc.idl: Fix the definition of Opnum29NotUsedOnWire
Opnum29NotUsedOnWire is actually called NetrServerSetServiceBits.
See:
http://l.wzm.me/_security/internet/_internet/WinServices/ch04s07s08.html
and https://git.samba.org/?p=samba.git;a=blob;f=librpc/idl/srvsvc.idl;h=db804e58c01f3392c4ec6eb30643c36bcb8be683;hb=HEAD
2018-05-05 15:34:43 +02:00
Hermès Bélusca-Maïto
2b3fd31bc5 [CONUTILS] Use the currently active console codepage to output text to files. If you want to output UTF-8 run "chcp 65001" before.
CORE-12122
2018-05-05 01:37:30 +02:00
Serge Gautherie
444553c7f0 [DESK.CPL] Fix a Clang-Cl warning about "LogPixels"
"warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]"

CORE-14306
2018-05-04 22:02:48 +02:00
Serge Gautherie
5ca037d5f6 [UMPNPMGR] Fix a Clang-Cl warning about "CSConfigFlags"
"warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]"

CORE-14306
2018-05-04 22:02:24 +02:00
Robert Naumann
d6cebe736a [ZIPFLDR] Add German translation 2018-05-04 21:34:09 +02:00
Robert Naumann
9f9c961b41 [DRWTSN32] Add German translation 2018-05-04 21:34:09 +02:00
Serge Gautherie
b893124a20 [NTFS] Fix 2 Clang-Cl warnings about CurrentKey->IndexEntry->Flags
"warning: logical not is only applied to the left hand side of this bitwise operator [-Wlogical-not-parentheses]"

CORE-14306
2018-05-04 08:08:45 +02:00
Wexpo Lyu
b8a3f0eeee [REACTOS] Update simplified chinese translation (#529)
Minor updates fixing grammar, spacing and typos.
2018-05-03 11:53:19 +02:00
Serge Gautherie
7326dc03b6 [CMAKE] USE_CLANG_CL: Add "-Wno-parentheses-equality"
Silence some "code style" warnings.

CORE-14306
2018-05-03 08:12:17 +02:00
Serge Gautherie
8c312fe7e1 [ADVAPI32] Fix 2 TRACE() format copypastas. 2018-05-03 08:10:43 +02:00
Pierre Schweitzer
65e29b4b1f [NTOSKRNL] Optimize a bit deferred writes.
In the lazy writer run, first post items that are queued for this.
Only then, start executing deferred writes if any.
If there were any, reschedule immediately a lazy writer run, to keep
Cc warm and to make it unqueue write faster in case of high IOs situation.
To make second lazy writer run happen faster, we keep our state active to
use short delay (1s) instead of standard idle (3s).
2018-05-02 23:33:45 +02:00
Eric Kohl
db60cd219c [ADVAPI32] SEH-protext the calls to service control handlers
ScControlService:
- SEH-protext the calls to service control handlers.
- Return ERROR_EXCEPTION_IN_SERVICE if a service control handler throws an exception.
- Return ERROR_SERVICE_CANNOT_ACCEPT_CTRL if no service control handler has been registered for the service.
2018-05-02 23:24:26 +02:00
Wexpo Lyu
62a90470f8 [WINLOGON] Update simplified chinese translation (#528) 2018-05-02 14:12:59 +02:00
Hermès Bélusca-Maïto
44b5f652a5 [WINLOGON] Delimit the custom system shutdown message within a read-only edit control. 2018-05-02 00:24:11 +02:00
Hermès Bélusca-Maïto
f34a30fec4 [SHUTDOWN] Actually all shutdown.exe utilities from all Windows (>= XP) versions (and not just Vista+) support a comment string of up to 512, *EVEN IF* they mention in their help message that the comment can only be up to 127 characters long. I have really tested that ;-) (And what is more, shutdown's utility from Whistler support an arbitrary comment length!) So here I remove the code that imposes this limit and I just check for no more than 512 characters. I also fix an out-of-bounds check for argv. 2018-05-02 00:24:10 +02:00
Hermès Bélusca-Maïto
11f0e2c0f6 [MSGINA] Fix layout of the security dialog box; add some french translation. 2018-05-02 00:24:01 +02:00
Eric Kohl
fd090c6ca1 [SERVICES] Implement RI_ScSetServiceBitsA/W
- RI_ScSetServiceBitsA: Just call RI_ScSetServiceBitsW.
- RI_ScSetServiceBitsW: Store the service bits in the service list entry.
TODO: Merge all service bits in a global variable and pass it to the server service. Maybe use netapi.I_NetServerSetServiceBits(Ex)?
2018-05-01 21:33:37 +02:00
Hermès Bélusca-Maïto
73f799629b [TRANSLATION] Minor translation update. 2018-05-01 17:45:06 +02:00
Hermès Bélusca-Maïto
bf88116252 [SHELL32] Fix the layout of the Run/Execute dialog for many languages.
French fix covers CORE-12548.
2018-05-01 17:45:03 +02:00
Hermès Bélusca-Maïto
2feea26d4c [README] Restore the UTF-8 BOM as it otherwise does not behave well with
ReactOS' Notepad.

This reverts commit 3d012a4405.
2018-05-01 17:44:54 +02:00
Eric Kohl
027904b441 [SRVSVC][WKSSVC] Server and workstation service set their service bit when they are running 2018-05-01 16:37:48 +02:00
Eric Kohl
1362983bb7 [IDL] Fix redefinition of server types when lmserver.h is included too 2018-05-01 16:15:52 +02:00
Eric Kohl
ce0856099a [SDK] Improve lmserver.h
- Add _SERVER_TRANSPORT_INFO_1, _SERVER_TRANSPORT_INFO_2, and _SERVER_TRANSPORT_INFO_3 structs.
- Fix the calling convention of SetServiceBits().
2018-05-01 16:15:51 +02:00
Pierre Schweitzer
3b6d00eab9 [DRWTSN32] Add French translation. 2018-05-01 12:19:17 +02:00
Pierre Schweitzer
54c049bd6e [NTOKSNRL] Always flush dirty VACB.
Recent changes seem to show that it's not
required to be exclusive on VACB to be able
to flush it.

This commit goes with f2c44aa and fixes the
last issues going with copying huge files.
There are no longer BSODs (be it in Mm or Cc).
I could, with 750MB RAM extract a 2GB file from
a 53MB archive and copy a 2,5GB file from a VBox
share to the disk. Note that writes are often
deferred, so if copy works, it's not that fast for now.

Note that it also brings some beloved behavior from
Windows: copy times are totally unreliable now when
writes are deferred. Little remaining times when
actively copying, high remaining times when deferred
writes in action. And goes between both... Sorry! ;-)

https://xkcd.com/612/

CORE-9696
CORE-11175
2018-04-30 22:24:30 +02:00
David Knapp
7673837a85 [SDK] Add description to MANUALLY_INITIATED_CRASH (#509) 2018-04-30 12:55:34 +02:00
Pierre Schweitzer
74c5d8b6bd [NTOSKRNL] Free unused VACB when required.
Same mechanism exists in Windows (even their Cc
is way different from ours...) where when Cc is
out of memory (in their case, out of VACB), we
will start scavenge old & unused VACB to free
some of the memory.

It's useful in case we're operating we big files
operations, we may run out of memory where to map
VACB for them, so start to scavenge VACB to free
some of that memory.

With this, I am able to install Qt 4.8.6 with 2,5GB of RAM,
scavenging acting when needed!

CORE-12081
CORE-14582
2018-04-30 12:10:24 +02:00
Pierre Schweitzer
cc54e51495 [NTOSKRNL] Unmark dirty first, and then write.
This will avoid trying to flush twice a dirty VACB under
high IOs pressure.

CORE-14584
2018-04-30 10:36:19 +02:00
Pierre Schweitzer
2a7d16727a [FASTFAT] Implement write IOs defering.
Before any write operation that would involve caching, ask
the cache controler whether writing would make it exceed its memory
consumption. If so, queue the write operation for later execution.

In case the write operation can wait, then, the FSD operation will be
halted until the write is allowed.

I could test it successfully by copying huge files from a FAT volume to
another. The write is halted until some portions of the file is written
to the disk.
I could also properly install Qt (SDK) on ReactOS with this and less than 1GB RAM:
- https://www.heisspiter.net/~Pierre/rostests/Qt_OS.png
- https://www.heisspiter.net/~Pierre/rostests/Qt_OS2.png

CORE-12081
CORE-14582
CORE-14313
2018-04-29 20:42:53 +02:00
Pierre Schweitzer
f2c44aa483 [NTOSKRNL] Fix lazy writer for in-use VACB.
Adjusting refcount and enabling lazy-write for pinned
VACB makes it actually more efficient, often purging
data to disk, reducing memory stress for the system.

This is required for defering writes.

This commit unfortunately (?) reverts a previous revert.

CORE-12081
CORE-14582
CORE-14313
2018-04-29 20:42:53 +02:00
Hermès Bélusca-Maïto
3055afce81 [MODE] Improve the way the DOS device statuses are enumerated via the "mode" command (without parameters). 2018-04-29 19:36:13 +02:00
Hermès Bélusca-Maïto
37deb7593e [WINLOGON] Update french translation of the system shutdown dialog. 2018-04-29 18:02:41 +02:00
Eric Kohl
153c645b2c [WINLOGON] Add german translation of the system shutdown dialog 2018-04-29 17:44:41 +02:00
Eric Kohl
ec2bfa2e11 [WINLOGON] Localize the shutdown timeout 2018-04-29 17:09:37 +02:00
Hermès Bélusca-Maïto
84e78e6a15 [MODE] Use more translated strings. CORE-12178 2018-04-29 16:57:11 +02:00
Eric Kohl
b6ebd50d3f [SYSSETUP] Close the device key after the property sheet page has been released. 2018-04-29 15:41:38 +02:00
Bișoc George
6c16f12de5 [CALC][CLIPBRD][SOLITAIRE][SPIDER][NOTEPAD][REGEDIT][TASKMGR] Disable help menu/button 2018-04-29 15:24:11 +02:00
Eric Kohl
1cb019bd21 [SYSSETUP] Read driver settings from and write them to the registry
- Read the driver settings from the registry.
- Write the driver settings to the registry.
- Make the read-only edit control for the input buffer length look like a non-read-only one because it is controlled by the up-down control.
2018-04-29 14:55:57 +02:00
Pierre Schweitzer
00e843b1ed [FASTFAT] Reduce the number of local declaration. 2018-04-29 12:33:53 +02:00
Pierre Schweitzer
3dc4d408b2 [SDK] Enforce callback type for KdRosRegisterCliCallback(), KdRosDeregisterCliCallback(). 2018-04-29 12:33:14 +02:00
Pierre Schweitzer
fd8197645f [FASTFAT] Use KdRosRegisterCliCallback() to register in KDBG. 2018-04-29 12:23:18 +02:00
Pierre Schweitzer
de88611590 [SDK] Make KdRosRegisterCliCallback() return status from KdSystemDebugControl(). 2018-04-29 12:19:21 +02:00
Pierre Schweitzer
c5a35ecd37 [FASTFAT] Introduce a KDBG extension.
This is a PoC of what it's possible to realize thanks to an
already existing hack in ntoskrnl :-).
With this extension, on the kdb:> prompt, you're able to type
in commands that will be handled by the FastFAT driver and not
by the kernel, allowing internal debug, not possible otherwise.

So far, three commands exist:
- ?fat.vols: lists all the mounted volumes by FastFAT
- ?fat.files: lists all the files on a specific volume (with their attributes)
- ?fat.setdbgfile: allows watching on specifics files lifetime

This is obviously only the begin and could be greatly improved.

For instance, this is what allowed to debug CORE-14557
2018-04-29 12:15:11 +02:00
Hermès Bélusca-Maïto
cb20bf8c90 [WINLOGON] Usability enhancement for the RPC SystemShutdown functionality.
- Perform an immediate system shutdown if the timeout is zero, otherwise
  display the countdown shutdown dialog.
- Cleanup pShutdownParams->pszMessage as soon as the dialog goes away.
- It actually appears (tested on Windows 2000 and 2003) that sending
  WM_CLOSE messages from a user-mode app to the shutdown dialog really
  do nothing (and in particular does not cancel the shutdown!), so modify
  the code to take this fact into account.
2018-04-29 01:02:05 +02:00
Hermès Bélusca-Maïto
03c233bcd0 [CMD] Improve how the command prompt displays when one presses Ctrl-C/break after having pressed ENTER, or after a command has been run. 2018-04-29 00:57:16 +02:00
Hermès Bélusca-Maïto
a3b36f8d3e [CMD] Don't reset bCtrlBreak too early.
This allows to break commands such as:

C:\ReactOS\system32> for %f in (*.*) do dir

as one would expect: stop the currently running 'dir' and the 'for'.
"bCtrlBreak" doesn't need to be volatile too.
2018-04-29 00:53:49 +02:00
Hermès Bélusca-Maïto
6dd27bd467 [CMD] Use CheckCtrlBreak(). 2018-04-29 00:50:40 +02:00
James Woodcock
8b72fce3e1 [CMD] Use _T() rather than L to initialise TCHARS. 2018-04-28 22:16:59 +02:00
James Woodcock
d7e71357dc [CMD] Fix CTRL-C handling.
Using CTRL-C to cancel command line input would leave the prompt in
a state where the next command would be ignored.  For example:

dir<CTRL-C>
dir

would cause cmd.exe to ignore the second dir command.
2018-04-28 22:16:58 +02:00
James Woodcock
23de2099e0 [CMD] Don't pass CTRL-C to child processes.
CORE-11677

The standard Win32 Console Control Handler will give CTRL-C events to
processes spawned from cmd.exe. If cmd.exe calls GenerateConsolCtrlEvent()
then the child process will receive two CTRL-C events.
2018-04-28 22:16:50 +02:00
Pierre Schweitzer
94ead99e0c [FASTFAT] Don't leak directories FILE_OBJECT, FCB and cache entries.
Once a directory is crossed (opened or a child is opened), associated
FCB structure is created in FastFAT, but also a stream FO for caching.
Up to now, due to an extra reference taken by the stream file object,
even when the directory was no longer used, the directory was kept in
memory: the FCB was never deleted, the file object was never dereferenced,
and the cache never released.

The immediate effect of this bug is that our FAT driver was leaking every
directory that was used affecting the whole OS situation. In case of
directories intensive operation (like extraction the ReactOS source code
in ReactOS ;-)), we were just killin the whole OS RAM without any way to
release it and recover.

The other side effects: IOs were faster as half of the FS was always
permanant in RAM.

This commit fixes the issue by forcing the FSD to release the FO,
and the cache when a directory is no longer used, leading to its
destruction in RAM.
Downside: on IO intensive operation, expect slowdowns, obviously,
there's less caching now. But more efficient!

CORE-14557
2018-04-28 18:33:14 +02:00
Pierre Schweitzer
2ea6de8a42 [NTOSKRNL] Also try to extract name from FCB when leaking VACB 2018-04-27 19:01:35 +02:00
Pierre Schweitzer
43836b0fbb [NTOSKRNL] In !filecache, try to display FCB name
When no name is set in the file object, try to read the name
from the FCB. We only support FastFAT (ours) FCB for now.

This is clearly a hack, but for a kdbg command, so ;-)
2018-04-27 18:57:30 +02:00
Pierre Schweitzer
315f9a13d4 [FASTFAT] When allocating a FCB, set its node type code.
We set the same value as MS FastFAT driver for consistency.
2018-04-27 18:56:31 +02:00
Pierre Schweitzer
579a784e04 [NTOSKNRL] In case we leak a VACB, debug as much information as possible.
CORE-14578
2018-04-27 14:14:56 +02:00
Pierre Schweitzer
fcf83315dc [NTOSKRNL] Noisily dereference mapped VACB on cache release.
It seems that on process killing, some VACB may be deleted while
still mapped. With current reference counting, they will actually
not be deleted, but leaked, and an ASSERT will be triggered.

CORE-14578
2018-04-27 10:23:06 +02:00
Thomas Faber
708d26acf3 [MSXML3] Fix buffer overflow in BindStatusCallback_GetBindInfo. CORE-14570 2018-04-26 15:00:24 +02:00
Jason Johnson
054c11a02c Correctly bugcheck if we aren't returning a usermode thread (#506)
Cause a corresponding bug check to occur for the reason of the user context flag being zero (a system thread), instead of using DbgBreakPoint.
2018-04-24 23:07:02 +01:00
Peter Wathall
9e2dd8676a Removed unreachable line (#517)
The break statement was unnecessary because the goto on the line before it returns from the routine so it can never be reached
2018-04-24 21:35:23 +01:00
Eric Kohl
dd653de251 [SYSSETUP] PS2MousePropPageProvider: Use the UDN_DELTAPOS notification to change the input buffer size in steps of 10 2018-04-23 23:58:49 +02:00
Stanislav Motylkov
955048e50a [MSPAINT] Fix crash on zoom out
- Check the denominator for zero for both zoomed width and height.
- Do not allow to move zoom slider above possible position.
- Move commonly used `zoomTo` function into new header file.

CORE-14539
2018-04-23 20:11:43 +02:00
Eric Kohl
065e70048d [SYSSETUP] Initialize the property sheet page dialog and implement the Defaults button 2018-04-23 00:00:46 +02:00
Hermès Bélusca-Maïto
a55d7c692b [WIN32K] Implement UOI_FLAGS in NtUserGetObjectInformation(). Based from a patch by Jérôme Gardou.
CORE-13447 CORE-14422

This fixes closing nLite 1.4.9.3 (.NET2) application, as well as any
other program that expects that the interactive window station is
reported as being visible. I thank Mark Jansen and Joachim Henze for
help and testing.
2018-04-22 23:00:55 +02:00
Bișoc George
e445b305bb [CPL][CONSOLE] Mistake corrections 2018-04-22 22:52:48 +02:00
Hermès Bélusca-Maïto
da5dcdcbf2 [NULL] Additions for the Null driver.
- Allow the driver to be unloaded, as on Windows.
- Use a static fast IO dispatch table, instead of allocating one and
  risking any potential memory allocation failure.
- Update the file header.
2018-04-22 22:23:54 +02:00
Mark Jansen
63b6df6bc5 [SDB] Add a fix for Globulation 2 unloading / reloading an aux dll.
Reported in https://savannah.nongnu.org/bugs/?53219
2018-04-22 18:56:44 +02:00
Mark Jansen
8b15a5ecd7 [SDK][ACGENRAL] Add the shim IgnoreFreeLibrary 2018-04-22 18:52:00 +02:00
Mark Jansen
3551953c84 [XML2SDB] Add support for TAG_LINK_DATE and TAG_LINKER_VERSION. 2018-04-22 18:51:53 +02:00
Mark Jansen
2eaf526484 [SHIMLIB] Update helper functions, add ShimLib_StringNDuplicateA 2018-04-22 18:51:48 +02:00
Mark Jansen
0a5a0a3501 [APPSHIM_APITEST] Add a test for the shim IgnoreFreeLibrary 2018-04-22 18:51:21 +02:00
Eric Kohl
4970f92d6c [ZIPFLDR] Fix russian translation 2018-04-22 17:43:05 +02:00
Mark Jansen
b569195ecf [SHELL32] Partially sync SHGetFileInfo with wine to improve folder type names.
CORE-14542
2018-04-22 17:38:44 +02:00
Mark Jansen
fd0b834a0a [ZIPFLDR] Various usability improvements
- Take the user-entered folder into account
- Hide size / ratio for folders
CORE-14543
CORE-14542
2018-04-22 17:38:44 +02:00
Mark Jansen
2c90194ae4 [ATL] Add COMMAND_HANDLER macro.
CORE-14543
2018-04-22 17:38:38 +02:00
Stanislav Motylkov
ae9fb8a68d [ZIPFLDR] Add Russian translation 2018-04-22 17:12:47 +02:00
Hermès Bélusca-Maïto
e616a456c0 [NTOSKRNL] Minor PnP enhancements.
- For non-PnP devices reported to the PnP manager through the
  IoReportDetectedDevice() function, store the corresponding
  service/driver name and (non-)legacy information inside their
  HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\Root\ entries.
- Drivers flagged as "DRVO_BUILTIN_DRIVER" (basically, only those
  created via a IoCreateDriver() call) have their "Service" name that
  contain "\Driver\", which should be stripped before being used in
  building e.g. the corresponding "DETECTEDxxx" PnP compatible IDs.
  CORE-14247

- Use explicit REG_OPTION_NON_VOLATILE flag where needed in the
  IopCreateDeviceKeyPath() calls.
- Save NULL-terminated REG-SZ string properties in the enumeration tree
  for each device enumerated inside \Enum\Root\.
- Always use upcased key name for the "LEGACY_***" elements in \Enum\Root\.
- Add a default "ConfigFlags" value for the legacy elements.
- Simplify few parts of code.
2018-04-22 16:52:45 +02:00
Hermès Bélusca-Maïto
2183e65c17 [ACPI] Fix the format of the (default hardcoded) "unique" instance ID. 2018-04-22 16:52:42 +02:00
Hermès Bélusca-Maïto
fa103197ad [NTOSKRNL] Whitespace fixes only. 2018-04-22 16:52:40 +02:00
Hermès Bélusca-Maïto
45012aa486 [NTOSKRNL] Set the DRVO_BUILTIN_DRIVER DriverObject flag when a built-in driver is created using IoCreateDriver(). 2018-04-22 16:52:38 +02:00
Hermès Bélusca-Maïto
635775d249 [NTOSKRNL] Set flags the standard way. 2018-04-22 16:52:36 +02:00
Doug Lyons
ea0cc1c783 [BROWSEUI] Apply a hack to prevent truncating the address bar text.
CORE-13003
2018-04-22 15:42:29 +02:00
Timo Kreuzer
e49ef251b7 [NTOS:MM] Fix ViewSize parameter passed to MiInsertVadEx() from MiCreatePebOrTeb()
The size is in bytes, not in pages! On x86 we got away with it, since PEB and TEB require only a single page and the 1 passed to MiInsertVadEx() was aligned up to PAGE_SIZE. On x64 this doesn't work, since the size is 2 pages.
2018-04-22 15:06:19 +02:00
Eric Kohl
e8f8536f9b [SYSSETUP] Add the property sheet page and initialize it
- Add the wheel detection option strings.
- Add the property sheet page and initialize the dialog.
2018-04-22 14:26:11 +02:00
Eric Kohl
183a4bfd9c [SYSSETUP] Add the PS/2-Mouse property page dialog 2018-04-22 11:59:47 +02:00
Hermès Bélusca-Maïto
3d012a4405 [README] Convert to UTF-8 without BOM. 2018-04-22 02:53:48 +02:00
Hermès Bélusca-Maïto
32d51c8607 [BOOTDATA] Increase the maximum size of the default event log files. 2018-04-22 02:53:44 +02:00
Hermès Bélusca-Maïto
10ed9621e4 [EVTLIB] Silence some DPRINTs. 2018-04-22 02:53:40 +02:00
Mark Jansen
a91899a6a1 [APISETS] Fix data forwarding.
Thanks to Timo for the help :)
2018-04-21 18:56:33 +02:00
Timo Kreuzer
01ae49857a [KERNEL32] Add Vista exports 2018-04-21 18:31:27 +02:00
Timo Kreuzer
87d3f1005b [KERNEL32] Go back to auto-numbering of export ordinals
Using static numbers was a bad idea in the first place, since we already deal with x64, which has different ordinals. Also @ will automatically do the same thing! It does not mean "no ordinal", it only means automatically apply incrementing numbers.
2018-04-21 18:31:27 +02:00
Timo Kreuzer
01df9a410c [SPEC2DEF] Implement support for different OS versions 2018-04-21 18:31:27 +02:00
Eric Kohl
a717eb373a [SYSETUP] Add property page provider stubs and register them 2018-04-21 14:15:23 +02:00
Giannis Adamopoulos
082cdfb9e8 [COMCTL32_APITEST] Add some button tests 2018-04-20 16:27:17 +02:00
Giannis Adamopoulos
b3fb8555bf [COMCTL32] Sync with Wine Staging 3.3. CORE-14434 2018-04-20 16:27:17 +02:00
Eric Kohl
aba6ce5b84 [ADVAPI32] Ignore the return value of the HandlerFunctionEx as well
Ignore the return value of the HandlerFunctionEx because we already ignore the return value of the HandlerFunction.
This fixes a winetest failure.
2018-04-19 06:09:57 +02:00
Serge Gautherie
6d912629f7 [LOCALSPL] Fix 2 Clang-Cl warnings about ullResult and "UserName"
- "warning: comparison of unsigned expression < 0 is always false [-Wtautological-unsigned-zero-compare]"
- "warning: logical not is only applied to the left hand side of this comparison [-Wlogical-not-parentheses]"

CORE-14306
2018-04-18 18:10:47 +02:00
Thomas Faber
d82ccaa2a2 [NTOS:PNP] Use pool tagging for DEVICE_ACTION_DATA. CORE-10456 2018-04-18 16:13:14 +02:00
Thomas Faber
121146e651 [NTOS:PNP] Rename IopDeviceRelations* to IopDeviceAction*. CORE-10456 2018-04-18 16:12:56 +02:00
Hermès Bélusca-Maïto
bc826532e3 [MODE] Use ConUtils functions for printing to screen. 2018-04-18 00:45:32 +02:00
Hermès Bélusca-Maïto
22bf169288 [MODE] Improve few points in the MODE command. Adapted from a patch by Katayama Hirofumi MZ. CORE-12894 2018-04-18 00:45:28 +02:00
Hermès Bélusca-Maïto
bf3589a280 [EVENTVWR] Additions for the Event Viewer.
CORE-11637, CORE-12269

- Implement support for remote connections to NT computers to view their
  event logs (and the event logs settings). For the moment the remote
  computer name specification is is only available via the command-line.
  Note that the paths to the event log files need also to be translated
  to network-share format.
- Implement loading and saving the settings of the event viewer.
- Implement showing/hiding the events description pane, the ListView
  grid, and whether or not to save the EventViewer settings.
- Handle hypertext link click handling for the RichEdit edit box of the
  events description dialog.
2018-04-17 23:17:48 +02:00
Hermès Bélusca-Maïto
0c32666852 [EVENTVWR] Code style only. 2018-04-17 23:17:44 +02:00
Pierre Schweitzer
fd3a6c1089 [NTOSKRNL] Properly reset VACB on free
CID 1434271
2018-04-15 22:52:53 +02:00
Pierre Schweitzer
953dc72dad [NTOSKRNL] Drop the VACB lock.
This has have several benefits for ReactOS Cc:
- It helps reducing potential deadlocks situations in Cc
- It speeds up ReactOS by reducing locks
- It gets us a bit closer to Windows VACB

CORE-14349
2018-04-15 22:52:53 +02:00
Pierre Schweitzer
40017a54f9 [NTOSKRNL] Use interlocked operations when dealing with map count.
CORE-14349
2018-04-15 22:52:53 +02:00
Pierre Schweitzer
1b672981e2 [NTOSKRNL] Map the VACB in kernel space before inserting it in lists.
The avoids race conditions where attempts to read from disk to
not fully initialized VACB were performed.
Also, added more debug prints in such situations.

CORE-14349
2018-04-15 22:52:53 +02:00
Pierre Schweitzer
42df4683d7 [NTOSKRNL] Add extra sanity checks for VACB lists.
We now always initialize list members from the VACB
and make sure the list entry has properly been removed
from the list before free.

CORE-14349
2018-04-15 22:52:53 +02:00
Thomas Faber
b54e5c689c [NTOS:MM] Do not map two pages into hyperspace in MiCopyFromUserPage. CORE-14548
Doing this is not only wrong because it acquires the same spinlock twice,
it also completely breaks the TLB flushing logic in MiMapPageInHyperSpace.
If the PTE with Offset 1 is still valid when a wrap-around to 0 happens,
the TLB flush on wrap-around will not clear the entry for this previous page.
After another loop around all hyperspace pages, page 1 is re-used but its
TLB entry has not been flushed, which may result into incorrect translation.
2018-04-15 20:07:21 +02:00
Li Keqing
ee8d82f29d [ZIPFLDR] Add Chinese(Simplified) translation 2018-04-15 15:54:45 +02:00
Eric Kohl
8eb64332e9 [NET] Implement the options in the NET CONFIG SERVER command 2018-04-15 15:32:31 +02:00
Pierre Schweitzer
74249053d9 [ZIPFLDR] Add French translation 2018-04-15 10:56:00 +02:00
Bișoc George
b3ff4f5f95 [WINLOGON] Romanian translation update 2018-04-14 21:11:48 +02:00
Joann Mõndresku
4405d41b1d [TRANSLATION][ZIPFLDR] Added Estonian translation 2018-04-14 21:10:59 +02:00
Bișoc George
e5de331954 [ZIPFLDR] Implement Romanian resource translation 2018-04-14 19:29:40 +02:00
Bișoc George
ee7c15445c [ZIPFLDR] Implement Italian resource translation 2018-04-14 19:29:40 +02:00
Bișoc George
55381f8164 [ZIPFLDR] Typo fix on constant 2018-04-14 19:29:40 +02:00
Bișoc George
84cc11d4c3 [ZIPFLDR] Support for multiple languages interface 2018-04-14 19:29:35 +02:00
Eric Kohl
ceb596f100 [NETMSG] Add netmsg resource dll with some lmerr messages 2018-04-14 18:56:09 +02:00
Eric Kohl
8787eba8ca [NET] Add help text for the NET GROUP command and improve the NET LOCALGROUP help text 2018-04-14 18:56:08 +02:00
Serge Gautherie
a8f1bea4b1 [KERNEL32] FlsAlloc(): Add a missing '\n' to a DPRINT1() 2018-04-14 16:07:29 +02:00
Mark Jansen
e8dcbcc61d [SHELL32] Sync CShellDispatch and family with wine.
Incorporates work from Ivan Rodionov.
CORE-12955
2018-04-14 15:47:13 +02:00
Pierre Schweitzer
fd87f0ad87 [SC] Don't leak service status info on success
CID 1434266
2018-04-14 15:40:26 +02:00
Eric Kohl
ff9c737acc [NET] Add help text for the NET LOCALGROUP command 2018-04-14 13:24:05 +02:00
Pierre Schweitzer
38791299ca [VFATLIB] Simplify in-memory boot sector copy.
So that, coverity is happy again.
NFC

CID 1434230, 1434233, 1434238, 1434243, 1434246, 1434272
2018-04-14 12:05:32 +02:00
Pierre Schweitzer
c7bba39afc [NTFS] When reading $I30 attribute fails, stop the rename operation.
This makes the function return the error instead of continuing and
performing use-after-frees operations.
This is likely to be a forgotten return!

CID 1434254, 1434268
2018-04-14 11:43:57 +02:00
Hermès Bélusca-Maïto
1551d2b136 [EVENTLOG] Register .evt file extension so that we can open event log files from the shell.
Take also the opportunity to fix a problematic "%1" in wordpad.exe command line.
2018-04-13 23:46:32 +02:00
Thomas Faber
fc9bc9390d [HAL] Reset the stack pointer to the stack frame when calling second-entry interrupt handlers. CORE-14449
Because we can encounter pending interrupts repeatedly,
HalpEndSoftwareInterrupt and HalEndSystemInterrupt already clean up the stack
space for their arguments (done for CORE-11123/CORE-14076).
However these functions are called from C functions such as KiInterruptDispatch
and HalpDispatchInterrupt2[ndEntry]. These callers also use up stack space,
and it is unknown how much.
To fix this, we simply reset the stack pointer to the location of the trap
frame, which is where it points during a first-level dispatch. This cleans
up the stack usage of any callers higher up, and is okay because a return
will happen through the trap frame anyway.

Dedicated to Pierre.
2018-04-13 09:04:52 +02:00
Hermès Bélusca-Maïto
bb03da981c [EVENTVWR] Additions to the Event Viewer.
- Don't hardcode a buffer length in ExpandEnvironmentStringsW() call.
- If no file name is associated to a log (ErrorLog->FileName == NULL),
  don't try to attempt looking at its file properties. This also allows
  avoiding a crash in the FindFirstFileW() call under certain conditions
  on Windows.
2018-04-13 01:02:20 +02:00
Mark Jansen
ab240d1b6d [NTDLL] Allow shimdata to override the process manifest. 2018-04-12 18:49:25 +02:00
Mark Jansen
bcb2613684 [SDB][APPHELP] Add ShimVersionNT data tags + read them in SdbPackAppCompatData 2018-04-12 18:49:25 +02:00
Mark Jansen
74bb9d5dc0 [APPHELP_APITEST] Add tests for Data tags 2018-04-12 18:49:25 +02:00
Mark Jansen
d74a3fecad [APPHELP] Implement SdbQueryData[Ex][TagID] 2018-04-12 18:49:25 +02:00
Mark Jansen
767fc4a6ad [XML2SDB] Add support for DATA in Layers. 2018-04-12 18:49:12 +02:00
Joachim Henze
083c3d992b [USER32] Fix compilation when USE_VERSIONED_CLASSES is not defined
Variable 'Status' would be set but not used otherwise in this case.
This commit will not fix or improve CORE-13278,
but was spotted when having a look at that.
2018-04-12 17:57:38 +02:00
Hermès Bélusca-Maïto
1afc87ee57 [EVENTVWR] Add support for a command-line for the Event Log Viewer.
CORE-12269

- Add support for '/?' and '/l:' switches. The former displays usage
  information. The latter allows to specify an event log file to load.
  Also one can specify the computer name from which one wants to
  retrieve events for display (work in progress).
- In EnumEventsThread(), move around the code that updates the
  application title and status bar, so that the selected event log name
  and loading status is always displayed first, while loading itself is
  in progress.
2018-04-12 02:45:37 +02:00
Hermès Bélusca-Maïto
eb2934df0e [EVENTVWR] Enhancements to the event log viewer.
- Initialize hwndMainWindow as it can be used before it is properly
  initialized with an existing window handle.
- Transform ShowLastWin32Error() to a more generic ShowWin32Error().
- Use iswdigit() instead of isdigit().
- Add extra heap buffer cleanup.
- Split OpenUserEventLog() in two: OpenUserEventLog() that displays
  an open-file dialog, and OpenUserEventLogFile() that does the real
  work of allocating internal structures and opening the log file using
  the event-log service. We also check that the file really exists
  before proceeding further.
- Force treeview repaint when *children* items are inserted, because
  otherwise the expand/collapse buttons do not display next to parent
  items (this problem happens on Windows too).
- Reshuffle the resource string IDs.
2018-04-12 02:32:37 +02:00
Eric Kohl
ef0f6861fb [NET] Replace remaining hard-coded strings by string resources for the NET STATISTICS command. 2018-04-12 00:58:30 +02:00
Joachim Henze
14f0e62f9a [WIN32SS][NTDDRAW] Fix ddraw palette regression CORE-13714
This nice patch of Jerome Gardou improves palette
when VBEMP & inbuilt Mesa is used for
Diablo II, MS Age Of Empires 1, Anno 1602
to the state we had in SVN r75060 and below.

We already committed this fix into 0.4.8-release before.
2018-04-11 15:39:54 +02:00
Amine Khaldi
dabc7c9e92 [KERNEL32/STRING] Sync sortkey.c with Wine Staging 3.3. CORE-14434 2018-04-11 12:49:52 +01:00
Amine Khaldi
cf14b6b2f5 [KERNEL32/STRING] Sync lcformat.c with Wine Staging 3.3. CORE-14434 2018-04-11 12:48:50 +01:00
Amine Khaldi
eaa9d0d12c [KERNEL32/STRING] Sync format_msg.c with Wine Staging 3.3. CORE-14434 2018-04-11 12:47:12 +01:00
Amine Khaldi
7f3e00c573 [KERNEL32/STRING] Sync fold.c with Wine Staging 3.3. CORE-14434 2018-04-11 12:45:42 +01:00
Amine Khaldi
d5064a6894 [KERNEL32] Missed this file. Fixes build. 2018-04-11 12:44:23 +01:00
Amine Khaldi
efc8966665 [KERNEL32/STRING] Import digitmap.c from, and sync casemap.c with, Wine Staging 3.3. CORE-14434 2018-04-11 12:39:39 +01:00
Amine Khaldi
6d262f1ee4 [KERNEL32/WINE] Sync res.c with Wine Staging 3.3. CORE-14434 2018-04-11 12:36:44 +01:00
Amine Khaldi
8d2519218f [KERNEL32/WINE] Sync profile.c with Wine Staging 3.3. CORE-14434 2018-04-11 12:32:54 +01:00
Amine Khaldi
2f1d080ce5 [KERNEL32/WINE] Sync lzexpand.c with Wine Staging 3.3. CORE-14434 2018-04-11 12:30:53 +01:00
Amine Khaldi
8296d6c1ef [WIDL] Sync with Wine Staging 3.3. CORE-14434 2018-04-11 12:29:04 +01:00
Amine Khaldi
6cbd6bd3ce [UNICODE] Sync with Wine Staging 3.3. CORE-14434 2018-04-11 12:25:43 +01:00
Adam Słaboń
abe6bbabfb [TRANSLATION] Polish translation update for drwtsn32, winlogon and usersrv. (#475) 2018-04-10 22:54:34 +02:00
Joann Mõndresku
6522bb42df [TRANSLATION][SHELL32] Corrected mistakes 2018-04-10 22:49:16 +02:00
Eric Kohl
2e60a17e8b [NET] Improve the NET STATISTICS command
- Add resource strings for the NET STATISTICS SERVER command.
- Convert and display the 'statistics since' time.
2018-04-10 21:34:00 +02:00
Paweł Cholewa
30eb3859f4 [TRANSLATION][MEDIA] Polish translation update (#479) 2018-04-10 15:50:03 +02:00
Mark Jansen
9aa26b9c23 [RTL] actctx: Use the new RosGetProcessCompatVersion. 2018-04-09 19:36:09 +02:00
Mark Jansen
d49004352f [NTDLL] Check the process manifest at startup for a compatibility section. 2018-04-09 19:36:09 +02:00
Giannis Adamopoulos
e195199a51 Fix build 2018-04-09 01:42:17 +03:00
Giannis Adamopoulos
8d3045622e [RTL] actctx.c: Use an alternative implicit activation context when an application is built for latest windows versions.
Instead of loading systemcompatible.manifest as the implicit activation context, load forwardcompatible.manifest
Add a new assembly containing all apisets called ReactOS.Apisets and make it a dependency to forwardcompatible.manifest
2018-04-09 01:28:43 +03:00
Mark Jansen
19912955f6 [RTL] Fixes for supportedOS close elements.
Imported from wine
f8cca44: ntdll: Allow closing tags for 'supportedOS' elements.
697d4a7: ntdll: Allow explicitly specified asm.v2 namespace for "trustInfo".
2018-04-09 00:07:31 +02:00
Eric Kohl
58b5cdc77c [NET] Add the NET STATISTICS command 2018-04-08 21:27:05 +02:00
Thomas Faber
3a0e654027 [CMAKE] Use configuration-specific names for files generated by CMake.
Fixes configuring with VSSolution.
2018-04-08 18:31:36 +02:00
Mark Jansen
dffd748dae [KERNEL32_VISTA] This function now comes from rtlfuncs.h 2018-04-08 17:47:43 +02:00
Mark Jansen
15affd19ee [APISETS] Update the script to take the current newline setting into account. 2018-04-08 17:30:44 +02:00
Mark Jansen
5aefc6f49a [KERNEL32_VISTA] Export InitializeCriticalSectionEx. 2018-04-08 17:30:44 +02:00
Mark Jansen
ac620c2e8e [KERNEL32] Implement FlsAlloc/FlsFree based on Wine's implementation. 2018-04-08 17:27:24 +02:00
Hermès Bélusca-Maïto
75e80632d1 [USERSRV] HardError: Fix compilation warning; fix few comments; fix the default empty window title string. 2018-04-08 16:15:56 +02:00
Bișoc George
10e4517ff8 [ZIPFLDR] Typo fix 2018-04-08 12:08:06 +02:00
Hermès Bélusca-Maïto
c62bccdda0 [EXPLORER] Implement the feature of cleanly shutting down the explorer shell when cancelling the shutdown-dialog while pressing the CTRL-ALT-SHIFT keys.
See the feature description in https://msdn.microsoft.com/en-us/library/windows/desktop/cc144064(v=vs.85).aspx
and the additional observations reported in CORE-14358 .
2018-04-08 00:36:56 +02:00
Hermès Bélusca-Maïto
6093abdebb [EXPLORER] Remove trailing whitespace. 2018-04-08 00:36:51 +02:00
Eric Kohl
4453f72ef8 [MSGINA] Add the shutdown reason dialog but keep it disabled by default 2018-04-07 22:26:46 +02:00
Hermès Bélusca-Maïto
40d7381e28 [BOOTDATA] Remove 'debugout.sys' mention since this driver has been removed in r26032 (ad07a1e5). 2018-04-07 22:13:42 +02:00
Hermès Bélusca-Maïto
eff4c2138d [EXPLORER] Remove double 'return' statement. Determining whether it should be HTBORDER or HTCLIENT is left as an exercise to the reader.
Spotted by 'mudhead'. CORE-14528
2018-04-07 19:06:22 +02:00
Hermès Bélusca-Maïto
29d56f2b29 [USERSRV] Hard-error improvements 7/7
- Use a more descriptive "unknown hard error" string than Windows' one.
- Improve the computation of the buffer size for the hard error message
  by using _vscwprintf() instead of just "guessing" which size the fully
  printf'ed message could be.
2018-04-07 18:48:13 +02:00
Hermès Bélusca-Maïto
2363fee51f [USERSRV] Hard-error improvements 6/7
Make UserpFormatMessages() return the possible timeout for the hard error; use it when displaying the hard error message boxes.
2018-04-07 18:48:12 +02:00
Hermès Bélusca-Maïto
08d70697a3 [USERSRV] Hard-error improvements 5/7 - Implement STATUS_SERVICE_NOTIFICATION handling.
- In UserpCaptureStringParameters(), always capture the parameter
  strings with a terminating NULL. Also, no need to convert them to
  ANSI if they are used with a STATUS_SERVICE_NOTIFICATION message.
- Determine within UserpFormatMessages() the message box flags to be
  used, either from the message parameters (if STATUS_SERVICE_NOTIFICATION)
  or from the proposed response options and message status severity.
  These flags are then used by both UserpShowInformationBalloon()/UserpShellHardError()
  and by UserpMessageBox().
- Improve Message validation (especially for STATUS_SERVICE_NOTIFICATION).
- Try to display the hard error status number if it's an unknown one.
2018-04-07 18:48:11 +02:00
Hermès Bélusca-Maïto
9ea2783e56 [USERSRV] Hard-error improvements 4/7
- Make UserpFormatMessages() always succeed by falling back on
  static string buffers if allocating large string buffers fail due to
  lack of memory. Then the hard error popups will have truncated
  strings, but at least something will be displayed instead of nothing,
  thus alerting the user that something went wrong anyway.
- Simplify a bit the code by moving the NtOpenProcess(),
  UserpCaptureStringParameters() and UserpFreeStringParameters() calls
  inside UserpFormatMessages(). This also allows simplifying its
  prototype.
2018-04-07 18:48:10 +02:00
Hermès Bélusca-Maïto
5a1a35ca5a [USERSRV] Hard-error improvements 3/7
- Cache localized hard error message components: the status severity,
  the system process name and the unhandled exception debug strings.
- Try not to fail too much. In particular, don't fail if a string could
  not be correctly captured in UserpCaptureStringParameters() (we then
  use a default empty string). The next aim is to make UserpFormatMessages()
  not failing at all.
- Use RtlStringCbPrintf(Ex)W where possible so that one can use counted
  (and not NULL-terminated) UNICODE_STRINGs where possible. This allows
  using counted resource strings without having to allocate memory.
- If available, prepend the window title of the application that
  triggered the hard error to the hard error message box caption.
2018-04-07 18:48:09 +02:00
Hermès Bélusca-Maïto
2b299f5fec [USERSRV] Hard-error improvements 2/7 - More failure path handling.
In particular do not always fail as soon as there is an error, because they may be the sign of an OS problem and this is precisely in this case that we want to display a hard-error.
2018-04-07 18:48:08 +02:00
Hermès Bélusca-Maïto
6718a1aa83 [USERSRV] Hard-error improvements 1/7
- Use hard-error captions depending on the status code severity.
- Improve handling of the STATUS_UNHANDLED_EXCEPTION error. Start
  implementing the display of the dialog button descriptions ("OK" to
  terminate the application; "Cancel" to debug the application).
- Add support for the "ErrorMode" and "ShellErrorMode" registry values
  under HKLM\System\CurrentControlSet\Control\Windows.
- Use MessageBoxTimeoutW() in UserpMessageBox() to support different
  message box timeouts.
- Log hard errors into the System event log.
2018-04-07 18:48:06 +02:00
Hermès Bélusca-Maïto
e6d7ed7080 [NDK] Increase MAXIMUM_HARDERROR_PARAMETERS for Win2k3 compatibility. 2018-04-07 18:48:00 +02:00
Alexander Shaposhnikov
627739aed9 [RAPPS] Introduce 'SizeBytes' DB entry and use it for display
This will allow us to reduce the DB size a little by avoiding
duplication for each and every entry.
Original patch by JIRA user "swyter"

CORE-10310
2018-04-07 19:25:12 +03:00
Mark Jansen
da6a46c6ac [ZIPFLDR] Register the shell extension.
CORE-7684
2018-04-07 15:29:59 +02:00
Mark Jansen
c7e6a9d04b [ZIPFLDR] Initial implementation.
Icon by Jared Smudde
CORE-7684
2018-04-07 15:29:59 +02:00
Mark Jansen
5100859e06 [ZLIB] Add minizip as library.
CORE-7684
2018-04-07 15:29:59 +02:00
Mark Jansen
7fe78f2779 [SHELL32_APITEST] Show that our current SHCreateFileExtractIconW is incorrect.
CORE-14082
2018-04-07 15:29:59 +02:00
Mark Jansen
a69393205a [SHELL32] Partially implement SHCreateFileExtractIconW
CORE-14082
2018-04-07 15:29:58 +02:00
Mark Jansen
0d07967a27 [SHELL32] Initial partial IShellFolderViewCB implementation. 2018-04-07 15:29:53 +02:00
Mark Jansen
3f15a0d473 [APISETS] Add the initial set of auto-generated files.
CORE-13231
2018-04-07 14:50:59 +02:00
Mark Jansen
3ff8f1bb09 [APISETS] Introduce a script that will generate apisets based on wine apisets.
Functions that are present in ReactOS will be forwarded, the rest stubbed.
CORE-13231
2018-04-07 14:50:58 +02:00
Mark Jansen
547240efd5 [SDK] Remove some unused includes in stubs.h
CORE-13231
2018-04-07 14:50:42 +02:00
Serge Gautherie
6618a2fd2c [NTOS:CC] Use UNIMPLEMENTED_ONCE instead of custom code
- Rewrite e319f85e67.
2018-04-07 12:00:10 +02:00
Serge Gautherie
c704cf5f87 [SDK:REACTOS] Define UNIMPLEMENTED_ONCE for "!DBG && _MSC_VER" too
- Addendum to 81eb3bbceb.
- Merge "_MSC_VER" and "!_MSC_VER" cases, to prevent such a mistake.
2018-04-07 12:00:10 +02:00
Mark Jansen
a5f12908df [NTOSKRNL] Fix IopValidateID using uninitialized var, reset SeparatorsCount in the MultiSz case. 2018-04-05 22:06:31 +02:00
Timo Kreuzer
6b1ca75899 [REACTOS] Fix 64 bit build (#465)
* [HAL] Simplify HalpReboot() and make it portable
* [NTOS:MM] Cast constant to PVOID
* [BINPATCH] Fix 64 bit build
* [VFDDRV] Fix 64 bit build and buffer overruns
* [USBOHCI] Fix structure alignment issues
* [ATL_APITEST] Fix 64 bit build
* [XDK] Update unwind structures in winnt.h
* [NTDLL_APITEST] Fix 64 bit build
* [NTDLL_WINETEST] Fix 64 bit build
* [TFTPD] Fix x64 build
* [USBPORT] Fix a C_ASSERT
* [DSOUND] Fix x64 build
* [HAL] Remove obsolete GetPteAddress() macro
2018-04-03 15:13:17 -06:00
Eric Kohl
d5f744ff31 [MSGINA] Fix the SAS dialog
- Make the "Press Crtl-Alt-Delete..." text control as wide as possible so that the text will fit in one line for all languages.
- Make the albaninan SAS dialog look like the SAS dialog for the other languages.
2018-04-03 22:32:10 +02:00
Amine Khaldi
c63fc7f345 [XINPUT1_3_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:52:18 +01:00
Amine Khaldi
3c774903aa [WSCRIPT_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:51:45 +01:00
Amine Khaldi
67c66593ea [WS2_32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:51:13 +01:00
Amine Khaldi
1c6244081e [WINMM_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:50:40 +01:00
Amine Khaldi
d558fc75a2 [USER32_WINETEST] Sync everything except win.c with Wine Staging 3.3. CORE-14434 2018-04-03 13:49:56 +01:00
Amine Khaldi
47e04dae50 [PSDK] Add some missing WDA_NONE and WDA_MONITOR. CORE-14434 2018-04-03 13:48:43 +01:00
Amine Khaldi
0be033fe1d [SHELL32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:47:46 +01:00
Amine Khaldi
cdd41ac6c4 [SETUPAPI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:47:12 +01:00
Amine Khaldi
340679bd1a [SERVICES_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:46:36 +01:00
Amine Khaldi
33b28635b4 [SECUR32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:45:57 +01:00
Amine Khaldi
6d286a66c3 [RSAENH_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:45:23 +01:00
Amine Khaldi
0623a6f810 [PSAPI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:44:31 +01:00
Amine Khaldi
551f3b9656 [OPENGL32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:43:57 +01:00
Amine Khaldi
4ba4c4156a [NTDLL_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:43:22 +01:00
Amine Khaldi
1c9ac7a2d2 [MSVCRT_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:42:04 +01:00
Amine Khaldi
3479eb396c [LOCALSPL_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:40:29 +01:00
Amine Khaldi
ed41a4dee2 [KERNEL32_WINETEST] Sync everything except file.c and virtual.c with Wine Staging 3.3. CORE-14434 2018-04-03 13:39:42 +01:00
Amine Khaldi
4b456ff7cd [INCLUDE/WINE] Update winternl.h. CORE-14434 2018-04-03 13:38:27 +01:00
Amine Khaldi
1246f8b5e6 [PSDK][XDK] Add some missing definitions. CORE-14434 2018-04-03 13:35:01 +01:00
Amine Khaldi
845faec403 [HID_WINETEST] Import from Wine Staging 3.3. CORE-14434 2018-04-03 13:32:05 +01:00
Amine Khaldi
4049e52e79 [DDK] Import hidsdi.h from Wine Staging 3.3. CORE-14434 2018-04-03 13:30:30 +01:00
Amine Khaldi
ff449c5f6f [GDI32_WINETEST] Sync everything except dib.c with Wine Staging 3.3. CORE-14434 2018-04-03 13:28:13 +01:00
Amine Khaldi
a84a503c62 [DNSAPI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:26:14 +01:00
Amine Khaldi
f37104dadf [COMCTL32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-03 13:25:05 +01:00
Amine Khaldi
c3b4d356eb [PSDK] Add some missing BS_* definitions. CORE-14434 2018-04-03 13:24:07 +01:00
Amine Khaldi
0668b91e1b [APPVEYOR] Start with the MSVC x64 build so we can get to what breaks it a bit sooner. 2018-04-03 13:19:30 +01:00
Amine Khaldi
127d41715f [APPVEYOR] Add the MSVC x64 build. Dedicated to Timo. 2018-04-03 13:16:36 +01:00
Bișoc George
76c561e5f4 [CONSOLE] Italian translation update (#466)
- Strings translated
- Typo fixed
2018-04-03 12:58:54 +02:00
Alexander Shaposhnikov
a6d2172ccc [RAPPS] Use FTP in passive mode
This should finally fix FTP downloads in RAPPS.
2018-04-03 00:47:08 +03:00
Eric Kohl
3031de8eed [NET] Implement the NET CONFIG WORKSTATION command 2018-04-02 23:13:50 +02:00
Alexander Shaposhnikov
3261bbb7b9 [RAPPS] Fix FTP downloads 2018-04-02 23:55:05 +03:00
Hermès Bélusca-Maïto
4127024b0d [EXPLORER] Handle WM_CONTEXTMENU message in CNotifyToolbar and BN_CLICKED notification in CSysPagerWnd.
With these, we generate the WM_CONTEXTMENU and NIN_(KEY)SELECT
shell icon notifications that applications expect when they handle
shell notification icons with uVersion >= 3.

This fixes in particular the previously unresponsive icon of KVIrc 4.x,
and more generally *all* the notifiation icons of Qt applications.
CORE-10605 #resolve
2018-04-02 21:13:35 +02:00
Alexander Shaposhnikov
bb819f1528 [RAPPS] Update rapps .cab download link
This replaces old link to svn.reactos.org with rapps.reactos.org
which is a new stable location for RAPPS database and future community
website. That said, svn.reactos.org link will be kept for some time.

TODO: make this a configurable value.

CORE-14351
2018-04-02 22:11:11 +03:00
Eric Kohl
3318d8d5be [WINLOGON] Fix shutdown timeout format string for long timeout
- Use the "%d days" format for timeouts longer than a day.
- Fail if timeout is 10 years or longer.
- TODO: Replace format strings by resources. German WinXP uses "%d days" instead of "%d Tage". We can do better! ;-)
2018-04-02 19:09:13 +02:00
Joachim Henze
3d66048b16 [TRACERT] Use ConUtils lib and update de-DE.rc CORE-14265
Most likely this also improves formerly unprintable characters for
fr-FR, it-IT, ro-RO, ru-RU, zh-CN.
2018-04-02 18:10:31 +02:00
Hermès Bélusca-Maïto
2f108ac8a8 [EXPLORER] Add missing 'break' statements. Spotted by mudhead. CORE-14518 2018-04-02 16:12:25 +02:00
Hermès Bélusca-Maïto
2da4999011 [WINLOGON] Fix some dialog control dimensions. 2018-04-02 15:05:25 +02:00
Eric Kohl
925176af71 [NET] Reorganize and improve the help texts (3/X)
- Add help texts for the START and STOP commands.
- Add text for the CONFIG command.
2018-04-02 14:53:39 +02:00
Bișoc George
b51b99e766 [TRANSLATION][SERVMAN] Italian translation update (#463)
* [SERVMAN] Italian update translation

* [SERVMAN] Small grammatical typo fixed

* [SERVMAN] Word replaced

- "Accedi" would be more convenient than "Accedere"
2018-04-02 13:57:10 +02:00
Eric Kohl
9a6d4bf0c5 [WINLOGON] System shutdown dialog clean-up
- Replace the winlogon icon by the warning icon.
- Add more space for the main text.
- Move the shutdown time into a separate line to ensure it is always fully visible.
- Add more space for the shutdown message and keep the message empty by default.
- Clean up the resource IDs.
2018-04-02 13:33:41 +02:00
Eric Kohl
2ae4585250 [WINLOGON] Clean up part 2
- Replace the UNICODE_STRING usMessage by a PWSTR pszMessage.
- Use the "%02d:%02d:%02d" time format and get rid of the safe string printf because the string will NEVER be longer than 8 characters.
- Rename the timer id constant because it is NOT a resource id.
- Rename variables according to the coding style.
2018-04-02 12:47:15 +02:00
Thomas Faber
9e6f3ef12b [CMAKE] Avoid generator expresisons in install()'s RENAME argument. CORE-14509
This fixes rostests_install, and thus hopefully WHS-Testbot.
2018-04-02 10:07:38 +02:00
Thomas Faber
a67df65c4f [ADVAPI32_WINETEST] Revert service.c changes from 3c1b7834e1 to avoid testbot hangs. CORE-14521 CORE-14434 2018-04-02 10:03:46 +02:00
Eric Kohl
72dc173158 [WINLOGON] Clean up part 1
- Add empty lines to separate logical blocks of code.
- Add spaces according to our coding style.
- Move g_hShutdownDialog and g_bShuttingDown into the shutdown parameters struct.
- Pass a pointer to the shutdown parameters to the shutdown thread and the shutdown dialog and use the pointer instead of the global variables.
- Move the timer code into a separate function because it requires local variables.
2018-04-02 01:37:50 +02:00
Eric Kohl
1fac4b068f [WINLOGON] Missed this file 2018-04-02 00:42:15 +02:00
Eric Kohl
f50d7749d0 [WINLOGON] Move the system shutdown code into a separate file 2018-04-02 00:38:52 +02:00
Hermès Bélusca-Maïto
c54aaacc8e [NTOSKRNL] Formatting fix only. 2018-04-01 22:51:24 +02:00
Hermès Bélusca-Maïto
6cefd1242d [NTOSKRNL] Simplify NtRaiseHardError() by merging the terminating blocks.
- Return the status codes provided by the Ex(p)RaiseHardError() calls.
- Fix the return values in case of failure.
2018-04-01 22:50:56 +02:00
Hermès Bélusca-Maïto
ea390c2b3f [NTOSKRNL] ExRaiseHardError(): Protect strings copy to user-mode space inside a SEH block. 2018-04-01 22:50:44 +02:00
Hermès Bélusca-Maïto
842605e3ef [NTOSKRNL] Don't emit hard errors for the calling thread if hard errors have been disabled for this thread on user-mode side. 2018-04-01 22:50:33 +02:00
Hermès Bélusca-Maïto
3a0ecb3dc8 [NTOSKRNL] Don't hardcode flag values for DefaultHardErrorProcessing. 2018-04-01 22:50:16 +02:00
Hermès Bélusca-Maïto
1fadfea053 [NTOSKRNL] Update Doxygen descriptions for NtRaiseHardError, ExRaiseHardError, ExpRaiseHardError and NtSetDefaultHardErrorPort. 2018-04-01 22:39:32 +02:00
Hermès Bélusca-Maïto
f0729b30bb [NTOSKRNL] Forbid processes without the Tcb prvilege to perform a user-mode hard-error BSOD. 2018-04-01 22:39:31 +02:00
Hermès Bélusca-Maïto
ed06b843fb [NTOSKRNL] In addition to the hard-error port, reference also the process that handles the hard errors so that it doesn't disappear behind our back. On shutdown both the hard-error port and process are dereferenced. 2018-04-01 22:39:30 +02:00
alpha5056
7ca90b50de [WINLOGON] Implement BaseInitiateSystemShutdownEx(). (#458) 2018-04-01 19:39:41 +02:00
Ercan Ersoy
8c2e91897a [TRANSLATIONS] Update and add Turkish translations (#455)
- Added Turkish translations for winetests/GUI and localmon.
- Modified Turkish translations for usersrv, user32, localmon, logon,
  3dtext, kbswitch, winemine, spider, solitarie, clipbrd and charmap_new.
2018-04-01 19:27:08 +02:00
Kláben Szabolcs Bence (Tudi20)
a1e061499f [TRANSLATION][USERSRV] Add Hungarian Translation (#442) 2018-04-01 19:13:35 +02:00
Eric Kohl
ca9413ce30 [NET] Add the NET CONFIG (SERVER) command 2018-04-01 19:00:32 +02:00
Serge Gautherie
a0b5b47352 [WIN32SS:FRAMEBUF] Improve/Fix DrvSetPointerShape(), from r7864 (#457)
- Fix a copypasta.
- Remove dead code.

Thanks to mudhead, who spotted most of these.

NB:
This EXPERIMENTAL_MOUSE_CURSOR_SUPPORT code isn't compiled by default since r7865.

CORE-14511
2018-04-01 18:51:54 +02:00
Bișoc George
f745a97bfe [TRANSLATION][RAPPS] Translation update for Italian and Romanian (#460)
- Small Italian translation update;
- Translation update for Romanian;
- Small update (just two strings translated based on the latest RAPPS commits);
- Header E-mail changed.
2018-04-01 18:30:36 +02:00
Eric Kohl
fdc236c65d [NET] Reorganize and improve the help texts (2/X)
- Add missing help texts for HELP, HELPMSG and PAUSE commands.
2018-04-01 16:51:44 +02:00
Amine Khaldi
bae2bac613 [CMD_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:20:50 +01:00
Amine Khaldi
d5b576b271 [BROWSEUI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:20:15 +01:00
Amine Khaldi
3c1b7834e1 [ADVAPI32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:19:24 +01:00
Amine Khaldi
8da9b8d169 [ADVAPI32] Sync crypt_lmhash.c with Wine Staging 3.3. CORE-14434 2018-04-01 13:18:23 +01:00
Amine Khaldi
a3ff25c1d5 [ADVAPI32] Sync crypt_des.c with Wine Staging 3.3. CORE-14434 2018-04-01 13:17:45 +01:00
Amine Khaldi
d4a89f6cca [ADVAPI32] Sync crypt.c with Wine Staging 3.3. CORE-14434 2018-04-01 13:17:00 +01:00
Amine Khaldi
abc90fa5a6 [ADVAPI32] Sync cred.c with Wine Staging 3.3. CORE-14434 2018-04-01 13:16:11 +01:00
Amine Khaldi
10517de5e6 [STRMBASE] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:15:06 +01:00
Amine Khaldi
6e4ff4348a [MSIEXEC] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:13:47 +01:00
Amine Khaldi
f4ab01b670 [EXPAND] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:12:40 +01:00
Amine Khaldi
444338ae2e [RPCSS] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:11:47 +01:00
Amine Khaldi
905c9ea7b1 [WRITE] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:10:37 +01:00
Amine Khaldi
e289916aaa [WINHLP32] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:09:44 +01:00
Amine Khaldi
1e79d3bbbe [IEXPLORE] Sync with Wine Staging 3.3. CORE-14434 2018-04-01 13:08:41 +01:00
Amine Khaldi
b6f2c9fc5c [APPVEYOR] Clean up our build logs so we can focus on warnings and errors. 2018-04-01 13:07:09 +01:00
Eric Kohl
480cd1e60c [NET] Reorganize and improve the help texts (1/X)
- Move common texts into separate string resources.
- Add missing help texts for ACCOUNTS, COMPUTER, CONFIG and CONTINUE commands.
2018-04-01 12:23:57 +02:00
Hermès Bélusca-Maïto
dd311081be [TFTPD] Add the Open TFTP Server to build.
Note that it constitutes a nice test for iphlpapi.dll and afd.sys.
2018-03-31 17:57:22 +02:00
Hermès Bélusca-Maïto
a45713f4c2 [TFTPD] Fix compilation, and use the #define MAX_SERVERS where needed instead of hardcoding its value. 2018-03-31 17:07:48 +02:00
Hermès Bélusca-Maïto
af57aba104 [TFTPD] Fix bound checks for array cfig.hostRanges. Spotted by 'mudhead'.
CORE-14515
2018-03-31 17:07:45 +02:00
Hermès Bélusca-Maïto
2eb78afa7a [SC] Fix comparison logic for the allowed user-defined service control code interval. Caught by contributor 'mudhead'.
CORE-14514
2018-03-31 17:06:29 +02:00
Thomas Faber
536623950c [CMAKE] Fix command.com livecd.lst entry. CORE-14509
Spotted by Hermès.
2018-03-30 21:22:33 +02:00
Thomas Faber
99ba355e7f [CMAKE] Disallow use of LOCATION. CORE-14509 2018-03-30 20:28:27 +02:00
Thomas Faber
f9e1e23dab [CMAKE] Avoid use of the LOCATION property for asm16 files. CORE-14509
In particular, ntvdm needs to post-process command.com, so this adds
a BINARY_PATH property to such files instead.
2018-03-30 20:28:25 +02:00
Thomas Faber
07720ed9a8 [CMAKE] Avoid use of the LOCATION property in add_cd_file/add_rostests_file. CORE-14509 2018-03-30 20:28:23 +02:00
Thomas Faber
f6dea8b734 [CMAKE] Avoid some uses of the LOCATION target property. CORE-14509 2018-03-30 20:28:20 +02:00
Mark Jansen
96c0f7d341 Add initial test for IShellFolderViewCB 2018-03-30 19:46:24 +02:00
Thomas Faber
d96609a439 [CMAKE] Remove some anachronisms. 2018-03-30 18:52:14 +02:00
Bișoc George
9703ae9a08 [INETCPL] Italian translation update (#453) 2018-03-30 15:19:26 +02:00
Colin Finck
765280bf5f Merge PR #283 "[USBPORT] Transaction Translator (TT) support bringup" 2018-03-29 23:52:22 +02:00
Thomas Faber
851a554b59 [USBHUB_NEW] Fix USBH_CheckDeviceIDUnique return value. 2018-03-27 08:59:54 +02:00
Victor Perevertkin
65eabed2e1 [CRT] Fixed _tstat64 which wrongly set executable bits on files. CORE-10904
Replaced some string functions with their tchar.h analogs
2018-03-26 13:41:27 +02:00
Thomas Faber
2765bddffa [CRT] Various fixes to Wine file functions.
Import the following Wine commits:
* ea2798f1ce9 Iván Matellanes: msvcrt: _setmode should check if file descriptor is valid.
* 9b495caacfd Carlo Bramini: msvcrt: Call SetFilePointer() with correct parameters.
* 13f34481b26 Carlo Bramini: msvcrt: Use MSVCRT_xxx macros instead of the same ones from GLIBC.
* 781b069ed81 Piotr Caban: msvcrt: Don't close HANDLE if stdout or stderr is sharing it.
2018-03-26 13:35:02 +02:00
Thomas Faber
6aa8e3cc20 [CRT] Update file descriptor handling to match Wine (7/7). CORE-14504
Import Wine commits by Piotr Caban:
* 6ed69c107f8 msvcrt: Avoid using global critical section while allocating new file descriptors.
* 725e4733cf8 msvcrt: Remove no longer needed global lock from functions using fd critical sections.
2018-03-26 13:01:00 +02:00
Thomas Faber
27b79867ea [CRT] Update file descriptor handling to match Wine (6/7). CORE-14504
Import Wine commits by Piotr Caban:
* 417b6056877 msvcrt: Fix possible deadlock in dup2 function.
* e7fc2370885 msvcrt: Don't use fdend in create_io_inherit_block.
2018-03-26 13:00:49 +02:00
Thomas Faber
53864fcc5f [CRT] Update file descriptor handling to match Wine (5/7). CORE-14504
Import Wine commits by Piotr Caban:
* 86baccc9ae9 msvcrt: Get rid of fdtoh helper.
* bd6eaf918c5 msvcrt: Get rid of is_valid_fd helper.
2018-03-26 13:00:39 +02:00
Thomas Faber
bffd8201d0 [CRT] Update file descriptor handling to match Wine (4/7). CORE-14504
Import Wine commits by Piotr Caban:
* c7b0fb51543 msvcrt: Use fd critical section in _dup2.
* b052afd4afa msvcrt: Use fd critical section in msvcrt_free_fd.
* 16285f5700f msvcrt: Use fd critical section in read.
* 9ce2a8a60c1 msvcrt: Use fd critical section in create_io_inherit_block.
* f00b7f40584 msvcrt: Use fd critical section in _setmode.
* ba757eaec74 msvcrt: Use fd critical section in _write.
* eec7a565bec msvcrt: Don't lock __badioinfo.
2018-03-26 13:00:25 +02:00
Thomas Faber
c529e727d7 [CRT] Update file descriptor handling to match Wine (3/7). CORE-14504
Import Wine commits by Piotr Caban:
* 6c2d4f1092d msvcrt: Use fd critical section in _fstat64.
* 9278190d468 msvcrt: Use fd critical section in _futime64.
2018-03-26 13:00:15 +02:00
Thomas Faber
9eb1eae28c [CRT] Update file descriptor handling to match Wine (2/7). CORE-14504
Import Wine commits by Piotr Caban:
* 4508e665c07 msvcrt: Use fd critical section in _commit.
* afc6962a24a msvcrt: Use fd critical section in _close.
* 9a4cfbc3edc msvcrt: Use fd critical section in _eof.
* ffdd16cc0d7 msvcrt: Use fd critical section in _locking.
* fa6de597700 msvcrt: Use fd critical section in _lseeki64.
* f2f45d5fe67 msvcrt: Use fd critical section in _chsize_s.
2018-03-26 13:00:06 +02:00
Thomas Faber
25064fdf3c [CRT] Update file descriptor handling to match Wine (1/7). CORE-14504
Import Wine commits by Piotr Caban:
* 0c4cb6ce5d4 msvcrt: Initialize file descriptor critical section.
* 1d791f5db24 msvcrt: Rename msvcrt_get_ioinfo function.
2018-03-26 12:59:58 +02:00
Pierre Schweitzer
ffd524275e [NTOSKRNL] Properly delete VACB in CcRosCreateVacb() when mapping fails.
Spotted by Thomas.

CORE-14478
CORE-14502
2018-03-25 18:27:19 +02:00
Bișoc George
c9cda4cb37 [TRANSLATION][MPLAY32] Italian update translation (#448) 2018-03-25 17:33:07 +02:00
Eric Kohl
c177f3debd [devmgr] Partially implement additional buttons on driver page
Based on a patch by Jared Smudde.
- Add more space between controls
- Add german translation
- Disable unsupported buttons
CORE-10373
2018-03-25 16:21:45 +02:00
Hermès Bélusca-Maïto
19b18ce238 [MVDM] Update some of the file headers to their new versions. 2018-03-25 16:19:29 +02:00
Eric Kohl
29955aa231 [SNDVOL32] Create small speaker icons from the default sndvol32 icon 2018-03-25 14:50:02 +02:00
Amine Khaldi
8ac662291e [EXTRAC32] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:58:56 +01:00
Amine Khaldi
9e0ce10ccb [XCOPY_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:57:16 +01:00
Amine Khaldi
9be4c1ba35 [XCOPY] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:56:35 +01:00
Amine Khaldi
94b1980b6b [WMIC] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:55:09 +01:00
Amine Khaldi
a8d963ab0d [TASKKILL] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:54:34 +01:00
Amine Khaldi
4ce8df2ba6 [SCHTASKS] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:53:36 +01:00
Amine Khaldi
457c843251 [PSDK] Import taskschd.idl from Wine Staging 3.3. CORE-14434 2018-03-25 12:52:36 +01:00
Amine Khaldi
f0b579bd14 [REG_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:51:30 +01:00
Amine Khaldi
80c45b1f06 [REG] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:50:15 +01:00
Amine Khaldi
eae3333c2f [CSCRIPT][WSCRIPT] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:48:58 +01:00
Amine Khaldi
407c54bae3 [LOCALUI] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:47:19 +01:00
Amine Khaldi
88d3620955 [INETCPL] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:46:20 +01:00
Amine Khaldi
79a9b9f874 [XMLLITE_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:44:51 +01:00
Amine Khaldi
65ac457a58 [XMLLITE] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:44:23 +01:00
Amine Khaldi
150fba8dff [WUAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:43:17 +01:00
Amine Khaldi
ae27690742 [WTSAPI32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:42:24 +01:00
Amine Khaldi
e88e8daabf [WTSAPI32] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:41:55 +01:00
Amine Khaldi
96a173fcdf [WSHOM_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:41:06 +01:00
Amine Khaldi
6a5af78c49 [WSHOM.OCX] Sync with Wine Staging 3.3. CORE-14434 2018-03-25 12:40:20 +01:00
Eric Kohl
94435b53d7 [ADVAPI32] Revert unnecessary changes, clarify comments and clean-up inconsistencies 2018-03-25 12:03:07 +02:00
Eric Kohl
32bb592e12 [ADVAPI32] Improve remaining TRACE messages in service manager functions 2018-03-25 11:30:10 +02:00
Eric Kohl
d7e2b7a8e0 [ADVAPI32] Add or improve TRACE messages in a lot of service manager functions 2018-03-25 03:58:53 +02:00
Eric Kohl
51bbab834c [ADVAPI32] Add or improve TRACE messages in the service manager functions 2018-03-25 03:20:34 +02:00
Hermès Bélusca-Maïto
e4cd48813b [SDK] Add a header for the user-mode NT EventLog API. Addendum to commit dca4fd46 (SVN r71384). 2018-03-25 00:28:04 +01:00
Pierre Schweitzer
14b05e65ff [NTOSKRNL] Use interlocked operations for VACB reference counting.
CORE-14480
CORE-14285
2018-03-24 19:15:58 +01:00
Pierre Schweitzer
dea9c291ab [NTOSKRNL] Add a few asserts when mapping a VACB in kernel space
Also, reset VACB content when returning it to the lookaside list

CORE-14478
2018-03-24 19:15:58 +01:00
Mark Jansen
8aff426af0 [MSI] fix some defines
CORE-14501
2018-03-24 18:55:57 +01:00
Amine Khaldi
6b5e74cbab [WMVCORE] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:22:32 +01:00
Amine Khaldi
f6c122569e [WMIUTILS] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:21:41 +01:00
Amine Khaldi
e6368408c2 [WLDAP32] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:20:30 +01:00
Amine Khaldi
7756e32bcb [WINTRUST_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:19:42 +01:00
Amine Khaldi
95d5c4bed3 [WINTRUST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:18:57 +01:00
Amine Khaldi
ba5ae4df7d [WINSCARD] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:18:09 +01:00
Amine Khaldi
a5fc445e71 [WININET_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:17:33 +01:00
Amine Khaldi
bc01cef03a [WININET] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:17:01 +01:00
Amine Khaldi
13ce1b5f17 [WINHTTP_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:16:16 +01:00
Amine Khaldi
0530cb8bed [WINHTTP] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:15:44 +01:00
Amine Khaldi
ce9211a205 [WING32] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:14:55 +01:00
Amine Khaldi
8ebb0aa438 [WINEMP3.ACM] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:14:19 +01:00
Amine Khaldi
ecb6144602 [WBEMPROX_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:13:22 +01:00
Amine Khaldi
edccad14bf [WBEMPROX] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:12:50 +01:00
Amine Khaldi
12e94103e6 [WBEMDISP] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:12:02 +01:00
Amine Khaldi
dbca2b2f26 [VERSION_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:11:07 +01:00
Amine Khaldi
28928748f1 [VERSION] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:10:33 +01:00
Amine Khaldi
ff857de1ad [VBSCRIPT_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:09:43 +01:00
Amine Khaldi
9f8faabac0 [VBSCRIPT] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:09:01 +01:00
Amine Khaldi
79d934d0a1 [USP10_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:07:49 +01:00
Amine Khaldi
92666dbaa6 [USP10] Sync with Wine Staging 3.3. CORE-14434 2018-03-24 13:07:16 +01:00
Pierre Schweitzer
2b6df67f0a [NTOSKRNL] More asserts regarding reference count
CORE-14285
CORE-14480
2018-03-24 11:59:45 +01:00
Hermès Bélusca-Maïto
56fd088c8a [BOOTDATA] Now that our shell supports hard error balloons, tell winsrv that it can send these notifications to the shell. 2018-03-24 00:25:42 +01:00
Hermès Bélusca-Maïto
37afd9c371 [BOOTDATA] Set the event logs 'Retention' value to zero so that the events can always be overwritten when the logs are full. 2018-03-24 00:25:22 +01:00
Hermès Bélusca-Maïto
1a31889801 [CRT] Implement the missing CRT _sc(w)printf() functions. CORE-14497 2018-03-23 22:30:18 +01:00
Hermès Bélusca-Maïto
fd6e2d752d [CRT] Fix implementation of _vsc(w)printf() for native NT. 2018-03-23 22:03:35 +01:00
Amine Khaldi
7f95c14153 [URLMON_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:35:59 +01:00
Amine Khaldi
143d4fdbd2 [URLMON] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:35:23 +01:00
Amine Khaldi
06f94a685c [URL] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:34:38 +01:00
Amine Khaldi
49e5f26027 [UPDSPAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:34:04 +01:00
Amine Khaldi
f76ac9dc71 [TWAIN_32] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:33:24 +01:00
Amine Khaldi
302c4ae0ca [TRAFFIC] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:32:12 +01:00
Amine Khaldi
51fd824e21 [TAPI32] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:31:40 +01:00
Amine Khaldi
567f50fb3f [T2EMBED] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:30:57 +01:00
Amine Khaldi
640271bc37 [SXS] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:30:21 +01:00
Amine Khaldi
cd3274d64f [STI] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:29:23 +01:00
Amine Khaldi
f1d3793c86 [STDOLE32.TLB] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:28:23 +01:00
Amine Khaldi
b6a504349a [STDOLE2.TLB] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:27:45 +01:00
Amine Khaldi
02fe705e3e [SNMPAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:27:09 +01:00
Amine Khaldi
61c7c8217a [SLBCSP] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:26:28 +01:00
Amine Khaldi
73bf97c894 [SHFOLDER] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:25:46 +01:00
Amine Khaldi
2da768d403 [SHDOCVW_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:24:56 +01:00
Amine Khaldi
9fefb011f4 [SHDOCVW] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:24:25 +01:00
Amine Khaldi
1d85a7bfbd [SHDOCLC] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:23:29 +01:00
Amine Khaldi
22d7799b34 [SENSAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:22:47 +01:00
Amine Khaldi
24c1f25a26 [SCRRUN] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:22:03 +01:00
Amine Khaldi
e1d57446f8 [SCHANNEL_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:21:22 +01:00
Amine Khaldi
b5f897f219 [SCHANNEL] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:20:45 +01:00
Amine Khaldi
97ac90d7ca [SCCBASE] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:19:48 +01:00
Amine Khaldi
38405eaf48 [RSABASE] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:18:57 +01:00
Amine Khaldi
82ef7385a3 [RICHED32] Sync with Wine Staging 3.3. CORE-14434 2018-03-23 12:17:57 +01:00
Pierre Schweitzer
d7abae76b8 [KMTESTS:MM] Truncate file cache on uninitialize to avoid leaking a reference.
ROSTESTS-266
2018-03-22 22:35:19 +01:00
Eric Kohl
4916c4cfd5 [CMD] Correct the action on shorcut Ctrl-M
Patch by Jacob S. Preciado.

CORE-10142
2018-03-22 22:29:33 +01:00
Alexander Shaposhnikov
f9dd6dbe6d [CONTRIBUTING] Clean accidental garbage
Addendum to f50f983f45
2018-03-22 10:49:01 +02:00
Alexander Shaposhnikov
f50f983f45 [CONTRIBUTING] Fix typo 2018-03-22 10:44:01 +02:00
Kláben Szabolcs Bence (Tudi20)
b39df3259b [TRANSLATION][COMCTL32][COMDLG32] Hungarian fix + translation (#437) 2018-03-21 23:10:38 +01:00
Luo Yufan
ec110892bf [BROWSEUI] Update Simplified Chinese translation. (#432) 2018-03-21 22:42:24 +01:00
Li Keqing
5ddbd37371 [TRANSLATION] Update Simplified Chinese Translations (#417) 2018-03-21 22:27:04 +01:00
Nikita Krapivin
10645167b8 [I8042PRT] Enable keyboard clock explicitly (fixes Lenovo ACPI bug). CORE-14256 (#434) 2018-03-21 22:07:30 +01:00
Eric Kohl
9febc82acf [DHCPCSVC] Add the ability to stop the DHCP client
- Use a stop event to terminate the dispatch loop.
- Report to the services manager that the service can be stopped or shut-down while it is running.

CORE-14390
2018-03-21 21:07:26 +01:00
Mark Jansen
8b84b1c6b3 [AFD] Mark the socket as named pipe, so NtWriteFile actually knows what to do with it.
CORE-13067
2018-03-21 19:22:13 +01:00
Mark Jansen
9168226378 [AFD] Respond to FileFsDeviceInformation.
CORE-13067
2018-03-21 19:22:13 +01:00
Amine Khaldi
348381716e [RICHED20_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:17:51 +01:00
Amine Khaldi
056bdefe47 [RICHED20] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:17:10 +01:00
Amine Khaldi
38cccbd8a7 [RESUTILS] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:16:02 +01:00
Amine Khaldi
3cea71896c [RASAPI32] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:15:06 +01:00
Amine Khaldi
842783003a [QUERY] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:14:09 +01:00
Amine Khaldi
c851a1bf2e [QMGR_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:12:52 +01:00
Amine Khaldi
017748ce69 [QMGR] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:12:06 +01:00
Amine Khaldi
80b69aa034 [PSTOREC] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:11:14 +01:00
Amine Khaldi
e270fbfd8d [PROPSYS_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:10:09 +01:00
Amine Khaldi
3e3d28dfef [PROPSYS] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:09:31 +01:00
Amine Khaldi
94e293b6fd [PSDK] Update propvarutil.h. CORE-14434 2018-03-21 13:08:15 +01:00
Amine Khaldi
28a3cf7b47 [PRINTUI] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:07:10 +01:00
Amine Khaldi
c0e5146422 [PIDGEN] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:05:31 +01:00
Amine Khaldi
acca9f5810 [PDH] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:04:47 +01:00
Amine Khaldi
f03366e3eb [OLETHK32] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 13:00:35 +01:00
Amine Khaldi
6cca3488a9 [OLESVR32] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 12:59:37 +01:00
Amine Khaldi
b79d65111d [OLEPRO32] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 12:58:44 +01:00
Amine Khaldi
000789f420 [OLEDLG_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 12:56:46 +01:00
Amine Khaldi
8b391603d0 [OLEDLG] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 12:56:06 +01:00
Amine Khaldi
9d816efc05 [OLECLI32] Sync with Wine Staging 3.3. CORE-14434 2018-03-21 12:54:15 +01:00
Mark Jansen
47da433742 [WS2_32_APITEST] Add additional testcases.
CORE-13067
2018-03-20 22:20:12 +01:00
Amine Khaldi
f204f24c98 [INCLUDE/WINE] Addendum to bab6b90 for the MSVC build. 2018-03-20 13:09:18 +01:00
Amine Khaldi
b1433cb645 [OLEACC_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:40:39 +01:00
Amine Khaldi
493f429748 [OLEACC] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:39:58 +01:00
Amine Khaldi
66f35ef8c9 [OLE32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:38:58 +01:00
Amine Khaldi
c0f9087299 [OLE32] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:38:17 +01:00
Amine Khaldi
4ca633cc2a [ODBCCP32] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:37:14 +01:00
Amine Khaldi
f47d676d3f [ODBC32] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:36:12 +01:00
Amine Khaldi
8361200df0 [OBJSEL] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:35:24 +01:00
Amine Khaldi
f76b348cb6 [NTDSAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:34:21 +01:00
Amine Khaldi
9a992084a8 [NPPTOOLS] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:33:46 +01:00
Amine Khaldi
66f8e62269 [NETCFGX_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:32:58 +01:00
Amine Khaldi
434c1cef18 [NDDEAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:31:48 +01:00
Amine Khaldi
a88fe69790 [MSXML6] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:31:01 +01:00
Amine Khaldi
2404eddf88 [MSXML4] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:30:29 +01:00
Amine Khaldi
3662ed8775 [MSXML3_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:29:29 +01:00
Amine Khaldi
bab6b90fd9 [MSXML3] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:28:36 +01:00
Amine Khaldi
f0d16fc252 [MSXML2] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:27:15 +01:00
Amine Khaldi
e5f6578011 [MSXML] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:26:35 +01:00
Amine Khaldi
6067ff2f47 [LIBXSLT] Move documents.h and extra.h to the includes folder. CORE-14434 2018-03-20 12:25:26 +01:00
Amine Khaldi
c6d247b571 [MSVIDC32] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:22:39 +01:00
Amine Khaldi
48cc7814c2 [MSVFW32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:21:40 +01:00
Amine Khaldi
c1718e2712 [MSVFW32] Sync with Wine Staging 3.3. CORE-14434 2018-03-20 12:20:45 +01:00
Mark Jansen
3bf5349172 [WS2_32_APITEST] Add a test showing that GetFileType / _open_osfhandle should succeed.
CORE-13067
2018-03-19 22:35:21 +01:00
Eric Kohl
745ef8bf3a [SNDVOL32] Remove the TBS_AUTOTICKS style from the trackbars 2018-03-19 20:22:06 +01:00
Vadim Galyant
111e19f8a4 [NTOSKRNL] Adding IopValidateID() to test characters in PnP IDs (IRP_MN_QUERY_ID). (#341) 2018-03-19 14:04:17 +01:00
Mark Jansen
bc67bb3dd0 [EXPLORER] Do not force X86 in the manifest. 2018-03-19 09:44:25 +01:00
Thomas Faber
a17bf6f669 [NTOS:MM] Improve debug prints in MmCreateVirtualMappingUnsafe. CORE-14478 2018-03-18 23:49:48 +01:00
Pierre Schweitzer
1e579843bc [NTOSKNRL] Always reference a newly created VACB
This allows being consistent between newly created and looked up
so that VACB can always safely be released.

Should really help with reference issues.

CORE-14481
CORE-14480
CORE-14482
2018-03-18 18:16:55 +01:00
Thomas Faber
342c404c00 [OLEPRO32] Add missing stdole2 dependency. 2018-03-18 17:19:37 +01:00
Timo Kreuzer
3be4081607 [BOOTLIB] Fix 64 bit issues (#433) 2018-03-18 16:10:41 +01:00
Mark Jansen
8bbbab534a [APPHELP_APITEST] Fix some 64 bit issues. 2018-03-18 15:58:04 +01:00
Mark Jansen
775e2aea3c [DSOUND] Check arguments in IDirectSoundFullDuplex::Initialize.
This prevents a crash in winetest_dsound:duplex
2018-03-18 15:58:04 +01:00
Timo Kreuzer
2d9c88e0c5 [WIN32K] Fix 64 bit issues (#420)
- Fix ULONG/SIZE_T issues
- Use LOWORD/HIWORD
- Change a struct member to HANDLE
- Implement lstrlenW helper function
2018-03-18 15:53:52 +01:00
Eric Kohl
5b2ff8a3f9 [SNDVOL32] Add the ability to select the record mode by using the /r option and select the right mixer after changing the mixer preferences 2018-03-18 14:15:12 +01:00
Pierre Schweitzer
2a0e996c9d [NTOSKRNL] In CcRosInternalFreeVacb(), in case of invalid free, also print file name.
CORE-14481
CORE-14480
CORE-14482
2018-03-18 13:21:54 +01:00
Pierre Schweitzer
2fbba22789 [NTOSKRNL] In CcFlushCache(), release the VACB using CcRosReleaseVacb()
Instead of reimplementing it partially and wrongly.

CORE-14481
CORE-14480
CORE-14482
2018-03-18 13:21:54 +01:00
Amine Khaldi
da50a61f0f [MSTASK] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:39:13 +01:00
Amine Khaldi
b6fb6297ad [MSSIP32] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:38:07 +01:00
Amine Khaldi
3d03add49a [MSSIGN32] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:37:23 +01:00
Amine Khaldi
ad72601ed0 [MSRLE32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:36:35 +01:00
Amine Khaldi
b2b54264dc [MSRLE32] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:35:58 +01:00
Amine Khaldi
4aebe9e75d [MSPATCHA] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:35:08 +01:00
Amine Khaldi
bd13be0d6e [MSISYS.OCX] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:34:18 +01:00
Amine Khaldi
4b5f701d8a [MSISIP] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:33:33 +01:00
Amine Khaldi
034ec2e0fc [MSIMTF] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:32:52 +01:00
Amine Khaldi
c28484cc00 [MSIMG32] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:32:05 +01:00
Amine Khaldi
c994d6438c [MSGSM32.ACM] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:31:18 +01:00
Amine Khaldi
ff71b0673f [MSG711.ACM] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:30:33 +01:00
Amine Khaldi
7e99b3f17c [MSFTEDIT] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:29:15 +01:00
Amine Khaldi
897e19b0a6 [MSCTF] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:28:32 +01:00
Amine Khaldi
8123ffac58 [MSCMS] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:27:29 +01:00
Amine Khaldi
6244404e01 [MSCAT32] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:26:27 +01:00
Amine Khaldi
99cd8173f2 [MSADP32.ACM] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:25:31 +01:00
Amine Khaldi
a51fd57df1 [MSACM32.DRV] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:24:36 +01:00
Amine Khaldi
f302bfa196 [MSACM32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:23:28 +01:00
Amine Khaldi
168ccfac22 [MSACM32] Sync with Wine Staging 3.3. CORE-14434 2018-03-18 12:20:37 +01:00
Hermès Bélusca-Maïto
68430db462 [USER32] Fix GetWindowTextLength() blocking call using the same technique as in GetWindowText(). Fix indentation in GetWindowText(). 2018-03-17 23:47:16 +01:00
Robert Naumann
69acbe905a Update German translation (#438)
* [BROWSEUI] Update German translation

* [SHELL32] Update German translation

* [COMCTL32] Update German translation

* [COMDLG32] Update German Translation

* [SETUPAPI] Update German translation

* [EXPLORER] Update German translation
2018-03-17 22:48:16 +01:00
Mark Jansen
0dff328003 [NTPRINT_WINETEST] Remove a crashing test for a dll we don't have anymore. 2018-03-17 21:22:42 +01:00
Serge Gautherie
7f208124c9 [NTDLL_APITEST] Fix/Extend ApiTest NtAllocateVirtualMemory (#207)
* Fix 1 failure on both WS03 and ReactOS.
* Create CheckSomeDefaultAddresses(), with additional checks.
* Update license header.
* ROSTESTS-297
2018-03-17 17:30:01 +01:00
Thomas Faber
0ce87167cc [CONFIGURE] Add support for VS2017 Update 3. 2018-03-17 16:41:46 +01:00
Thomas Faber
d7ad37a165 [KMTESTS:CC] Truncate file cache on uninitialize to avoid leaking a reference. ROSTESTS-264 ROSTESTS-300 2018-03-17 16:39:23 +01:00
Amine Khaldi
c100ec6e7b [MPRAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:26:22 +01:00
Amine Khaldi
0de65aae00 [MPR_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:25:29 +01:00
Amine Khaldi
1a914df648 [MPR] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:24:48 +01:00
Amine Khaldi
32eba10892 [MMDEVAPI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:23:50 +01:00
Amine Khaldi
9c982d0105 [MMDEVAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:23:10 +01:00
Amine Khaldi
2c523eef19 [MLANG] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:22:13 +01:00
Amine Khaldi
03435e171d [MGMTAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:21:24 +01:00
Amine Khaldi
017f6919b9 [MCIWAVE] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:20:37 +01:00
Amine Khaldi
a2d8742882 [MCISEQ] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:19:53 +01:00
Amine Khaldi
b96cf0b102 [MCIQTZ32] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:19:04 +01:00
Amine Khaldi
122f1078cd [MCICDA] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:18:10 +01:00
Amine Khaldi
ba65d708f6 [MCIAVI32] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:17:07 +01:00
Amine Khaldi
4dd96d425c [MAPI32] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:16:08 +01:00
Amine Khaldi
be44829fa2 [LZ32] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:14:57 +01:00
Amine Khaldi
af65c9d344 [LOADPERF] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:13:56 +01:00
Amine Khaldi
7d1b509fa0 [JSPROXY] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:13:02 +01:00
Amine Khaldi
e68a367aa6 [JSCRIPT_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:12:12 +01:00
Amine Khaldi
8dba275bd6 [JSCRIPT] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:11:29 +01:00
Amine Khaldi
919215fd3b [ITSS] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:10:01 +01:00
Amine Khaldi
1e8f5b1909 [ITIRCL] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 13:08:50 +01:00
Amine Khaldi
580b6f730e [INSENG] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 12:48:28 +01:00
Amine Khaldi
2b592846ef [INITPKI] Sync with Wine Staging 3.3. CORE-14434 2018-03-17 12:46:47 +01:00
Pierre Schweitzer
13b57fb5b5 [NTOSKRNL] Misc fixes to VACB reference counting
This fixes various bugs linked to VACB counting:
- VACB not released when it should be
- Reference count expectations not being accurate

For the record, VACB should always have at least a reference
count of 1, unless you are to free it and removed it from
any linked list.

This commit also adds a bunch of asserts that should
help triggering invalid reference counting.

It should also fix numerous ASSERT currently triggered and
may help fixing random behaviours in Cc.

CORE-14285
CORE-14401
CORE-14293
2018-03-17 11:56:25 +01:00
Eric Kohl
ad3bda1c8d [SNDVOL32] Set the ranges, pagesize and ticks for the balance and volume trackbars and fix the conversion between trackbar position and volume value 2018-03-15 22:03:33 +01:00
Mark Jansen
25cacdedb7 [GDIPLUS_WINETEST] Re-enable test_font_substitution.
ROSTESTS-154
2018-03-15 20:16:04 +01:00
Mark Jansen
428e4617e9 [WIN32K] Do not try to compare a long name against a truncated name.
This fixes gdiplus_winetest:font crashing.
ROSTESTS-154
2018-03-15 20:16:04 +01:00
Mark Jansen
37a34a21a9 [WIN32K] Do not truncate localized font names.
ROSTESTS-154
2018-03-15 20:16:04 +01:00
Amine Khaldi
3a55db04f1 [INETMIB1] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:40:38 +01:00
Amine Khaldi
af764263d5 [INETCOMM] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:36:29 +01:00
Amine Khaldi
2472f9162e [IMM32] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:31:05 +01:00
Amine Khaldi
30494d2a1e [IMAGEHLP_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:29:08 +01:00
Amine Khaldi
15dda9ebaf [IMAGEHLP] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:28:19 +01:00
Amine Khaldi
82fba961cd [IMAADP32.ACM] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:27:22 +01:00
Amine Khaldi
fc19c80d52 [IEFRAME] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:26:26 +01:00
Amine Khaldi
7546f9fee8 [ICCVID] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:25:00 +01:00
Amine Khaldi
1bcc1c247d [HTTPAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:24:03 +01:00
Amine Khaldi
36755f12cb [HNETCFG] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:23:02 +01:00
Amine Khaldi
3d690cee5a [HLINK_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:21:42 +01:00
Amine Khaldi
7e88971d05 [HLINK] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:20:55 +01:00
Amine Khaldi
96f371dcdb [HHCTRL.OCX] Sync with Wine Staging 3.3. CORE-14434 2018-03-15 12:19:43 +01:00
Bișoc George
1a951aa4e6 [BUS][ACPI] Silence DPRINT1 in the special case of IOCTL_BATTERY_QUERY_TAG (#427) 2018-03-12 15:29:14 +01:00
Pierre Schweitzer
741ae8ccdc [CONSRV] Fix build 2018-03-11 21:19:11 +01:00
Alexander Shaposhnikov
9591550116 [RAPPS] Replace Extract with FDI for handling .cab
FDI allows to have user-defined callbacks for file handling.
Since it doesn't provide support for Unicode we convert strings to
multi-byte UTF-8 and handle them appropriately in the callbacks. They
are properly null-terminated so FDI won't choke when doing operations
with strings.

Thanks to hbelusca and mjansen for the help.

CORE-14466
2018-03-11 21:56:32 +02:00
Michael Fritscher
602db40277 [CONSRV] Initialize rcFramebuffer in every case, otherwise it is left unintialized in case of e.g. console termination. (#428, #429)
Fixes CORE-14463. Debugged and and fix suggested by Timo Kreuzer.

Signed-off-by: Michael Fritscher <reactos@mifritscher.de>
2018-03-11 20:31:40 +01:00
Eric Kohl
4ddb1bfd96 [SNDVOL32] Add the small line dialog 2018-03-11 10:41:41 +01:00
Eric Kohl
8a7e1a7b7b [SNDVOL32] Add the normal line dialog 2018-03-11 10:14:43 +01:00
Eric Kohl
6f2feac70a [SNDVOL32] Fix the layout of the normal master dialog
- Fix the layout of the normal master dialog layout.
- Change the name of the normal and tray master dialogs.
- Add the WS_EX_LAYOUTRTL style to the hebrew dialogs.
2018-03-11 01:13:22 +01:00
Eric Kohl
849fdca3f9 [SNDVOL32] Add the small master dialog
- Add the small master dialog.
- Add support for tray (/t), small (/s) and normal (/n) dialog sizes.
- Fix the font size calculation for the dialogs.
- Fix the dialog unit to pixel conversion.
- Fix the client window size calculation.
- Do not leak font handles.
2018-03-10 21:11:08 +01:00
Hermès Bélusca-Maïto
8bdebb1fed [CONSRV] Silence a noisy DPRINT. 2018-03-10 20:37:08 +01:00
Hermès Bélusca-Maïto
ab8470d8bb [KMTESTS:CC] Fix MSVC build. 2018-03-10 18:51:21 +01:00
Hermès Bélusca-Maïto
e6d7480287 [PSDK:LM] Fix parameter types. 2018-03-10 18:18:21 +01:00
Mark Jansen
a8b9a43ae8 [PSDK] Fix the build for msvc 2010.
Addendum to e129995
CORE-14434
2018-03-10 12:25:41 +01:00
Pierre Schweitzer
47a084303a [KMTESTS:CC] Add some tests for CcMapData
To be extended.
2018-03-10 11:14:33 +01:00
Mark Jansen
516c5a9a4f [DRWTSN32] Indicate the thread that crashed. 2018-03-10 00:04:57 +01:00
William Kent
6f6ce101f7 [DRWTSN32] Add code to write a minidump 2018-03-10 00:04:57 +01:00
William Kent
1d10606fad [DRWTSN32] Various improvements
* Convert to wWinMain()
* Add a resource file
* Use a slightly friendlier application name
* Add code to load the output path from the Registry
* Add localized string resources
2018-03-10 00:04:57 +01:00
Mark Jansen
2f548599a4 [SDK] Do not use a NUL file while calculating format string length
CORE-14342
2018-03-10 00:04:57 +01:00
Thomas Faber
dedd08c38d [PSDK] Fix wide string literals in bcrypt.h. Should fix VC2010 build. 2018-03-09 19:35:20 +01:00
Thomas Faber
a6265fc4b0 [BCRYPT] Improve stubs for functions needed by crypt32 aka fix build. 2018-03-09 18:20:30 +01:00
Amine Khaldi
e3f6657f95 [GDIPLUS_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:09:52 +01:00
Amine Khaldi
5f279f2d12 [GDIPLUS] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:09:03 +01:00
Amine Khaldi
235892b4a4 [FUSION_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:08:05 +01:00
Amine Khaldi
b980bb98c2 [FUSION] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:07:30 +01:00
Amine Khaldi
e4bb5d086b [CRYPTUI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:06:48 +01:00
Amine Khaldi
2d651230a4 [DCIMAN32] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:05:29 +01:00
Amine Khaldi
72e8d9fa92 [CRYPTUI] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:04:41 +01:00
Amine Khaldi
c2d08daae1 [CRYPTNET_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:03:51 +01:00
Amine Khaldi
18075aa040 [CRYPTNET] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:03:13 +01:00
Amine Khaldi
3e2633b781 [CRYPTDLL] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:02:26 +01:00
Amine Khaldi
7342d6751c [CRYPTDLG] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:01:37 +01:00
Amine Khaldi
d03ac84f4f [CRYPT32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 13:00:36 +01:00
Amine Khaldi
a6e1034289 [CRYPT32] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:59:49 +01:00
Amine Khaldi
e129995058 [PSDK] Update bcrypt.h and wincrypt.h. CORE-14434 2018-03-09 12:58:19 +01:00
Amine Khaldi
98e90aa949 [CREDUI] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:57:13 +01:00
Amine Khaldi
9706012cb8 [COMPSTUI] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:56:22 +01:00
Amine Khaldi
da5f10af77 [COMDLG32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:55:20 +01:00
Amine Khaldi
45ed51c1ba [COMDLG32] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:54:34 +01:00
Amine Khaldi
0dbc2d1842 [COMCAT_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:52:03 +01:00
Amine Khaldi
0a4d45019b [COMCAT] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:51:19 +01:00
Amine Khaldi
d4a72c78a2 [CLUSAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:50:24 +01:00
Amine Khaldi
ca1d7c82da [CABINET_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:49:13 +01:00
Amine Khaldi
afb6bca511 [CABINET] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:48:26 +01:00
Amine Khaldi
2781e242e6 [AVIFIL32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:47:13 +01:00
Amine Khaldi
44836a6e12 [AVIFIL32] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:46:31 +01:00
Amine Khaldi
0aba4966ff [ATL100_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:45:08 +01:00
Amine Khaldi
1215b3f1da [ATL_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:44:38 +01:00
Amine Khaldi
ecb7521101 [ATL][ATL80][ATL100] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:43:41 +01:00
Amine Khaldi
59eab41aba [ADVPACK_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:42:18 +01:00
Amine Khaldi
89236be2cc [ADVPACK] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:41:26 +01:00
Amine Khaldi
feea1bc5be [ACTXPRXY] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:40:09 +01:00
Amine Khaldi
7bfbe4f57a [ACTIVEDS] Sync with Wine Staging 3.3. CORE-14434 2018-03-09 12:38:37 +01:00
Thomas Faber
c7c36702d2 [USER32] ForceResetUserApiHook is WINAPI, not FASTCALL. CORE-14450
Fixes stack pointer corruption when using Windows's uxtheme.dll.
2018-03-09 09:06:12 +01:00
Amine Khaldi
af9960ca99 [QUARTZ_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:47:02 +01:00
Amine Khaldi
83d28845a1 [QUARTZ] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:46:24 +01:00
Amine Khaldi
7446d8c8a2 [DXSDK] Add a header guard to aviriff.h. 2018-03-08 13:44:37 +01:00
Amine Khaldi
d3e7f8dd2d [QEDIT] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:43:36 +01:00
Amine Khaldi
7fdc682155 [MSDMO] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:42:29 +01:00
Amine Khaldi
4203ed112e [DXDIAGN_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:41:10 +01:00
Amine Khaldi
afc3201b40 [DXDIAGN] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:40:32 +01:00
Amine Khaldi
a531318156 [DPLAYX] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:39:19 +01:00
Amine Khaldi
2608d38619 [DPLAY] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:38:10 +01:00
Amine Khaldi
5d870f5ba6 [DMUSIC] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:36:52 +01:00
Amine Khaldi
e8c6acd13d [DINPUT8] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:35:22 +01:00
Amine Khaldi
32675648dc [DINPUT_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:34:24 +01:00
Amine Khaldi
7016dd6d65 [DINPUT] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:33:13 +01:00
Amine Khaldi
d9b4957fdd [DEVENUM_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:31:41 +01:00
Amine Khaldi
dbcbc1cda1 [DEVENUM] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:30:52 +01:00
Amine Khaldi
1bb40cffc0 [D3DXOF] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:28:23 +01:00
Amine Khaldi
e5c42da45c [D3DX9_*] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:26:47 +01:00
Amine Khaldi
e792c304fe [D3DRM] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:17:38 +01:00
Amine Khaldi
9987f02917 [D3D8][D3D9][DDRAW][WINED3D] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:15:18 +01:00
Amine Khaldi
595b846dae [AMSTREAM_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:11:06 +01:00
Amine Khaldi
7401c74a40 [AMSTREAM] Sync with Wine Staging 3.3. CORE-14434 2018-03-08 13:10:17 +01:00
Amine Khaldi
fbbe3b3856 [INCLUDE/WINE] Add a header guard to strmbase.h. 2018-03-08 13:07:57 +01:00
Thomas Faber
0aed0fd167 [BROWSEUI][SHELL32] Treat OnWinEvent's result parameter as optional. CORE-14443
Windows's explorer can call it with NULL.
2018-03-08 12:21:24 +01:00
Serge Gautherie
84a9284a3f [APPHELP_APITEST] Fix a Clang-Cl warning about a memcmp() call
"warning: argument to 'sizeof' in 'memcmp' call is the same pointer type 'SDBQUERYRESULT_VISTA *' (aka 'struct tagSDBQUERYRESULT_VISTA *') as the destination; expected 'SDBQUERYRESULT_VISTA' (aka 'struct tagSDBQUERYRESULT_VISTA') or an explicit length [-Wsizeof-pointer-memaccess]"

CORE-14306
2018-03-07 20:42:14 +01:00
Serge Gautherie
601871955f [APPHELP_APITEST] env.c: Fix a 3rd Windows S2003 special case
Test_Shimdata() already has a TODO with 2 special cases.

- Special-case "dwLayerCount" too.
- Add extra-safety checks.
2018-03-07 20:42:14 +01:00
Thomas Faber
3159de5573 [WINSRV] Don't try to remove messages from the queue without dispatching them. CORE-13734
This partially reverts r58615 / 01729482ae.
2018-03-07 13:32:38 +01:00
Thomas Faber
7905efdf35 [USER32_APITEST] Add a test for PeekMessage without DispatchMessage for WM_PAINT. CORE-13734 2018-03-07 13:20:42 +01:00
Thomas Faber
2b8f4f6e24 [NTOS:EX] Worker threads must not exit with a critical region held. CORE-13734 2018-03-07 13:18:09 +01:00
Eric Kohl
282b4397e0 [STOBJECT] Use double click time for the single click timers instead of a fixed timeout. 2018-03-06 20:43:04 +01:00
Pierre Schweitzer
da8a41b97b [SHELL32] Fix a directory handle leak when browsing folders
A bit of history: in r71528, I tried to fix our explorer often
crashing while browsing directories. It was linked to the fact
that a notification result may arrive while the notification
structure had already been deleted.

The fix for this was actually broken and was leading to a double
leak: the notification structure was leaked. But also the handle
to the directory that had been browsed!
This means that the directory couldn't be modified anymore as
a leaked handle to it was still open.

Actually, when notifications are cancel, the kernel properly
calls the notification routine, but with a specific error code.
So the correct fix is to stop handling that notification when
we receive this error code. This is the correct fix with no leaks.

This commit is a complete r71528 revert with the appropriate fix.

CORE-10941
CORE-12843
2018-03-06 20:30:21 +01:00
Thomas Faber
ad301e6604 [LIBTIFF] Print errors to the console instead of in a MessageBox.
This is a temporary fix for a timeout in windowscodecs:tiffformat.
The test ends up invoking Win32ErrorHandler with:
_TIFFVSetField: <IStream object>: Bad value 0 for "ResolutionUnit" tag.

Ideally we'd keep the MessageBox version of the error/warning handlers but
make them respect the current error mode to avoid blocking tests and other
non-interactive applications.
2018-03-06 03:12:31 +01:00
Amine Khaldi
4a93fbcd97 [WINDOWSCODECS] Forgot to commit this file. Addendum to ae80686. CORE-14434 2018-03-05 23:56:28 +01:00
Katayama Hirofumi MZ
1f4c636453 [SHELL32] Fix item order in Folder Options (#415) 2018-03-05 23:40:41 +01:00
Mark Jansen
173b79095c [SHLWAPI] Implement SHAreIconsEqual
CORE-14425
2018-03-05 22:43:18 +01:00
Mark Jansen
754a2fa872 [SHLWAPI_APITEST] Add test for SHAreIconsEqual 2018-03-05 22:43:17 +01:00
Thomas Faber
1f7cb06c22 [WINDOWSCODECS] Fix stack pointer corruption when handling PNGs.
Without PNG_API_RULE defined, these functions (like all others) aren't stdcall.
2018-03-05 18:51:48 +01:00
Thomas Faber
680d69d373 [AFD_APITEST] Introduce a test for directly creating and using sockets via AFD. CORE-9810
The initial tests in send.c validate correct behavior of send/sendto on
disconnected sockets (CORE-9810), fixed in r68129.
However, the helper functions are generic, so they can be used for additional
tests against AFD. Because AFD's create packet structure changes between
Windows versions, the functions check the OS version to determine the right
layout.
Tests succeed on Win2003 as well as Win10.
2018-03-05 14:52:56 +01:00
Amine Khaldi
31139640ea [MSI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-05 00:31:58 +01:00
Amine Khaldi
c42b133eb1 [MSI] Sync with Wine Staging 3.3. CORE-14434 2018-03-05 00:30:58 +01:00
Amine Khaldi
23ec1e5e6f [WINDOWSCODECS_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-05 00:20:56 +01:00
Amine Khaldi
ae80686d81 [WINDOWSCODECS] Sync with Wine Staging 3.3. CORE-14434 2018-03-05 00:19:05 +01:00
Amine Khaldi
a8d718da39 [D3DCOMPILER_43] Sync with Wine Staging 3.3. CORE-14434 2018-03-05 00:15:03 +01:00
Amine Khaldi
bd5d127104 [DBGHELPHOST] Fix the *nix build. 2018-03-05 00:07:53 +01:00
Amine Khaldi
8d51a38cbc [DBGHELP] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 23:54:20 +01:00
Amine Khaldi
a9068cc8d3 [RPCRT4_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 23:52:30 +01:00
Amine Khaldi
87a48c832a [RPCRT4] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 23:49:21 +01:00
Timo Kreuzer
643e6bf382 [VFDLIB] More 64 bit fixes 2018-03-04 16:27:07 +01:00
Timo Kreuzer
0182dcd71b [PSDK][REACTOS] Fix definitions and usage of DWLP_MSGRESULT, DWLP_DLGPROC, and DWLP_USER
- Make sure the DWLP_* values are correct on _WIN64
- Don't use the DWL_* constants, they are not portable. Enforce this by removing them entirely from winuser.h
- Make sure Get/SetWindowLong*Ptr* is used and pointers are not truncated to LONG
2018-03-04 16:27:07 +01:00
Amine Khaldi
6cdd1357d6 [SHLWAPI_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 13:26:14 +01:00
Amine Khaldi
e2e63ede68 [OLEAUT32_WINETEST] Fix non-PCH build. 2018-03-04 13:25:28 +01:00
Amine Khaldi
d3fd5bdd97 [SHLWAPI] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 13:17:11 +01:00
Amine Khaldi
9d1dc9bee9 [OLEAUT32_WINETEST] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 13:15:59 +01:00
Amine Khaldi
d506c2af65 [OLEAUT32] Sync with Wine Staging 3.3. CORE-14434 2018-03-04 13:14:52 +01:00
Amine Khaldi
004d830fe9 [INCLUDE/WINE] Import heap.h from Wine Staging 3.3. CORE-14434 2018-03-04 13:10:02 +01:00
Luo Yufan
767e2419e9 [TRANSLATION][SUBST] Update Simplified Chinese translation. (#414) 2018-03-04 03:37:20 +01:00
Adam Słaboń
8fd9d3f59b [TRANSLATION] Polish translation update (#413)
Translation update for sndvol32, shell32 (right click drag menu), rapps and ks.inf.
2018-03-03 21:24:46 +01:00
Thomas Faber
56fdb7adde [WIN32K:NTUSER] Handle IntGetSystemMenu failure cases. CORE-12180 2018-03-03 17:19:26 +01:00
Thomas Faber
b7aa1e3122 [WIN32K:NTUSER] Correctly delete menus in failure cases in MENU_GetSystemMenu. CORE-12180 2018-03-03 17:19:16 +01:00
Thomas Faber
89217e3df5 [WIN32K:NTUSER] Handle IntCloneMenu failure in MENU_GetSystemMenu. CORE-12180 2018-03-03 17:18:55 +01:00
Thomas Faber
ede8794c4b [EXPLORER] Remove SetBandSiteInfo hack. CORE-9809 2018-03-03 17:17:13 +01:00
Eric Kohl
ca22dc9bb5 [STORPORT][DDK] Add the StorPortExtendedFunction stub
- Add the StorPortExtendedFunction stub to the storport driver.
- Add the declaration of StorPortExtendedFunction to the ddk.

CORE-12695
2018-03-03 14:19:33 +01:00
Sergey Stopkin
0c957755ed [TRANSLATION] Some translations update 2018-03-02 18:23:30 +01:00
Thomas Faber
88b9b90337 [COM_APITEST] Add some interfaces. 2018-03-02 15:23:13 +01:00
Thomas Faber
b3bd2aabe1 [COM_APITEST] Fix test failures on Win2003. 2018-03-02 15:23:05 +01:00
Thomas Faber
6b78ff036f [NTOS:KE] Don't loop indefinitely trying to figure out the CPU frequency. CORE-14419
Previously, we would keep sampling the CPU frequency until two subsequent
samples differed by at most 1 MHz. This could take several seconds, and would
unnecessarily delay boot.
Instead, if sampling is too unreliable, just give up and calculate the average
frequency from 10 samples. This is no worse than picking the frequency that
just happened to be returned twice in a row.

The fact that this method of sampling fails could indicate that there's a
problem with our performance counter implementation or timer interrupt,
but that's a separate issue...
2018-03-01 14:26:44 +01:00
Giannis Adamopoulos
d214e1c4d4 [TELEPHON.CPL] Include winuser.h in the rc which is needed for manifest_hosted.rc
Add a check in manifest_hosted.rc to make sure that winuser.h is included
2018-03-01 10:05:54 +02:00
Thomas Faber
eab8a0b968 [BEEPMIDI] Don't busy-wait when no notes are playing. CORE-12860
- Use a new work_available event to allow ProcessPlayingNotes to sleep when no
  notes are to be played.
- Get rid of the pointless thread_termination_complete event, wait on the
  thread handle instead.
- Don't leak thread_handle.
2018-03-01 08:58:33 +01:00
Giannis Adamopoulos
2f11904000 [SHIMGVW] -Add the 123 manifest to load the v6 comctl32. CORE-14415
This shows that we may have problems in the future with applications using just comctl32 v5
2018-03-01 09:23:06 +02:00
Joachim Henze
40e5832369 [DESK] Fix text truncation in fr-FR.rc
CORE-13514
2018-02-28 23:00:31 +01:00
Joachim Henze
9e9f053eec [MMSYS] fix text truncation in fr-FR.rc
CORE-13508
2018-02-28 21:19:42 +01:00
Pierre Schweitzer
c4f58bbfd8 [NTOKSRNL] Don't blindly schedule read-ahead on CcCopyRead() call.
This avoids locking Cc for too long by trying to read-ahead data which
is already in cache.
We now will only schedule a read ahead if next read should bring us
to a new VACB (perhaps not in cache).

This notably fixes Inkscape setup which was slown down by read-ahead
due to continous 1 byte reads.

Thanks to Thomas for his help on this issue.

CORE-14395
2018-02-28 20:58:36 +01:00
Eric Kohl
2baafa61c6 [STOBJECT] Use timers to distinguish between single and double clicks
- Volume, Power and Hotplug icon: Use timers to distinguish between single and double clicks.
- Volume icon: Show the tray volume dialog on a single click.
2018-02-28 20:29:29 +01:00
Giannis Adamopoulos
b95fff5bce [EXPLORER] CTrayWindow: Set the initial lock state in the band site
This alongside the previous commit, fix locking and unlocking the taskbar.
2018-02-28 17:21:19 +02:00
Giannis Adamopoulos
6d4a091b4a [BROWSEUI] CBandSite: Implement SetBandSiteInfo and GetBandSiteInfo
Only BSIS_LOCKED, BSIS_NOGRIPPER, BSIS_ALWAYSGRIPPER and BSIS_NOCAPTION supported so far.
2018-02-28 17:20:46 +02:00
Giannis Adamopoulos
6785192fe6 [BROWSEUI] CBandSite: Style fixes 2018-02-28 17:20:44 +02:00
Simon Dräger
f80d227ec2 [TRANSLATION] Completed German translation in taskmgr 2018-02-26 22:20:38 +01:00
Giannis Adamopoulos
e3610035ce [USER32] Small fixes for messages carrying pointers
SendNotifyMessageW: It doesn't support messages with pointers so there is no need to call MsgiUMToKMMessage
SendMessageTimeoutW, SendMessageTimeoutA: These two do support marshaling pointers so they need to use MsgiUMToKMMessage.
This is actually a bug that happens only in the rare case where we send a WM_COPYDATA with a timeout.
2018-02-26 16:51:59 +02:00
Giannis Adamopoulos
ec91188fff [WINSRV] Implement sending the hard error balloon package to explorer
[EXPLORER] Implement showing the hard error balloon
2018-02-26 16:51:59 +02:00
Eric Kohl
40bd09a2ce [SNDVOL32] Add the tray volume dialog
- Add the tray volume dialog (run "sndvol32 /t").
- Add a simple command line parser.
2018-02-26 00:44:41 +01:00
Hermès Bélusca-Maïto
295ea36f9e [ADVAPI32] Few improvements for Services.
- Set some last errors.
- Fix error code returned by ScLookupServiceByServiceName().
- Check the validity of the handler proc in RegisterServiceCtrlHandler(Ex)W().
- Improve some traces; comment some code.
2018-02-26 00:37:09 +01:00
Hermès Bélusca-Maïto
2e3f80f940 [ADVAPI32] Code formatting + improve two traces. 2018-02-26 00:37:05 +01:00
Hermès Bélusca-Maïto
0c44925ec1 [ADVAPI32] ScStartService(): Just start the thread straight ahead, and return a suitable error code if thread creation failed. 2018-02-26 00:37:01 +01:00
Hermès Bélusca-Maïto
91b50f9ccb [ADVAPI32] Take into account the service handler context when dispatching a control notification to a service. (Used e.g. by tcpsvcs.) 2018-02-26 00:36:57 +01:00
Hermès Bélusca-Maïto
635aabb011 [ADVAPI32] Use RPC types where needed. Comments cleanup. 2018-02-26 00:36:53 +01:00
Simon Dräger
82720432eb [TRANSLATION] Completed German translation in stobject (#401) 2018-02-25 23:36:05 +01:00
Simon Dräger
ff23123615 [TRANSLATION] Minor German grammatical improvements 2018-02-25 17:26:43 +01:00
Hermès Bélusca-Maïto
5f4a4b35e6 [ADVAPI32_APITEST] Open services & SCM handles with correct access rights; improve a check order. 2018-02-25 16:11:00 +01:00
Alexander Shaposhnikov
509dd4e645 [CONTRIBUTING] Update .gitmessage
The template is made more clear and specific.
Added non-mandatory width hints.
2018-02-25 16:14:41 +02:00
Eric Kohl
a0d412b77a [SC] Support the paramchange and netbind* control codes in the control command 2018-02-25 14:08:16 +01:00
Eric Kohl
9f0c54fcd3 [SC][SERVICES] Support SERVICE_CONTROL_PARAMCHANGE and SERVICE_CONTROL_NETBIND* control codes 2018-02-25 11:07:41 +01:00
Pierre Schweitzer
1986049a38 [CDFS_NEW] Sync with HEAD.
CORE-14315
2018-02-25 10:14:27 +01:00
Thomas Faber
6158207c31 [BOOTDATA] Do not include caroots.inf in registry.inf. CORE-12020
This splits registry.inf roughly in half, which massively reduces heap usage
in 1st stage. DPH and low-memory scenarios benefit from this.
2018-02-25 10:07:28 +01:00
Hermès Bélusca-Maïto
c6d65fec69 [SERVICES] Use safe-string routines in some places, and do not hardcode buffer lengths. 2018-02-25 00:50:01 +01:00
Hermès Bélusca-Maïto
1aa359ec7f [SERVICES] Send services shutdown notifications only if they accept them. 2018-02-25 00:49:58 +01:00
Hermès Bélusca-Maïto
6c097b4740 [SERVICES] Add french translation. 2018-02-25 00:49:55 +01:00
Simon Dräger
fd3b6d8c09 [TRANSLATION] German syntax fix.
It is rather unusual to put a "then" after "If..", so removed that.
2018-02-24 23:32:31 +01:00
Harteex
23a6b69c4d [BOOTDATA] Fix path to temp folder for the Swedish locale (#381) 2018-02-24 23:08:55 +01:00
Pierre Schweitzer
62facb7a49 [NTOSKRNL] Implement ThreadHideFromDebugger in NtSetInformationThread() 2018-02-24 22:07:12 +01:00
Mark Jansen
2ffc684699 [ACLAYERS] Add WIN8 and WIN81 VersionLie shims 2018-02-24 19:33:56 +01:00
Mark Jansen
8e1f342990 [APPSHIM_APITEST] Add Win8 and Win81 versionlie tests 2018-02-24 19:33:50 +01:00
Mark Jansen
9b55e647fa [ACPPAGE] Enable version lies until Win7 + some cleanup 2018-02-24 19:33:42 +01:00
Mark Jansen
0dd71438a4 [APPHELP] Set debug level in case of parse failure 2018-02-24 19:33:02 +01:00
Eric Kohl
4b8f53c9e9 [SERVMAN] Add an accelerator for the F5 (refresh) key
CORE-14389
2018-02-24 18:38:08 +01:00
Timo Kreuzer
6771bf55a0 [WIN32K] Get rid of some instances of the ugly RETURN() macro 2018-02-24 17:17:25 +01:00
Timo Kreuzer
e688aab6b3 [FORMATTING] Fix indentation, no functional changes. 2018-02-24 17:17:25 +01:00
Pierre Schweitzer
a3c58ca76f [NTOSKRNL] Implement the support for reserve IRP in IO
The reserve IRP is an IRP which is allocated on system boot and kept during
the whole system life. Its purpose is to allow page reads in case of
low-memory situations where the system doesn't have enough memory left
to allocate an IRP to read from the page file (would be catastrophic situation).
2018-02-24 14:52:04 +01:00
Pierre Schweitzer
9ac2e9855a [NTOSKRNL] Add the CcDataFlushes and CcDataPages counters 2018-02-24 14:52:04 +01:00
Pierre Schweitzer
0fbdf31709 [NTOSKRNL] Add the CcPinReadWait and CcPinReadNoWait counters 2018-02-24 14:52:04 +01:00
Thomas Faber
af6c5806d5 [SHLWAPI] Cherry-pick Wine commit 7be8beab68c (Don't attempt to un-expect ComputerName in PathUnExpandEnvStrings) by Katayama Hirofumi MZ. CORE-13816 2018-02-24 14:18:29 +01:00
Thomas Faber
9ac94af436 [KERNEL32_WINETEST] Cherry-pick Wine commit 85f515292aa (Close process / thread handles) by Mark Jansen. 2018-02-24 14:18:15 +01:00
Thomas Faber
a5a6c6419f [IMAGEHLP_WINETEST] Un-mark a ROS-diff that's been committed upstream. 2018-02-24 14:17:58 +01:00
Pierre Schweitzer
45964099f3 [NTOSKRNL] Return some Cc counters in SystemPerformanceInformation 2018-02-24 13:36:26 +01:00
Pierre Schweitzer
227c4321c2 [NTOSKRNL] Add the CcMapDataWait and CcMapDataNoWait counters 2018-02-24 13:36:26 +01:00
Eric Kohl
1dfbed9c3d [SERVICES][ADVAPI32] Fix the broken service stop sequence
services\database.c:
- Refactor ScmControlService() so that it can be used to send the dispatcher loop stop command.
- Separate the code to decrement the image run counter from the service image cleanup code.

services\rpcserver.c:
- RSetServiceStatus(): Stop the dispatcher loop when the image run counter is zero and remove the service image after that.

advapi32\service\sctrl.c:
- Do not terminate the service dispatcher loop when the last service is being stopped. Wait for an explicit dispatcher stop command (empty service name).

CORE-12413
2018-02-24 11:14:05 +01:00
Serge Gautherie
b6c060ce04 [IPHLPAPI] Fix getNumRoutes() return value, on Mib error (#391) 2018-02-23 17:35:02 +00:00
Giannis Adamopoulos
5b38fed776 [SHELL32] -CMenuToolbarBase: Remove all buttons on destruction. CORE-13194
It seems that TBN_DELETINGBUTTON isn't called when the toolbar gets destroyed so the only way to avoid leaking the data is emptying it ourselves.
2018-02-23 12:27:48 +02:00
Mark Jansen
5f52a61e7d [SHIMENG] Do not crash on a NULL ModuleName & BaseAddress.
CORE-14376
2018-02-22 23:25:57 +01:00
Serge Gautherie
e8271c9a46 [KMTESTS:FSRTL] Fix all FsRtlLargeMcbTestsFastFat() checks
Addendum to 22037684e4.

- Result: check "== FALSE" not "= TRUE".
- Report compared values, not different ones.

CORE-11819
2018-02-22 22:26:34 +01:00
Thomas Faber
a2f77ee3fb [NTOS:CC] Don't read past the end of the file in CcPerformReadAhead. 2018-02-22 14:03:05 +01:00
Thomas Faber
56e2bf2f92 [NTOS:CC] Avoid some magic numbers. 2018-02-22 14:03:03 +01:00
Thomas Faber
b8741e2bb3 [SHELL32] Fix PIDL leak in CMenuSFToolbar::FillToolbar. CORE-13194 2018-02-22 11:53:34 +01:00
Thomas Faber
87d3fdf99e [DHCPCSVC] Fix a memory leak in bind_lease introduced in r14645 (!). CORE-14353 2018-02-22 11:53:34 +01:00
Pierre Schweitzer
22037684e4 [KMTESTS:FSRTL] Add a few more tests matching MS FastFAT.
CORE-11819
2018-02-21 22:53:30 +01:00
Thomas Faber
182a31074f [IPHLPAPI] Fix memory leak in getNumRoutes. CORE-14353 2018-02-21 18:42:43 +01:00
Thomas Faber
4487284c17 [KMTESTS:FSRTL] Avoid writing to string literals. ROSTESTS-298 2018-02-21 15:17:58 +01:00
Vadim Galyant
62612a7e45 [USBPORT] Use USB2_HS_INTERRUPT_IN_OVERHEAD instead USB2_HS_ISOCHRONOUS_OUT_OVERHEAD. 2018-02-21 13:35:25 +09:00
Pierre Schweitzer
6ff94017e4 [VFATLIB] Fix FAT partitions formatting in a non clean fashion.
(So the fun begins)
In spite of what VFATLIB headers pretend, there's not magic in FAT boot sector.
The 3 first bytes are just the jump instruction (to the boot code). No jump, no boot.
Also, some (many?) FAT implementations rely on the jump code to help detecting that
a FAT volume is really a FAT volume. Like MS FastFAT. Or our own FAT recognizer in FS_REC.
The story is that, up to that commit, we zeroed the 3 first bytes; leading to broken
FAT volumes.
This got hidden in most cases by the fact that during setup, when we install boot
loader, we erase parts of the boot sector, including the jump instruction, making the
volume valid again. But that wouldn't fix secondary volumes where the boot loader isn't
installed.
And, also, imagine a scenario where you want to install ReactOS on a newly formatted volume
with MS FastFAT instead of our own implementation... That would simply not work to
the fact that the driver wouldn't recognize the fresh formatted volume!

(So the non fashion begins)
Fix this by putting a not that valid jump into the boot sector when formatting our
partitions. That way, our volume is always regarding a FAT view point. But, instead of
putting values that mean (nearly) nothing. We should also put a dummy bootloader
displaying the user and error message, as done by dosfstools.

(So the hope begins)
This opens the way for trying to install ReactOS with MS FastFAT (doesn't work yet).

CORE-11819
CORE-14362
2018-02-21 00:26:13 +01:00
Serge Gautherie
e1bd79e3df [SC] Addendum to 4728157: Add missed values to query errors and usage output. (#387) 2018-02-20 19:45:55 +01:00
Giannis Adamopoulos
3263303844 [SHELL32] CShellItem: Fix GetDisplayName and Compare
The two methods were completely broken because they passed a full pidl to the parent folder (and not desktop folder).
Compile SHGetNameFromIDList to use it in CShellItem but don't export it.
2018-02-20 16:59:00 +02:00
Giannis Adamopoulos
9d7313273c [SHELL32] CShellItem: Implement BindToHandler and improve GetAttributes based on wine
Fixes lots of tests.
2018-02-20 16:33:30 +02:00
Giannis Adamopoulos
af97de39a2 [SHELL32] CShellItem: Fix return value of Compare method 2018-02-20 14:36:31 +02:00
Giannis Adamopoulos
c361e475b4 [SHELL32] CDefaultContextMenu: Implement GetCommandString 2018-02-20 13:05:59 +02:00
Giannis Adamopoulos
7e48c20b3b [SHELL32] Fix a couple of tests 2018-02-20 11:48:40 +02:00
Giannis Adamopoulos
ac950ea01d [SHELL32] shellpath: sync a part of _SHGetDefaultValue with wine
on 32bit builds CSIDL_PROGRAM_FILESX86 is treated as CSIDL_PROGRAM_FILES and on wow64 builds CSIDL_PROGRAM_FILES gets treated as CSIDL_PROGRAM_FILESX86
2018-02-20 10:58:14 +02:00
Giannis Adamopoulos
730d81b9f7 [SHELL32] Fix some test failures 2018-02-20 10:15:23 +02:00
Timo Kreuzer
d281d14fd1 [REACTOS] Fix a number of Get/SetWindowsLong*Ptr* issues and use GWLP_* instead of GWL_* where appropriate. 2018-02-19 22:36:36 +01:00
Timo Kreuzer
173971d947 [WIN32K] Implement NtUserSetWindowLongPtr for 64 bit builds
Also fix return type of NtUserQueryWindow and type of WND::dwUserData and the value for bAnsi in SetWindowLongPtrA
2018-02-19 22:36:36 +01:00
Mark Jansen
ee7f479c57 [RTL][XDK][KERNERL32_WINETEST] Import wine actctx changes from 3.2-37c98396
This adds support for reading the trustInfo (requestedExecutionLevel),
and the compatibility (supportedOs) sections.
2018-02-19 22:23:39 +01:00
Mark Jansen
07f3691cd8 [RAPPS] Various fixes
- Ask the user if they want to continue on cab certificate problems
- Fix memory leaks in failure paths
- Properly disable caching
2018-02-19 11:54:33 +01:00
Giannis Adamopoulos
21ae3a0862 [SNDREC32] it-IT.rc: add a missing new line 2018-02-19 02:03:35 +02:00
Giannis Adamopoulos
48d88a3617 [SHELL32] CFSFolder: Fix some tests for GetAttributesOf 2018-02-19 02:01:02 +02:00
Eric Kohl
a8d256bf23 [SERVICES] Update a drivers status properly
- ScmUnloadDriver: Handle failed unload properly.
- ScmGetDriverStatus: A driver is running when its driver object was found. Otherwise it has been stopped.
- ScmControlDriver: Check a drivers status before and after unloading.

CORE-14317
2018-02-19 00:14:58 +01:00
Mark Jansen
b02d78586c [COMCTL32] Export GetWindowSubclass by name.
CORE-14346
2018-02-18 23:04:45 +01:00
Pierre Schweitzer
dd392b9d6c [NTOSKRNL] Fix mismatching spinlock release in CcPerformReadAhead() 2018-02-18 19:32:08 +01:00
Pierre Schweitzer
215e48d0bd [KMTESTS:CC] Addendum to 3fe0e28: use ok_irql.
CORE-14349
2018-02-18 14:51:35 +01:00
Serge Gautherie
45aa179386 [KMTESTS:IO] Fix a Clang-Cl warning about NameLength
"warning: variable 'NameLength' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]"

CORE-14306
2018-02-18 14:14:56 +01:00
Thomas Faber
0cc3f19b80 [KMTESTS:IO] Correctly free name in IoFilesystem's TestAllInformation.
Spotted by Serge Gautherie.
2018-02-18 14:14:54 +01:00
Serge Gautherie
9bc2a27393 [KMTESTS:NPFS] Fix 2 Clang-Cl warnings about ShareAccess
"warning: variable 'ShareAccess' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]"

CORE-14306
2018-02-18 14:14:52 +01:00
Pierre Schweitzer
3fe0e280b1 [KMTESTS:CC] Add IRQL tests for CcCopyRead showing that a spinlock is held during Cc IO operations.
CORE-14349
2018-02-18 14:00:38 +01:00
Thomas Faber
888ace4397 [HAL] Eliminate tail calls from HalpHardwareInterruptLevel. CORE-14076 2018-02-18 13:06:44 +01:00
Thomas Faber
b4453242f7 [HAL] Eliminate tail calls from HalpDispatchInterrupt[2]. CORE-14076 2018-02-18 13:06:42 +01:00
Thomas Faber
ade345427f [HAL] Eliminate tail calls from HalEndSystemInterrupt. CORE-14076 2018-02-18 13:06:41 +01:00
Thomas Faber
7a9474a6bb [HAL] Create a macro for the HalpEndSoftwareInterrupt to allow reuse. CORE-14076 2018-02-18 13:06:39 +01:00
Thomas Faber
040d78354e [HAL] Convert HalpEndSoftwareInterrupt2 to fastcall. CORE-14076 2018-02-18 13:06:37 +01:00
Mark Jansen
b56193a27c [RAPPS] Some fixes to our completely broken cert pinning attempt.
- We should not open a new connection to request a certificate.
- Update the issuer / subject for the LE certificate.
- User proper types.
- Require all fields that we check to be present.

Without checking the public key or the entire certificate it's still not secure, but we are a step closer.
Dedicated to Joachim Henze
CORE-14350
2018-02-18 13:01:02 +01:00
Pierre Schweitzer
e319f85e67 [NTOSKRNL] Don't make CcScheduleReadAhead() too noisy 2018-02-18 11:31:14 +01:00
Thomas Faber
b030836b40 [WIN32K:NTUSER] Safely handle allocation failure in IntCloneMenu. CORE-14222 2018-02-18 11:27:35 +01:00
Thomas Faber
1969094028 [WIN32K:NTUSER] Avoid allocating an extra item in IntCloneMenuItems. CORE-14222 2018-02-18 11:27:32 +01:00
Thomas Faber
de455c4d50 [WIN32K:NTUSER] Handle realloc failure in IntRemoveMenuItem. CORE-14222 2018-02-18 11:27:29 +01:00
Thomas Faber
c464f4f2e3 [WIN32K:NTUSER] Handle allocation failure in PopupMenuWndProc. CORE-14222 2018-02-18 11:27:27 +01:00
Thomas Faber
a9ba7a3f9e [KMTESTS] Change license to LGPL and update to SPDX headers.
Permission for this change was given by all authors
(who are now mentioned in the copyright lines).
2018-02-18 11:22:09 +01:00
Hermès Bélusca-Maïto
f3c60947e7 [NTSTATUS] Add some status messages. 2018-02-18 02:49:31 +01:00
Hermès Bélusca-Maïto
4ec5eefa64 [BOOTDATA] Add some informative registry values (Win2k3 compat).
- In HKLM\SYSTEM\CurrentControlSet\Control\Windows, add "Directory"
  and "SystemDirectory" values, giving the ReactOS installation
  directories (purely informative).
- Also add the "ErrorMode" value that specifies how the hard-error
  popups are displayed. This value will be used later.
- Fix event log sources ordering.
2018-02-18 01:41:53 +01:00
Hermès Bélusca-Maïto
0e93e0dd46 [BOOTDATA] Add "Application Popup" as a known source of events for the System event log. 2018-02-18 01:16:24 +01:00
Joachim Henze
6f525c2b17 [CMAKE] Increase KERNEL_VERSION_PATCH_LEVEL to 9 CORE-14345
To make 1st stage setup properly report "0.4.9"
2018-02-17 23:48:16 +01:00
Hermès Bélusca-Maïto
5f59f0380d [SC] Fix MSVC build. 2018-02-17 21:08:28 +01:00
Giannis Adamopoulos
fd209faa66 [SHELL32] CFSDropTarget: style fixes 2018-02-17 22:01:04 +02:00
Giannis Adamopoulos
4b19b1e49d [SHELL32] CDefView: remove a useless print 2018-02-17 21:40:16 +02:00
Giannis Adamopoulos
6f25b42a31 [SHELL32] CFSDropTarget: Use copy depending on the source drive
Show the default action as the default menu item in the right click menu.
2018-02-17 20:30:37 +02:00
Giannis Adamopoulos
6d91269eda [SHELL32] CFSDropTarget: Initial implementation of right click drag menu 2018-02-17 20:30:37 +02:00
Giannis Adamopoulos
8f8ab050db [SHELL32] CDefView: Implement several methods needed for drop targets
Set the view object as the site of the drop target.
Implement GetItemPosition, SelectAndPositionItems, IsDropOnSource, GetDragPoint.
Use DROPEFFECT_COPY only when the item supports it.
2018-02-17 20:30:37 +02:00
Giannis Adamopoulos
5bef945cc9 [SHELL32] Add menu resource which is used when dragging files with right click 2018-02-17 20:30:37 +02:00
Eric Kohl
4728157154 [SC] Implement missing query/queryex options
- PrintService: Print optional display name.
- MainUsage: Print missing query options.
- Parse query options and use them to enumerate services.
2018-02-17 19:28:16 +01:00
Colin Finck
ef8b17ed0d [CMAKE] Call "git describe" with the --long parameter to always output the format we are used to. 2018-02-17 18:09:07 +01:00
Hermès Bélusca-Maïto
b77840d3a2 [SHELL32_APITEST] Run the CUserNotification worker test function in a thread to copy with possible test timeouts. CORE-13177 2018-02-17 16:02:22 +01:00
Pierre Schweitzer
bdae0cce66 [NTOSKRNL] Don't call OOM dumper in case we were trying to allocate more than 100 pages.
In such case, we'll consider the caller is bogus and we'll fail in silence.
Dedicated to Mark (again!)
2018-02-17 15:09:38 +01:00
Pierre Schweitzer
01fcb02880 [NTOSKRNL] Allow more chars in ExpTagAllowPrint().
Dedicated to Mark
2018-02-17 15:06:29 +01:00
Pierre Schweitzer
69f51d1533 [FASTFAT] Drop read ahead locking routines in favor of lazy writer routines.
This avoids code duplication while being consistent with MS FastFAT.
2018-02-17 13:49:15 +01:00
Hermès Bélusca-Maïto
175e78e50f [SHELL32] Fix COM registration of IShellFolder, IShellLinkA/W, IQueryContinue and IUserNotification classes. 2018-02-16 23:31:39 +01:00
Pierre Schweitzer
6061c78e91 [EXPLORER] Update French translation 2018-02-16 19:36:25 +01:00
Katayama Hirofumi MZ
338799bf8b improve SHGetFileInfo (#118)
This patch reduces failures of SHGetFileInfo function. CORE-7159
* improve WideByteToWideChar calls
* fix bugs related to file attributes and SHGFI_EXETYPE
* SHGFI_USEFILEATTRIBUTES and SHGFI_ICON fix
* s/sizeof(temppsfi)/0/
2018-02-16 11:00:08 +00:00
Serge Gautherie
cd4db318d0 [D3D9][ARPING] Add missing va_start() and va_end() (#371) 2018-02-16 10:28:25 +01:00
Hermès Bélusca-Maïto
d1265b932c [COM_APITEST] Reenable two known interfaces (#367). Caught by Thomas. 2018-02-16 00:15:41 +01:00
Doug Lyons
8ea42001d9 [I8042PRT] Apply a workaround for Dell Latitude D610
CORE-14324
2018-02-15 22:49:39 +01:00
Hermès Bélusca-Maïto
02d17df031 [SHELL32_APITEST] Add a test for the CUserNotification implementation. CORE-13177 2018-02-15 22:38:38 +01:00
Hermès Bélusca-Maïto
fe4704fa64 [SHELL32] Implement the CUserNotification class, which implements the IUserNotification interface. CORE-13177 2018-02-15 22:38:22 +01:00
Hermès Bélusca-Maïto
70bbdca202 [COM_APITEST] Add tests for IUserNotification. CORE-13177 2018-02-15 22:37:32 +01:00
Hermès Bélusca-Maïto
cd83ed1ac5 [PSDK] Add definitions for IUserNotification, IQueryContinue, and IUserNotification2 and IUserNotificationCallback (Vista+).
CORE-13177
2018-02-15 22:36:50 +01:00
Serge Gautherie
46f96733bd [SC] Disable debug messages on user interface (#382) 2018-02-15 13:58:17 +00:00
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
Pierre Schweitzer
074e7e97fe [NTOSKRNL] When initializing file cache, also allocate a private cache map if needed.
Not used yet.
2018-02-07 23:18:54 +01:00
Pierre Schweitzer
0e932c7bef [NTOSKRNL] Drop the CcTryToInitializeFileCache() which is actually doing nothing relevant 2018-02-07 22:23:49 +01:00
Serge Gautherie
6ece4e9fc2 [NTOS:KE] Replace "Fatal System Error" with "BugCheck" 2018-02-07 22:22:28 +01:00
Pierre Schweitzer
323f71a551 [NTOSKRNL] Use the LockQueueMasterLock where appropriate 2018-02-07 21:37:17 +01:00
Pierre Schweitzer
19c822341b [NTOSKRNL] Handle FSRTL_FLAG_LIMIT_MODIFIED_PAGES flag in CcDeferWrite().
Util now, CcDeferWrite() was ignoring limits per file object.
2018-02-07 21:37:17 +01:00
Pierre Schweitzer
c11e947f61 [NTOSKRNL] Add wait support in CcCanIWrite() 2018-02-07 21:37:17 +01:00
Pierre Schweitzer
92e64a6c9b [NTOSKRNL] Implement CcPostDeferredWrites() that executes deferred writes.
Make use of it in the lazy writer
2018-02-07 21:37:17 +01:00
Pierre Schweitzer
f4e67aa837 [NTOSKRNL] Properly implement lazy writer activity watching.
We get rid of the old iLazyWriterNotify event in favor of work items
that contain an event that lazy writer will set once its done.
To implement this, we rely on the newly introduced CcPostTickWorkQueue work queue
that will contain work items that are to be queued once lazy writer is done.

Move the CcWaitForCurrentLazyWriterActivity() implementation to the
lazy writer file, and reimplemented it using the new support mechanisms
2018-02-07 21:37:17 +01:00
Pierre Schweitzer
7e550edb26 [NTOSKRNL] Drop the always running thread for lazy writer.
Instead move to a threading model like the Windows one.
We'll queue several work items to be executed in a system thread (Cc worker)
when there are VACB that have been marked as dirty. Furthermore, some delay
will be observed before action to avoid killing the system with IOs.
This new threading model opens way for read ahead and write behind implementation.

Also, moved the initialization of the lazy writer to CcInitializeCacheManager()
it has nothing to do with views and shouldn't be initialized there.

Also, moved the lazy writer implementation to its own file.

Modified CcDeferWrite() and CcRosMarkDirtyVacb() to take into account the new threading model.

Introduced new functions:
- CcPostWorkQueue(): post an item to be handled by Cc worker and spawn a worker if required
- CcScanDpc(): called after some time (not to have lazy writer always running) to queue a lazy scan
- CcLazyWriteScan(): the lazy writer we used to have
- CcScheduleLazyWriteScan(): function to call when you want to start a lazy writer run. It will make a DPC after some time and queue execution
- CcWorkerThread(): the worker thread that will handle lazy write, read ahead, and so on
2018-02-07 21:37:17 +01:00
Pierre Schweitzer
3b147adafb [NTOSKRNL] On Cc init, also define CcNumberWorkerThreads which will be used later on
Also make a "default" case (really limited) in case SystemSize doesn't match.
2018-02-07 21:37:17 +01:00
Pierre Schweitzer
853f04e6fc [NTOSKRNL] Rename ExpCriticalWorkerThreads and ExpDelayedWorkerThreads (no p)
to match Windows names and make them available for the whole kernel.
2018-02-07 21:37:17 +01:00
Pierre Schweitzer
ee7b3b315d [NTOSKRNL] Save system size on init in CcCapturedSystemSize 2018-02-07 21:37:17 +01:00
Luo Yufan
19737a2cb9 [TRANSLATION] Simplified Chinese translation update for NETID and PING. (#369) 2018-02-07 14:03:42 +01:00
Giannis Adamopoulos
e05f08be4e [SYSSETUP] Hackfix CORE-14228
Wine's comctl32 somehow fails to load an 24bpp image with ImageList_LoadImageW
when crMask is CLR_NONE so use a color that doesn't exist in the bitmaps until
comctl32 gets fixed.

I prefer to add this silly hack in a non critical dll than make a hasty change in the
critical comctl32 until some proper tests are written for this absurd failure.
2018-02-07 02:26:28 +02:00
Giannis Adamopoulos
218b8eda92 [SYSSETUP] Don't load ISOLATIONAWARE_MANIFEST_RESOURCE_ID manually
Such a manifest is meant to be activated by the caller of the exports of the dll.
This means that the user of syssetup which is setup.exe is the one that should do the proper handling of the manifests.
Since setup.exe is the one that needs to do the right thing, add a CREATEPROCESS_MANIFEST_RESOURCE_ID to it and avoid
dealing with ISOLATIONAWARE_MANIFEST_RESOURCE_ID altogether (which is supposed to be used by activating the activation context
before calling the exports of the dll that has it). We don't really use ISOLATIONAWARE_MANIFEST_RESOURCE_ID correctly in any
place in the tree so let's rely on CREATEPROCESS_MANIFEST_RESOURCE_ID for now.

This fixes one part of CORE-14228 where no image was shown in the theme selector buttons. This happened because comctl32 was
statically linked and calling ImageList_LoadImage ended up creating an image list with comctl32 v5. Then we passed this image
list to a button created with comctl32 v6 and as a result the image list was unusable. This is yet another issue that needs
to be addressed in the future. Namely, it seems that in windows comctl32 v6 can use image lists created by comctl32 v5 whereas
we cannot.

This fix is not a hack but cleverly works around these two bugs that need to be addressed some time in the future.
CORE-14228
2018-02-07 01:15:49 +02:00
Joachim Henze
579e1e6b24 [EXPLORER] Update all preview bitmaps showing notification area
To reflect recent changes in taskbar height, icon spacing,
clock x and y margins.
Also make sure all shots show the exact same time
and choose a more localization agnostic time.
2018-02-06 17:35:08 +01:00
Joachim Henze
bd7eae6795 [EXPLORER] Update classic/modern startmenu preview bitmaps
To reflect our recent updates in banners and notification area.
Also reduces explorer binary size by 214.016bytes.
2018-02-06 14:48:43 +01:00
Pierre Schweitzer
d56a249089 [NTOSKRNL] Define the Mm global variables related to Cc on Mm init.
This means that MmSystemCacheStart, MmSystemCacheEnd, MmSizeOfSystemCacheInPages
have now a valid value.
System cache is not used atm the moment though. MmMapViewInSystemCache() is to
be implemented, and Cc is to be made aware of this.

CORE-14259
2018-02-06 13:41:23 +01:00
Mark Jansen
64d32eab27 [RAPPS] Do not resize (hide) the treeview when minimizing. 2018-02-06 00:08:12 +01:00
Bișoc George
7b71877676 [TRANSLATION] Romanian translation for FONTEXT and TIMEOUT (#363)
[FONTEXT]: At the moment there is a comment in the en-US.rc resource file that advises to not translate it. I only created this file as a basis for the future. The file will be updated later when there is the possibility for FONTEXT to be translated further.
2018-02-05 18:57:39 +01:00
Thomas Faber
fc82f8e2e3 [LIBXML2] Update to version 2.9.7. CORE-14291 2018-02-05 18:55:48 +01:00
Luo Yufan
b97f0a8fed [TRANSLATION][BROWSEUI][MEDIA] Simplified Chinese translations update (#360) 2018-02-05 18:47:53 +01:00
Thomas Faber
ffd3b0c8db [LIBTIFF] Restore ROS-diff that I thought was no longer needed because of PCH. CORE-14291 2018-02-05 18:21:48 +01:00
Mark Jansen
058c2658a4 [SHELL32] CDefViewBckgrndMenu: Fix a crash when pasting on a new explorer window. 2018-02-05 17:39:32 +01:00
Thomas Faber
2f8a7f36f5 [LIBMPG123] Update to version 1.25.8. CORE-14291 2018-02-05 14:40:39 +01:00
Thomas Faber
f46b177e11 [LIBTIFF] Update to version 4.0.9. CORE-14291 2018-02-05 14:40:31 +01:00
Thomas Faber
5c0faa58cf [LIBXSLT] Update to version 1.1.32. CORE-14291 2018-02-05 14:37:37 +01:00
Thomas Faber
5c72e50fd0 [LIBXSLT] Better highlight some ROS diffs. CORE-14291 2018-02-05 14:37:27 +01:00
Thomas Faber
ef4f57579e [LIBJPEG] Update to version 9c. CORE-14291 2018-02-05 11:51:02 +01:00
Thomas Faber
df5a0b43e7 [LIBPNG] Update to version 1.6.34. CORE-14291 2018-02-05 11:51:00 +01:00
Thomas Faber
76c2045434 [FREELDR] Reduce the timeout during serial mouse detection. CORE-14280 2018-02-05 11:49:12 +01:00
Thomas Faber
4d811a2f97 [FREELDR] Remove unnecessary checks. CORE-14280 2018-02-05 11:49:10 +01:00
Thomas Faber
79ea0ae09e [FREELDR] Display an additional status message for hardware detection. CORE-14280 2018-02-05 11:49:07 +01:00
Timo Kreuzer
dae88fb828 [NTOS:MM] Make x64 address space layout more like Vista+
- Change MM_SYSTEM_SPACE_START to 0xFFFFF88000000000
- Move MI_DEBUG_MAPPING to the end of the system PTE range
- Add MI_SYSTEM_CACHE_START and MI_SYSTEM_CACHE_END, which is in the range that Vista uses as dynamic VA space for cache and other allocations
- Wrap x86 specific code that makes now invalid assumptions about the address space layout in #ifdef _M_IX86
2018-02-05 01:09:32 +01:00
Alex Ionescu
9ec85c29e3 [ROSLOAD]: Continue work on target preparation OslPrepareTarget 2/104.
[ROSLOAD]: Stubplement OslpCheckForcedFailure, OslpGetSetBootStatusData, OslSetBootStatusData, OslGetBootStatusData.
[ROSLOAD]: Stub OslpInitializeBootStatusDataLog, OslpReadWriteBootStatusData.
[BOOTLIB]: Fix BlAppendBootOptionString to accept an actual BCD ID instead of hardcoding LibraryPath.
[BOOTLIB]: Fix BlAppendBootOptionBoolean to accept an actual BOOLEAN value instead of hardcoding TRUE.
[BOOTLIB]: Implement BlDeviceIsVirtualPartitionDevice.
[BOOTLIB]: Add missing BcdOSLoaderInteger_ForceFailure BCD value. Add BCDE_OSLOADER_TYPE_BOOT_STATUS_POLICY based on BcdEdit.exe and Geoff Chappel site.
2018-02-04 16:01:38 -08:00
Eric Kohl
f0c7db730c [SERVICES] Remove the synchronous service control pipe code
Remove the synchronous service control pipe code because we are using the asynchronous service control pipe code for years.
2018-02-04 22:30:33 +01:00
Eric Kohl
e5870819a3 [SETUPAPI] Machine handles are pointers. 2018-02-04 22:03:17 +01:00
Pierre Schweitzer
41792c517e [NTOSKRNL] Yet another ASSERT...
CORE-14285
2018-02-04 22:02:27 +01:00
Pierre Schweitzer
8dc4ac3692 [NTOSKRNL] Add an assert against VACB reference count overflow.
Very likely to be hit...

CORE-14285
2018-02-04 21:46:08 +01:00
Eric Kohl
19fc20f222 [SETUPAPI] Add a proper (SEH protected) check for LOG_CONF handles 2018-02-04 20:23:51 +01:00
Eric Kohl
60a218948e [SETUPAPI] Fix the coding style, annotations and debug messages
* Fix the coding style.
* Add missing annotations.
* Add the function name to the debug messages.
* Treat all machine handles like pointers.
2018-02-04 20:16:46 +01:00
Thomas Faber
b9f88d594d [PSDK][XDK] Remove DECLSPEC_* from windef.h, protect against redefinition in winnt.h 2018-02-04 19:28:36 +01:00
Adam Słaboń
0d838f40a3 [TRANSLATION] Polish translation update (#357) 2018-02-04 18:45:20 +01:00
Alex Ionescu
1683934cd8 Merge branch 'master' of https://github.com/reactos/reactos 2018-02-04 09:34:27 -08:00
Alex Ionescu
16e0cca7e1 [RTL]: Document and flesh out Boot Status Data (BSD) API/Structures
[NDK]: Document latest RTL_BSD_DATA as of RS3 based on ext.dll WinDBG
extension "!blackboxbsd" which outputs the entire structure field by
field :).
[NDK]: Update RTL_BSD_ITEM_TYPE thanks to ole32 symbols
[RTL]: Move system volume APIs to sysvol.c
[RTL]: Fill out BsdItemTable based on actual field offsets/sizes and not
hardcoded magic numbers which we won't ask where they came from.
[RTL]: Make RtlCreateBootStatusDataFile use an appropriate structure for
initializing the buffer instead of "UCHAR Buffer[12] = {0xC,0,0,0,
1,0,0,0, 1, 0x1e, 1, 0};" which appears like magic knowledge.
[RTL]: Rename "WriteMode" to "Read" in RtlGetSetBootStatusData since
it's much less confusing.
[RTL]: Some formatting fixes, SAL updates.
2018-02-04 09:33:32 -08:00
Hermès Bélusca-Maïto
131678a025 [SHELL32] Rewrite the wrapping code for shell taskbar notifications.
- Introduce the TRAYNOTIFYDATAW structure, as documented by Geoff
  Chappell in "WM_COPYDATA for Taskbar Interface", at
  http://www.geoffchappell.com/studies/windows/shell/shell32/api/shlnot/copydata.htm
  that is the data structure passed between shell32 and explorer for
  communicating shell notify icon information.

- In Shell_NotifyIcon(), correctly capture the (ANSI and) UNICODE
  structures provided by the caller, properly taking into account for
  the different NOTIFYICONDATA structure sizes existing out there.
  The different strings are now properly null-terminated (especially
  szTip if it needs to be truncated out), and the flags validated.

- Remove the now unneeded "SHELL_NotifyIcon()" helper function.

[EXPLORER] Use TRAYNOTIFYDATAW and adjust the callers.
2018-02-04 18:11:50 +01:00
Hermès Bélusca-Maïto
4207397963 [STOBJECT] Don't hardcode variable type in sizeof. 2018-02-04 18:11:49 +01:00
Hermès Bélusca-Maïto
a64c33e787 [PSDK] Fix NIF_STATE definition and add NIF_GUID. 2018-02-04 18:11:48 +01:00
Hermès Bélusca-Maïto
e2c6c3cfc7 [BROWSEUI] Shut a warning down ("windef.h(121) : warning RC4005: 'DECLSPEC_IMPORT' : redefinition" when compiling the resource). 2018-02-04 18:11:47 +01:00
Eric Kohl
65d3bf7482 [SETUPAPI] Fix the coding style, add annotations and fix the debug messages. 2018-02-04 15:41:13 +01:00
Thomas Faber
25bca520f5 [MBEDTLS] Don't link with zlib, we don't use it. CORE-14290 2018-02-04 12:54:44 +01:00
Thomas Faber
dc51b419c7 [USETUP] Use the smaller zlib_solo instead of the full zlib. CORE-14290 2018-02-04 12:54:39 +01:00
Thomas Faber
324180a32e [ROSLOAD] Fix clang-cl build. 2018-02-04 12:54:32 +01:00
Eric Kohl
c7fc2ef4d2 [SETUPAPI] Update some more functions to the current coding style, add annotations and add function names to the TRACE calls. 2018-02-04 11:17:30 +01:00
Hermès Bélusca-Maïto
5de33ab010 [STOBJECT] Revert b7c3398 because it was not the cause of the original problem I wanted to fix (notify structure not completely zeroed-out on the receiver side of the notification). 2018-02-04 02:23:28 +01:00
Hermès Bélusca-Maïto
04498f3eb5 [EXPLORER] Don't use deprecated StrNCpy function but use the string-safe StringCchCopy instead. Also fix a copy-paste error in the _countofs. 2018-02-04 01:57:05 +01:00
Hermès Bélusca-Maïto
b7c3398f95 [STOBJECT] Fully zero-out the full NOTIFYICONDATA structure (it wasn't zeroed out correctly in MSVC build). 2018-02-04 01:57:02 +01:00
Hermès Bélusca-Maïto
af4bdd4388 [NETSHELL] Don't use hardcoded values. 2018-02-04 01:56:59 +01:00
Hermès Bélusca-Maïto
5ecabcce59 [SHELL32] Fix copy-pasta. 2018-02-04 01:56:56 +01:00
Hermès Bélusca-Maïto
9d2139b7d8 [PSDK] Fix NOTIFYICONDATA structure; add NOTIFYICONDATA_V3_SIZE definitions. 2018-02-04 01:56:53 +01:00
Alex Ionescu
adcb9bd175 [ROSLOAD]: Begin target preparation code. 1/104.
[ROSLOAD]: Stubs for OslFatalErrorEx, OslAbortBoot.
OslpSanitizeLoadOptionsString, OslpSanitizeStringOptions
[ROSLOAD]: Implement OslBlStatusErrorHandler,
OslpRemoveInternalApplicationOptions
[ROSLOAD]: Begin work on OslPrepareTarget. Small misc. fixes.
[BOOTLIB]: Extend BlStatusError to handle a custom status error handler.
2018-02-03 15:52:35 -08:00
Hermès Bélusca-Maïto
3b777fd133 [RAPPS] Remove trailing spaces. 2018-02-03 23:43:56 +01:00
Hermès Bélusca-Maïto
26ac8ac81e [RAPPS] Remove deprecated TODO; use _countof() where needed. 2018-02-03 23:43:53 +01:00
Hermès Bélusca-Maïto
3f5fe94104 [RAPPS] Usability fixes. 2018-02-03 23:43:47 +01:00
jimtabor
61484edb9c Fix Linux Build 2018-02-03 11:35:08 -06:00
Alex Ionescu
b6f5520bee [ROSLOAD]: Continue work on loader
[ROSLOAD]: Implement OslExecuteTransition, OslArchKernelSetup,
ArchRestoreProcessorFeatures, OslArchTransferToKernel.
[ROSLOAD]: Factor out the logo code. Clean ups.
2018-02-03 09:16:16 -08:00
Hermès Bélusca-Maïto
ce044cf80e [CONUTILS] Fix and improve the documentation for "outstream" and "utils", addendum to f982d77. 2018-02-02 22:19:54 +01:00
Hermès Bélusca-Maïto
f982d77b8a [CONUTILS] Diverse improvements: start doxygenating and add some resource messsage helper functions.
- Start to doxygenate the library, focusing in great details on the
  functions of the "outstream" module.
- Add a K32LoadStringEx function that expands (K32)LoadString by
  allowing a LanguageId parameter to be able to load strings from other
  languages than the current one.
- Add "ConResMsg*" helper functions to be able to (format and) print
  message strings with inserts that come *NOT* from a message table (as
  usual) *BUT* from resource string tables.
  Will be helpful for CORE-14265 in particular.

[CMD] Fix the call to ConMsgPrintfV().
2018-02-02 00:41:54 +01:00
Pierre Schweitzer
3f8788d6e5 [NTOSKRNL] Add an helper for marking a VACB clean (ie, not dirty).
CORE-14263
2018-02-01 08:36:17 +01:00
Luo Yufan
a13c998183 [TRANSLATION] Simplified Chinese translations updated. (#348) 2018-02-01 02:50:29 +01:00
Pierre Schweitzer
f8d58bba38 [NTOSKRNL] Don't let CcWriteVirtualAddress() deal with VACB dirty status
CORE-14263
2018-01-31 21:47:20 +01:00
Stanislav Motylkov
fad8b1f545 [IPHLPAPI_APITEST] Add tests for IcmpSendEcho 2018-01-31 17:28:21 +00:00
Stanislav Motylkov
63ad8a71c0 [IPHLPAPI] Fix IcmpSendEcho output when host is not reachable
- Add missing error code to DDK/NDIS
- Fix error code in IP driver
- Patch MSAFD to reply correct WSA error code
- Fix IcmpSendEcho function
  - Fix returning error code in ICMP_ECHO_REPLY (see MSDN)
  - Fix returning host address (using GetBestInterface and GetIpAddrTable functions)
- Fix GetBestRoute function (it is used by GetBestInterface)

Relates to #318 and CORE-14241
2018-01-31 17:28:21 +00:00
Stanislav Motylkov
3624c5d6fd [SHELL32] Fix file and folder properties dialogs
CORE-12755
2018-01-31 18:25:14 +01:00
David Quintana
9b89cd1ef2 [NTOSKRNL] Fix CcIdleDelay initializer for old msvc versions (#339)
[NTOSKRNL] Fix initialization of CcIdleDelay for msvc builds (fixes boot).
* Introduce a macro to initialize LARGE_INTEGERs in a consistent way.
2018-01-31 18:12:57 +01:00
Thomas Faber
862b82f3fa [WIN32K:NTGDI] Fix more uses of RtlCreateUnicodeString. CORE-14271
Addendum to 7f687154a0. Spotted by Hermès.
2018-01-31 12:35:30 +01:00
Doug Lyons
912434849f [TIMEDATE] Correctly set the time when using the "Update now" button. CORE-14167 2018-01-31 11:51:08 +01:00
Thomas Faber
682735fb56 [SHELLMENU] Add missing psdk dependency. 2018-01-31 11:48:37 +01:00
Trevor Thompson
1815bdf3cc [CMAKE] Add some fool-proofing to configure.cmd related to MSVS:
-VSSolution switch now outputs to a dedicated folder if running from source directory.
-Give an error if the user is trying to mix ninja and VSSolution in the same output directory.
-In a MingW environment, give an error on VSSolution switch and give a warning on RTC switch.
-Fix -DNEW_STYLE_BUILD=0 option.
-Ensure the source path doesn't contain any spaces.
-Issue a warning if passed an invalid switch.
-Don't announce completion if there were errors.
-Make end message specific for VSSolution.
-Replace redundant exit commands with quit label, as suggested by HBelusca.
2018-01-31 11:06:11 +01:00
Thomas Faber
478bfb484a [KMTESTS:TCPIP] Fix ok() messages. 2018-01-31 10:38:13 +01:00
Thomas Faber
7f687154a0 [WIN32K:NTGDI] Correctly interpret RtlCreateUnicodeString return value. CORE-14271 2018-01-31 10:38:06 +01:00
Thomas Faber
6e750d189a [NTOS:CM] Correctly interpret RtlCreateUnicodeString return value. CORE-14271 2018-01-31 10:37:56 +01:00
Hermès Bélusca-Maïto
4e697fee2c [CONUTILS] Split stream.c into input and output stream modules.
As code grows, this will allow for better maintenance of the console
stream code. In particular the input stream module will contain special
code for handling TTYs, and this is something not all console programs
will need. Having this code in a separate module will allow for the linker
to possibly remove this code when it is unused.
2018-01-31 02:10:41 +01:00
Luo Yufan
7082b621a5 [TRANSLATION] Simplified Chinese translation improved. (#346) 2018-01-30 21:49:40 +01:00
Katayama Hirofumi MZ
0864d2de85 [SHIMGVW] Enable zooming
* merge ZoomIn and ZoomOut functions
* NULL to hbrBackground
* use GET_X_LPARAM and GET_Y_LPARAM for WM_MOUSEWHEEL
2018-01-30 19:36:59 +00:00
Joachim Henze
f5d679aeb9 [EXPLORER] Pixel-perfect x-margins surrounding the clock
To look like XP/2k3.
Relies on d11e7af5f2

CORE-14272
2018-01-30 18:42:21 +01:00
Jared Smudde
817beaf9c5 [NETCFGX] Rename 'Network connection' to 'Network Connection'. (#345)
English capitalization fix. It should look a little better both in the system tray and in the Network Connections folder.
2018-01-30 18:07:09 +01:00
Daniel Reimer
7d487fe173 [CAROOTS] Update certificates to Mozilla Certdata 28.01.18 (#338) 2018-01-29 23:43:34 +01:00
Timo Kreuzer
2b57c9f47d Revert "[OLEAUT32] Sync with Wine 3.0. CORE-14225"
This reverts commit 13fd286c18.

The "sync" zapped a lot of fixes, in particular 64 bit compatibility.
2018-01-29 23:31:08 +01:00
Bișoc George
4a5b30ee1f [TRANSLATION][CLIPBRD] Italian translation implemented (#344) 2018-01-29 22:33:22 +01:00
Stanislav Motylkov
2595538558 [DESK.CPL] Fix dialog appearance in 640x480 resolution
CORE-14274
2018-01-29 22:32:01 +01:00
Mark Jansen
fbde4b0014 [ACPPAGE] Visualize custom layers 2018-01-29 22:05:17 +01:00
Mark Jansen
5c7ce469bb [ACPPAGE] Hide shims handled by the main ui. 2018-01-29 22:05:17 +01:00
Giannis Adamopoulos
556c485c8b [EXPLORER] Improve the width of the taskbar clock
Don't take into account TRAY_CLOCK_WND_SPACING_X twice
Increase TRAY_CLOCK_WND_SPACING_X
2018-01-29 22:32:17 +02:00
Giannis Adamopoulos
d11e7af5f2 [EXPLORER] Center the text of the clock
CTrayClockWnd: Fix the calculation that centered the text of the clock.
CTrayNotifyWnd: Restore the 1 pixel margin between the clock and the pager.
2018-01-29 21:50:33 +02:00
Joachim Henze
c109dc9f24 [EXPLORER] Tweak x-margins surrounding the clock
To look more like XP/2k3.
Not pixel-perfect yet, that would require asymmetric margins.

CORE-14272
2018-01-29 19:15:50 +01:00
Bișoc George
7169c7703d [TRACERT] Translation for Italian and Romanian language (#333) 2018-01-29 18:23:52 +01:00
Luo Yufan
09168aae12 [TRANSLATION] Update Simplified Chinese Translations of SHELL32 and USRMGR (#340) 2018-01-29 18:21:20 +01:00
Giannis Adamopoulos
fabf069daf [EXPLORER] Fix showing the lock status in the taskbar popup menu 2018-01-29 18:15:31 +02:00
Joann Mõndresku
d80ef2c90a [TRANSLATION] Various translations to Estonian (#329)
Estonian translations for shell + explorer, cpl files (access, appwiz, desk, timedate), devmgr, browseui, comctl32, aclui, avifil32, comdlg32 and credui.
2018-01-29 17:03:27 +01:00
Giannis Adamopoulos
8c4b7b0747 [COMCTL32] toolbar: Use szBarPadding.cy as the default top margin 2018-01-29 17:51:06 +02:00
Giannis Adamopoulos
22d1e1017f [EXPLORER] CNotifyToolbar: Set TBMETRICS::cxBarPad and TBMETRICS::cyBarPad
MSDN says that these values are not used but apparently they are used as a padding around the buttons.
This helps to center the buttons in the notification area.
2018-01-29 17:30:44 +02:00
Alexander Shaposhnikov
19a67154c6 [CONTRIBUTING] Update .gitmessage template 2018-01-29 16:09:04 +02:00
Alexander Shaposhnikov
d70741fa20 [CONTRIBUTING] Add a commit template and a paragraph about it
This template defines a general commit style, and will be most
helpful for newcomers. I will be using it personally :)
2018-01-29 15:08:04 +02:00
Giannis Adamopoulos
c54c5ebb5f [EXPLORER] CTrayWindow: Draw the sizer only when the taskbar is not locked. 2018-01-29 00:27:45 +02:00
Giannis Adamopoulos
488477d10d [EXPLORER] CTrayNotifyWnd: Fix resizing when the clock is hidden 2018-01-28 22:38:48 +02:00
Giannis Adamopoulos
85d7dd4f83 [EXPLORER] CTrayNotifyWnd: Only update the requested dimension when handling TNWM_GETMINIMUMSIZE. 2018-01-28 22:04:34 +02:00
Giannis Adamopoulos
5a1984c998 [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. 2018-01-28 20:24:02 +02:00
Giannis Adamopoulos
6c073e9539 [EXPLORER] CTrayClockWnd: Implement showing and hiding seconds or the whole clock from the properties window. 2018-01-28 18:59:18 +02:00
Giannis Adamopoulos
455bce68b5 [EXPLORER] -Make CSysPagerWnd, CTaskSwitchWnd, CTrayClockWnd and CTrayNotifyWnd proper com objects so that their lifetime is managed properly. 2018-01-28 18:35:16 +02:00
Alex Ionescu
478348ead1 [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.
2018-01-28 16:29:43 +01:00
Alex Ionescu
e836d0b56e [ROSLOAD] Initial support for launching OS Loader Entrypoint and returning from it
[ENVIRON]: Implement BlArchGetCpuVendor
[ROSLOAD]: Stub OslPrepareTarget, OslExecuteTransition
[ROSLOAD]: Implement OslpMain
2018-01-28 13:24:20 +01:00
Pierre Schweitzer
b49a2d6356 [NTOSKRNL] Drop ROS_DEFERRED_WRITE_CONTEXT in favor of DEFERRED_WRITE
that was introduced in d3e0eb2.

CORE-14235
2018-01-28 11:55:40 +01:00
Pierre Schweitzer
52287be9a9 [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
2018-01-28 11:14:15 +01:00
Thomas Faber
d3e0eb2026 [NDK] Add DEFERRED_WRITE structure for Cc. CORE-14235
Consistently use CSHORT for NodeTypeCode/NodeByteSize while we're at it.
2018-01-28 10:48:36 +01:00
Thomas Faber
d3a29816ce [NTOS:MM] Assert MmLocateMemoryAreaByAddress return value to satisfy Coverity. CID 701289 2018-01-28 10:48:27 +01:00
Thomas Faber
5c52ded05f [NTOS:PS] Check for rundown success in PsReferenceProcessFilePointer. CID 514553 2018-01-28 10:48:19 +01:00
Eric Kohl
2d69520595 [SERVICES] Do not delete running services.
CORE-14260
2018-01-28 00:57:58 +01:00
Pierre Schweitzer
f032b77c51 [NTOSKRNL] Fix MSVC build? 2018-01-27 22:02:01 +01:00
Pierre Schweitzer
2d4a54dcf2 [NTOSKRNL] Hello CcIdleDelay :-)
(Good link for the interested reader: https://msdn.microsoft.com/en-us/library/bb742613.aspx)
2018-01-27 21:52:19 +01:00
Serge Gautherie
2e868f2604 [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.
2018-01-27 19:54:26 +00:00
Giannis Adamopoulos
7f35908ad2 [EXPLORER] CTrayNotifyWnd: Simplify how it interacts with its parent and children. Clean up. 2018-01-27 19:41:09 +02:00
Pierre Schweitzer
78664ebe15 [NTOSKRNL] On file cache deletion, only manipulate VACB once locked.
Should help avoiding race conditions with lazy write.

CORE-14263
2018-01-27 18:37:34 +01:00
Mark Jansen
3889d8309a [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).
2018-01-27 18:10:50 +01:00
Stanislav Motylkov
dd65d06270 [TRANSLATION] Add and fix translations for ping and tracert (#331) 2018-01-27 16:25:51 +01:00
Hermès Bélusca-Maïto
32c875032b [EVTLIB] Make the header C++ compatible. 2018-01-27 16:07:32 +01:00
Hermès Bélusca-Maïto
e9113338c6 [CONUTILS] Fix macro definition. 2018-01-27 16:00:58 +01:00
Hermès Bélusca-Maïto
1e87e2fa9d [CONUTILS] Make the headers C++ compatible. 2018-01-27 15:49:17 +01:00
Mark Jansen
f7520da3ce [SDB] Define the layers GetShortPathNameNT4 and GetDiskFreeSpace2GB 2018-01-27 15:12:24 +01:00
Mark Jansen
7630bb0e79 [SHIMENG] Parse and apply [AppCompat] Flags. 2018-01-27 15:12:24 +01:00
Mark Jansen
1d0e7bddea [XML2SDB] Parse Flags. 2018-01-27 15:12:24 +01:00
Mark Jansen
06d7926e27 [SHIMENG] Change SE_InstallBeforeInit loglevel. 2018-01-27 15:12:24 +01:00
Ercan Ersoy
cae04ffcb3 [STOBJECT] Change Turkish translation. 2018-01-27 14:40:54 +01:00
Ercan Ersoy
35bbc588a0 [NTOBJSHEX] Change Turkish translation. 2018-01-27 14:40:54 +01:00
Ercan Ersoy
f59785581d [NETSHELL] Change Turkish translation. 2018-01-27 14:40:54 +01:00
Ercan Ersoy
771fa07d8e [NETSHELL] Change Turkish translation. 2018-01-27 14:40:54 +01:00
Ercan Ersoy
c514d5c74a [DESKADP] Change Turkish translation. 2018-01-27 14:40:54 +01:00
Ercan Ersoy
9a908a3e4d [ACPPAGE] Change Turkish translation. 2018-01-27 14:40:54 +01:00
Ercan Ersoy
8d8d11f395 [DESKMON] Change Turkish translation. 2018-01-27 14:40:54 +01:00
Ercan Ersoy
a1870cf427 [FONTEXT] Translate to Turkish.
Change fontext.rc file and add lang/tr-TR.rc file
2018-01-27 14:40:54 +01:00
Pierre Schweitzer
4035f79ac6 [TRANSLATION] Fix a few bits in shortcuts French translation. 2018-01-27 14:30:05 +01:00
Adam Słaboń
fbcf05062e [TRANSLATION] Polish translation update (#328) 2018-01-27 13:21:22 +01:00
Pierre Schweitzer
79887db12e [TRACERT] Add French translation 2018-01-27 13:01:45 +01:00
Pierre Schweitzer
77105d9c5b [PING] Complete French translation 2018-01-27 12:49:14 +01:00
Pierre Schweitzer
a3d78067ab [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
2018-01-27 10:59:27 +01:00
Serge Gautherie
1971137a5f [KMTEST] TcpIpConnect: Fix harmless typos (#299)
- 1 s/ok_bool_true/ok/, overkill though harmless.
- 1 s/ntohs/htons/, typo though harmless.

ROSTESTS-274
2018-01-27 11:50:10 +02:00
Dmitry Bagdanov
991d33c5d1 [CABMAN] Move CCFDATAStorage class to a separate file 2018-01-27 10:42:05 +01:00
Dmitry Bagdanov
ae391dd609 [CABMAN] Remove _WIN32 ifdef's 2018-01-27 10:42:05 +01:00
Giannis Adamopoulos
5b8975211d [GDIPLUS] Add it to winsxs.
[NTDLL_APITEST] Remove a hack for gdiplus
2018-01-27 02:45:50 +02:00
Giannis Adamopoulos
22317b0ca4 [NTDLL_APITEST] Remove one of the hacks for the implicit activation context. 2018-01-27 02:45:50 +02:00
Giannis Adamopoulos
1e903d96cb [RTL] actctx: Implement the implicit activation context 2018-01-27 02:45:50 +02:00
Serge Gautherie
50afbd48d4 [FREELDR] FreeLdr debug.h does not care about NDEBUG. (#201)
- Remove all "#define NDEBUG".
2018-01-26 23:34:21 +00:00
toehead2001
a30d12dde7 [SNDVOL32] Fix controls' offset (#280)
CORE-9108
2018-01-26 23:30:15 +02:00
Katayama Hirofumi MZ
19f8ed2b7a [GDI32_APITEST] Add GetTextMetrics tests to gdi32_apitest (#307)
CORE-13840
2018-01-26 23:23:00 +02:00
Serge Gautherie
b5a7765068 [FREELDR] i386vid.c: Downgrade/Improve 3 false ERR() to WARN(). CORE-13496
Silence harmless errors, which can be reported at every boot.
2018-01-26 23:11:52 +02:00
Joann Mõndresku
757511c4e8 [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.
2018-01-26 22:43:25 +02:00
Stanislav Motylkov
906fdf9ccb [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
2018-01-26 18:38:47 +00:00
Stanislav Motylkov
010c7bfc9b [TRACERT] Improve error handling and output (#319)
- Correctly interpret network error codes
- Add output for generic transmit failure

CORE-14242 #resolve
2018-01-26 18:37:43 +00:00
Vadim Galyant
11772da783 [USBPORT] Small changes for debugging. 2018-01-26 20:46:34 +09:00
Pierre Schweitzer
dc85171674 [NTOSKRNL] Simplify (and speedup!) CcCanIWrite() using the dirty pages count in cache map. 2018-01-26 10:50:13 +01:00
Pierre Schweitzer
5cc0668b21 [NTOSKRNL] Store the total dirty pages per shared cache map in it. 2018-01-26 10:42:09 +01:00
Pierre Schweitzer
2362e0faae [NTOSKRNL] Allow pinned dirty VACB to be lazy written.
This is an addition to 07e6e9c.
Also, fix a cppcheck warning (so minor!).

CORE-14249
2018-01-25 22:00:20 +01:00
Pierre Schweitzer
9c27193a43 [NTOSKRNL] Contrary to WinDBG !filecache, we don't display CONTROL_AREA but shared cache map 2018-01-25 13:47:00 +01:00
Pierre Schweitzer
5c52ae6695 [NTOSKRNL] Fix MSVC build? 2018-01-24 22:03:23 +01:00
Pierre Schweitzer
cb52c82125 [NTOSKRNL] Implement (it's a bit raw for now!) the !filecache command in KDBG 2018-01-24 21:46:16 +01:00
Pierre Schweitzer
9d1e16663a [NTOSKRNL] Link all the shared cache map together. 2018-01-24 21:46:16 +01:00
Serge Gautherie
804472fab8 [ATL_APITEST] CComObject.cpp: Fix output test name copypasta. 2018-01-24 18:59:19 +01:00
Stanislav Motylkov
0acd59b541 [TRANSLATION] [DESK] Update russian translation (#323) 2018-01-24 16:13:51 +01:00
Baruch Rutman
b917d826a4 [BASE/APPLICATIONS] Hebrew translation updates (#321)
Translation updates + mirroring support.
2018-01-24 16:00:43 +01:00
Pierre Schweitzer
89670a48ab [WINHTTP_WINETEST] Properly re-add the ROS diff removed during last winesync.
This avoids timeouts in the winhttp:notification test.

ROSTESTS-295
CORE-14248
2018-01-24 15:56:49 +01:00
David Quintana
3d75cc0814 [EXPLORER] Split up the notification area into a few more manageable pieces. 2018-01-24 14:41:31 +01:00
Pierre Schweitzer
4a910a12cc [NTOSKRNL] Make lazy writer thread run with higher priority.
CORE-14248
2018-01-24 10:09:19 +01:00
Pierre Schweitzer
f93acd806a [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
2018-01-23 23:25:26 +01:00
Pierre Schweitzer
389f683026 [NTOSKRNL] Unexpected cleanup 2018-01-23 23:25:26 +01:00
Pierre Schweitzer
9a07c71eef [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
2018-01-23 23:25:26 +01:00
Pierre Schweitzer
07e6e9c9c1 [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
2018-01-23 23:25:26 +01:00
Pierre Schweitzer
6ba67b8152 [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
2018-01-23 23:25:26 +01:00
David Quintana
5ec441a867 [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!
2018-01-23 23:10:44 +01:00
David Quintana
bc43733e48 [EXPLORER] Implement balloon queueing. 2018-01-23 22:13:01 +01:00
David Quintana
bbca71c4a5 [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.
2018-01-23 22:13:01 +01:00
Pierre Schweitzer
c7ad200f8b [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
2018-01-23 19:33:59 +01:00
Joachim Henze
2382435e88 [DESK.CPL] Update de-DE.rc for flat menus option 2018-01-23 19:29:28 +01:00
Stanislav Motylkov
25564cda9d [UXTHEME] Add missing THEME_BUTTON_STATES
CORE-14245 #resolve
2018-01-23 14:46:57 +02:00
Hermès Bélusca-Maïto
9e07da5ccb [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.
2018-01-22 21:07:21 +01:00
Stanislav Motylkov
c22c6e3ba3 [WIN32K:NTUSER] Fix color indices for themes
CORE-14231 #resolve
2018-01-22 21:45:50 +02:00
Stanislav Motylkov
e8ec23fcd2 [DESK.CPL] Fix hardcoded colors in classic theme preview
CORE-14238 #resolve
2018-01-22 21:45:03 +02:00
Stanislav Motylkov
46c40d4cb5 [DESK.CPL] Add flat menus option to effects dialog 2018-01-22 20:42:10 +02:00
Jérôme Gardou
c4ee1a3460 [WINSRV] -Fix inline functions definitions
This fixes -O0 compilation
2018-01-22 18:17:50 +01:00
Stanislav Motylkov
20a782b7b1 [KBSWITCH] Update tray icon on color scheme change
CORE-14240 #resolve
2018-01-22 18:56:41 +02:00
Vadim Galyant
f37a3dc42f [USBPORT] Add USB2_BIT_STUFFING_OVERHEAD constant. 2018-01-22 14:15:57 +09:00
Eric Kohl
9d29ee3a62 [DEVMGR] Implement missing device power information (current power state, power capabilities and power state mappings). 2018-01-22 00:35:21 +01:00
Amine Khaldi
46598fe04a [SECUR32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:45:12 +01:00
Amine Khaldi
bdbc2cbf9e [SCRRUN_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:44:28 +01:00
Amine Khaldi
2f85bcc30b [REGEDIT_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:43:47 +01:00
Amine Khaldi
4a7f3bdb4e [PSAPI_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:43:04 +01:00
Amine Khaldi
d1c4fe8cfb [OPENGL32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:42:20 +01:00
Amine Khaldi
173200c3cb [NETAPI32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:40:45 +01:00
Amine Khaldi
d42fce3c82 [MSVCRT_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:39:53 +01:00
Amine Khaldi
64daf542b8 [CMD_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:38:00 +01:00
Amine Khaldi
c16a79f47a [QUARTZ_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:34:54 +01:00
Amine Khaldi
b313fd906e [QUARTZ] Sync with Wine 3.0. CORE-14225 2018-01-21 22:33:20 +01:00
Amine Khaldi
4d8fc348d7 [QEDIT_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:32:08 +01:00
Amine Khaldi
defffcf1f0 [QEDIT] Sync with Wine 3.0. CORE-14225 2018-01-21 22:31:34 +01:00
Amine Khaldi
09527f87fb [DXDIAGN_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:30:36 +01:00
Amine Khaldi
92f11cd7c0 [DXDIAGN] Sync with Wine 3.0. CORE-14225 2018-01-21 22:29:51 +01:00
Amine Khaldi
2fe88c2edd [DPLAYX_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:28:27 +01:00
Amine Khaldi
c557dfb7b8 [DINPUT_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:27:32 +01:00
Amine Khaldi
0b35adc274 [DINPUT] Sync with Wine 3.0. CORE-14225 2018-01-21 22:26:41 +01:00
Amine Khaldi
56fc552f24 [DEVENUM] Sync with Wine 3.0. CORE-14225 2018-01-21 22:25:39 +01:00
Amine Khaldi
65bd988c40 [D3DX9_24=>43] Sync with Wine 3.0. CORE-14225 2018-01-21 22:24:27 +01:00
Amine Khaldi
a18d16dcb5 [D3DCOMPILER_43] Sync with Wine 3.0. CORE-14225 2018-01-21 22:22:20 +01:00
Amine Khaldi
d6ac0a71ad [D3D9][WINED3D] Sync with Wine 3.0. CORE-14225 2018-01-21 22:20:57 +01:00
Amine Khaldi
d255223474 [DDRAW] Sync with Wine 3.0. CORE-14225 2018-01-21 22:15:58 +01:00
Amine Khaldi
e6c95b14e3 [D3D8] Sync with Wine 3.0. CORE-14225 2018-01-21 22:13:33 +01:00
Amine Khaldi
928bad849b [AMSTREAM] Sync with Wine 3.0. CORE-14225 2018-01-21 22:11:24 +01:00
Amine Khaldi
9a9ebc0e93 [WINHLP32] Sync with Wine 3.0. CORE-14225 2018-01-21 22:10:10 +01:00
Amine Khaldi
502927fd0e [XCOPY] Sync with Wine 3.0. CORE-14225 2018-01-21 22:08:40 +01:00
Amine Khaldi
f7f635d478 [TASKKILL] Sync with Wine 3.0. CORE-14225 2018-01-21 22:07:31 +01:00
Amine Khaldi
819443d39d [REG_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:05:34 +01:00
Amine Khaldi
b50acff2bf [REG] Sync with Wine 3.0. CORE-14225 2018-01-21 22:04:40 +01:00
Amine Khaldi
d71285065d [WTSAPI32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:02:13 +01:00
Amine Khaldi
90f14ccef3 [WTSAPI32] Sync with Wine 3.0. CORE-14225 2018-01-21 22:01:34 +01:00
Amine Khaldi
161232c08b [WSHOM_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 22:00:27 +01:00
Amine Khaldi
3672658e75 [WSHOM.OCX] Sync with Wine 3.0. CORE-14225 2018-01-21 21:59:45 +01:00
Amine Khaldi
81b5ed93e1 [WMVCORE] Sync with Wine 3.0. CORE-14225 2018-01-21 21:58:37 +01:00
Amine Khaldi
d8772ec2ca [WLDAP32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 21:57:40 +01:00
Amine Khaldi
87c506baca [WLDAP32] Sync with Wine 3.0. CORE-14225 2018-01-21 21:57:04 +01:00
Amine Khaldi
f40fd12dfd [WININET_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-21 21:54:59 +01:00
Amine Khaldi
c95e9203e6 [WININET] Sync with Wine 3.0. CORE-14225 2018-01-21 21:53:54 +01:00
Mark Jansen
eec2e288be [APPSHIM_APITEST] Windows 10 test update 2018-01-21 21:13:08 +01:00
Mark Jansen
f9395e92af [APPHELP][APPHELP_APITEST] Fix SdbGetAppPatchDir prototype 2018-01-21 21:13:08 +01:00
Mark Jansen
f4f4466ffd [APPSHIM_APITEST] Add test for shims in AcLayers 2018-01-21 21:13:08 +01:00
Mark Jansen
fc503b7c08 [APPSHIM_APITEST] Add test for shims in AcGenral 2018-01-21 21:13:08 +01:00
Mark Jansen
3fd6fcf6eb [APPHELP] Use GetSystemWindowsDirectory instead of GetWindowsDirectory 2018-01-21 21:13:08 +01:00
Mark Jansen
abeaf2e9db [SHIMENG] Change the default loglevel + mute GetProcAddress logging 2018-01-21 21:13:08 +01:00
Vadim Galyant
797ebcab72 [USBPORT] Fixing use DeviceSpeed instead Direction. 2018-01-21 19:36:01 +01:00
Vadim Galyant
a4dee8e3ac [USBPORT] Add a space in indentation. 2018-01-21 19:36:00 +01:00
Vadim Galyant
ecd0097e37 [USBPORT] Delete DPRINTs. 2018-01-21 19:36:00 +01:00
Vadim Galyant
0f8079df3a [USBPORT] Add USB2_PREV_MICROFRAME constant. 2018-01-21 19:35:59 +01:00
Vadim Galyant
fd5beb5593 [USBPORT] Moving array CMASKS[] to start file. 2018-01-21 19:35:59 +01:00
Vadim Galyant
2c73523b76 [USBPORT] Removing optional braces. 2018-01-21 19:35:59 +01:00
Vadim Galyant
c86210e800 [USBPORT] Correcting check Period. 2018-01-21 19:35:58 +01:00
Vadim Galyant
dd1297f0d0 [USBPORT] Use min(), max() macro. 2018-01-21 19:35:58 +01:00
Vadim Galyant
ab88f25048 [USBPORT] Check Period instead Factor. 2018-01-21 19:35:58 +01:00
Vadim Galyant
954cc021da [USBPORT] Proper naming. 2018-01-21 19:35:57 +01:00
Vadim Galyant
18f4fc71c8 [USBPORT] Use min() macro. 2018-01-21 19:35:57 +01:00
Vadim Galyant
9426d2986d [USBPORT] Fixing calculation pointer for FdoExtension->Usb2Extension. 2018-01-21 19:35:56 +01:00
Vadim Galyant
7b92b8a6e2 [USBPORT] Implement USBPORT_FreeBandwidthUSB2(). 2018-01-21 19:35:56 +01:00
Vadim Galyant
57f092106a [USBPORT] Correcting USB2_DeallocateEndpointBudget(). 2018-01-21 19:35:56 +01:00
Vadim Galyant
bc9046c635 [USBPORT] Implement USB2_PromotePeriods(). 2018-01-21 19:35:55 +01:00
Vadim Galyant
0558635f98 [USBPORT] Add USB2_ChangePeriod(). 2018-01-21 19:35:55 +01:00
Vadim Galyant
69406c2628 [USBPORT] Implement USB2_DeallocateEndpointBudget(). 2018-01-21 19:35:54 +01:00
Vadim Galyant
5ad7a2faa5 [USBPORT] Implement USB2_RebalanceEndpoint(). 2018-01-21 19:35:54 +01:00
Vadim Galyant
522c0d3c69 [USBPORT] Implement USB2_Rebalance(). 2018-01-21 19:35:54 +01:00
Vadim Galyant
5d12e3040c [USBPORT] Add stub for USB2_RebalanceEndpoint(). 2018-01-21 19:35:53 +01:00
Vadim Galyant
bbbcb1dc75 [USBPORT] Rename variables only in USB2_AllocateTimeForEndpoint(). 2018-01-21 19:35:53 +01:00
Vadim Galyant
3ba9fffbb2 [USBPORT] Start implementation USB2_DeallocateEndpointBudget(). 2018-01-21 19:35:53 +01:00
Vadim Galyant
3031695100 [USBPORT] Add USB2_CommonFrames(). 2018-01-21 19:35:52 +01:00
Vadim Galyant
ae800da85b [USBPORT] Implement USB2_MoveTtEndpoint(). 2018-01-21 19:35:52 +01:00
Vadim Galyant
c48093573b [USBPORT] Implement USB2_DeallocateHS(). 2018-01-21 19:35:51 +01:00
Vadim Galyant
00dd0c67b6 [USBPORT] Correcting USB2_AllocateHS(). 2018-01-21 19:35:51 +01:00
Vadim Galyant
1926238056 [USBPORT] Reduces output of debug messages. 2018-01-21 19:35:51 +01:00
Vadim Galyant
5ffefbe945 [USBPORT] Add USB2_GetCMASK(). 2018-01-21 19:35:50 +01:00
Vadim Galyant
f3c869a16b [USBPORT] Add USB2_GetSMASK()and USB2_ConvertFrame(). 2018-01-21 19:35:50 +01:00
Vadim Galyant
df44bc6d84 [USBPORT] Add stub for USB2_MoveTtEndpoint(). 2018-01-21 19:35:50 +01:00
Vadim Galyant
ab5810576f [USBPORT] Add stub for USB2_DeallocateHS(). 2018-01-21 19:35:49 +01:00
Vadim Galyant
8b9d5d1514 [USBPORT] Correcting USB2_InitTtEndpoint(). 2018-01-21 19:35:49 +01:00
Vadim Galyant
e262bb610d [USBPORT] End implementation USB2_AllocateTimeForEndpoint(). 2018-01-21 19:35:49 +01:00
Vadim Galyant
2be475db5d [USBPORT] Correcting USB2_GetStartTime(). 2018-01-21 19:35:48 +01:00
Vadim Galyant
7553e54199 [USBPORT] Start implementation USB2_AllocateTimeForEndpoint(). 2018-01-21 19:35:48 +01:00
Vadim Galyant
65f8f961a3 [USBPORT] Continue implementation USBPORT_AllocateBandwidthUSB2(). 2018-01-21 19:35:47 +01:00
Vadim Galyant
67138e7d54 [USBPORT] Use ExFreePoolWithTag() instead ExFreePool() for TtExtension. Add debug info. 2018-01-21 19:35:47 +01:00
Vadim Galyant
3bda39fcb8 [USBPORT] Add USBPORT_DumpingEndpointProperties() and USBPORT_DumpingTtEndpoint(). 2018-01-21 19:35:47 +01:00
Vadim Galyant
698f092ab1 [USBPORT] Implement USB2_AllocateHS(). 2018-01-21 19:35:46 +01:00
Vadim Galyant
720d7cfd9b [USBPORT] Add USB2_GetHsOverhead(). 2018-01-21 19:35:46 +01:00
Vadim Galyant
2d4bd7b744 [USBPORT] Reduces output of debug messages. 2018-01-21 19:35:46 +01:00
Vadim Galyant
816b3a572c [USBPORT] Remove unnecessary semicolon. 2018-01-21 19:35:45 +01:00
Vadim Galyant
5654674e8c [USBPORT] Add stubs for USB2_AllocateHS() and USB2_DeallocateEndpointBudget(). 2018-01-21 19:35:45 +01:00
Vadim Galyant
e39b88e3e7 [USBPORT] Add USB2_GetPrevMicroFrame(). 2018-01-21 19:35:45 +01:00
Vadim Galyant
71a7208f69 [USBPORT] Add USB2_IncMicroFrame(). 2018-01-21 19:35:44 +01:00
Vadim Galyant
22b8777f84 [USBPORT] Add USB2_GetStartTime(). 2018-01-21 19:35:44 +01:00
Vadim Galyant
0216b033cc [USBPORT] Add USB2_GetLastIsoTime(). 2018-01-21 19:35:44 +01:00
Vadim Galyant
c3803bed8a [USBPORT] Add USB2_CheckTtEndpointInsert(). 2018-01-21 19:35:43 +01:00
Vadim Galyant
e701da4923 [USBPORT] Add USB2_AllocateCheck(). 2018-01-21 19:35:43 +01:00
Vadim Galyant
c034297f2d [USBPORT] Add USB2_AddDataBitStuff(). 2018-01-21 19:35:43 +01:00
Vadim Galyant
754f749cfd [USBPORT] Add USB2_GetOverhead(). 2018-01-21 19:35:42 +01:00
Vadim Galyant
c2ae849dab [USBPORT] Start implementation USBPORT_AllocateBandwidthUSB2(). 2018-01-21 19:35:42 +01:00
Vadim Galyant
02d1cfd37f [USBPORT] Change debug message in USBPORT_RemoveDevice((). 2018-01-21 19:35:41 +01:00
Vadim Galyant
5e15ba48b9 [USBPORT] Add support for transaction translators in USBPORT_RemoveDevice(). 2018-01-21 19:35:41 +01:00
Vadim Galyant
cbba6e80fc [USBPORT] Correcting USBPORT_InitializeDevice() and USBPORT_RestoreDevice() (DEVICE_HANDLE_FLAG_USB2HUB). 2018-01-21 19:35:41 +01:00
Vadim Galyant
664e48cad5 [USBPORT] Implement USBPORT_FreeBandwidth(). 2018-01-21 19:35:40 +01:00
Vadim Galyant
aae6dd6073 [USBPORT] Implement USBPORT_AllocateBandwidth(). 2018-01-21 19:35:40 +01:00
Vadim Galyant
c6ca2a8f02 [USBPORT] Add support for transaction translators in USBPORT_OpenPipe() and USBPORT_ClosePipe(). 2018-01-21 19:35:40 +01:00
Vadim Galyant
7c398f6eb7 [USBPORT] Initialize FdoExtension->Bandwidth[] in USBPORT_StartDevice(). 2018-01-21 19:35:39 +01:00
Vadim Galyant
0f8425ed44 [USBPORT] Add USBPORT_GetTt(). 2018-01-21 19:35:39 +01:00
Vadim Galyant
c92f591144 [USBPORT] Add support for transaction translators in USBPORT_CreateDevice(). 2018-01-21 19:35:39 +01:00
Vadim Galyant
3fcbd7744c [USBPORT] Add support for transaction translators in USBPORT_OpenPipe(). 2018-01-21 19:35:38 +01:00
Vadim Galyant
e48d6136ec [USBPORT] Add USBPORT_UpdateAllocatedBwTt(). 2018-01-21 19:35:38 +01:00
Vadim Galyant
18702047a1 [USBPORT] Implement USBPORT_InitializeTT(). 2018-01-21 19:35:38 +01:00
Vadim Galyant
da1e283837 [USBPORT] Add USB2_InitTtEndpoint(). 2018-01-21 19:35:37 +01:00
Vadim Galyant
9cdc1d64b3 [USBPORT] Add USB2_InitTT(). 2018-01-21 19:35:37 +01:00
Vadim Galyant
0f2f4c6ca2 [USBPORT] Add USB2_InitController(). 2018-01-21 19:35:37 +01:00
Vadim Galyant
faa792987b [USBPORT] Add initial support for transaction translators in USBPORT_AddDevice(). 2018-01-21 19:35:36 +01:00
Vadim Galyant
0b78ad8eb2 [USBPORT] Use constants in USBPORT_OpenPipe(). 2018-01-21 19:35:36 +01:00
Vadim Galyant
d2b088e9d6 [USBPORT] Define structures for Transaction Translator. 2018-01-21 19:35:36 +01:00
Vadim Galyant
a3dd5620d3 [USBPORT] Use constants in USBPORT_CalculateUsbBandwidth(). 2018-01-21 19:35:35 +01:00
Vadim Galyant
41f4814c44 [USBPORT] Define constants for Transaction Translator. 2018-01-21 19:35:35 +01:00
Vadim Galyant
d4ff198c7c [PSDK] Add USB hub class-specific request type codes. 2018-01-21 19:35:34 +01:00
Kamil Smoliński
00ed9fc88b [SHELL32] Fix typo in Polish translation pl-PL.rc 2018-01-21 19:13:57 +01:00
Amine Khaldi
bb888f9b11 [CMAKE] My eyes! 2018-01-21 13:54:18 +01:00
Amine Khaldi
94e0942644 [USBSTOR_NEW] Create usbstor_new based on usbstor in order to contain Vadim Galyant's work. 2018-01-21 13:51:07 +01:00
Amine Khaldi
d7c47feb25 [FREETYPE] Bring back our diffs to reduce the stack usage in cf2_interpT2CharString(). CORE-14227 2018-01-21 13:31:05 +01:00
Stanislav Motylkov
dade22f479 [WIN32K:NTUSER] Fix hardcoded color for MF_GRAYED menu items
CORE-14196 #resolve
2018-01-21 00:27:23 +02:00
Pierre Schweitzer
d849794a35 [NFI] Rewrite the way files are handled, this allows querying handling a new file while already handling one.
This is useful to fix the problem when a directory wasn't in cache yet, but one of its files is to be displayed.
2018-01-20 22:25:46 +01:00
Pierre Schweitzer
2abb99faa9 [NTOSKRNL] In FsRtlAddToTunnelCache() allocate memory from PagedPool when required.
Also, if allocating from lookaside list, reattempt a cold allocation.
2018-01-20 21:21:00 +01:00
Ged Murphy
cb8cc0d098 [EXPLORER]
We need to leave one slot available for the m_WakeUpEvent handle
2018-01-20 18:50:10 +00:00
Ged Murphy
be2bf9b8c5 - Properly handle cases of more than 64 icons
- Don't leak the list of handles on each pass through the loop
- Make sure we clean up if the wait fails for whatever reason
2018-01-20 18:38:42 +00:00
gedmurphy
851e0ca5a8 Delete the lock on exit 2018-01-20 18:38:42 +00:00
gedmurphy
2abd068398 Properly delete the object and allow its destructor to cleanup 2018-01-20 18:38:42 +00:00
gedmurphy
8c91a00fcf Minor update 2018-01-20 18:38:42 +00:00
gedmurphy
6c9629bb72 forgot about the gcc build... 2018-01-20 18:38:42 +00:00
gedmurphy
d66c6890f7 Initial implementation of a watcher for the systray (notification area) that removes icons if the owning process dies/terminates without removing it 2018-01-20 18:38:42 +00:00
Ged Murphy
37a39f1843 Formatting, no code change 2018-01-20 18:22:44 +00:00
Serge Gautherie
63775c3215 [LWIP] dhcp.c: Cherry-pick lwIP 32aa9a4. CORE-8978
- Fix a while() check order.
2018-01-20 16:04:34 +01:00
Thomas Faber
fda24da872 [NTOS] Remove unnecessary NULL checks and add a missing one. CIDs 1411958, 716670, 1322186 2018-01-20 15:59:35 +01:00
Thomas Faber
cd992d022f [USP10] Re-use script caches for the same font. CORE-14192
This significantly speeds up WM_SETTEXT in multiline edit controls.
2018-01-20 15:55:07 +01:00
Mark Jansen
7e9fb41b9f [CMAKE/WIDL] Add rudimentary dependency tracking in add_rpcproxy_files
CORE-14204
2018-01-20 15:46:25 +01:00
Pierre Schweitzer
a34d807311 [NFI] Remove the $Extend specific case. This fixes a FIXME 2018-01-20 15:35:05 +01:00
Pierre Schweitzer
a46d9999dd [NFI] Add a first skeleton of what NFI could be.
All it will do for now is dumping the MFT / Files and their attributes.
It lacks many features, could be really improved and is bugged.

Note that logical sectors dump seems to be broken. MS NFI and this one don't agree on values.

Developed against W2K3.
2018-01-20 14:54:00 +01:00
Amine Khaldi
69d123ae25 [WINHTTP_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:56:09 +01:00
Amine Khaldi
9048bdf976 [WINHTTP] Sync with Wine 3.0. CORE-14225 2018-01-20 13:55:24 +01:00
Amine Khaldi
4f825146c2 [PSDK] Update winhttp.h. CORE-14225 2018-01-20 13:54:50 +01:00
Amine Khaldi
c8f158b700 [WINEMP3.ACM] Sync with Wine 3.0. CORE-14225 2018-01-20 13:52:52 +01:00
Amine Khaldi
a5cb9a0a8d [WINDOWSCODECS_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:51:37 +01:00
Amine Khaldi
c3715ca58f [WINDOWSCODECS] Sync with Wine 3.0. CORE-14225 2018-01-20 13:50:46 +01:00
Amine Khaldi
71b8c8c1e2 [WBEMPROX_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:48:13 +01:00
Amine Khaldi
7e99651d65 [WBEMPROX] Sync with Wine 3.0. CORE-14225 2018-01-20 13:47:34 +01:00
Amine Khaldi
b99f0b4922 [WBEMDISP] Sync with Wine 3.0. CORE-14225 2018-01-20 13:45:23 +01:00
Amine Khaldi
41c4d894f3 [VERSION_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:43:01 +01:00
Amine Khaldi
9e01104f70 [VERSION] Sync with Wine 3.0. CORE-14225 2018-01-20 13:41:59 +01:00
Amine Khaldi
942c426525 [VBSCRIPT_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:40:57 +01:00
Amine Khaldi
e0b80a0929 [VBSCRIPT] Sync with Wine 3.0. CORE-14225 2018-01-20 13:39:40 +01:00
Amine Khaldi
eb91a73902 [URLMON_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:30:25 +01:00
Amine Khaldi
2eb77351e0 [URLMON] Sync with Wine 3.0. CORE-14225 2018-01-20 13:29:39 +01:00
Amine Khaldi
a0b6db8b7f [SHLWAPI_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:27:32 +01:00
Amine Khaldi
d3f4d62dde [SHDOCVW_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:19:06 +01:00
Amine Khaldi
0edcbac349 [TWAIN_32] Sync with Wine 3.0. CORE-14225 2018-01-20 13:17:45 +01:00
Amine Khaldi
b7250325e4 [SHLWAPI] Sync with Wine 3.0. CORE-14225 2018-01-20 13:15:19 +01:00
Amine Khaldi
b2462dae72 [SHDOCVW] Sync with Wine 3.0. CORE-14225 2018-01-20 13:14:14 +01:00
Amine Khaldi
90155f749f [RPCRT4] Sync with Wine 3.0. CORE-14225 2018-01-20 13:13:03 +01:00
Amine Khaldi
44f07538ba [RICHED20_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:11:06 +01:00
Amine Khaldi
2bf764722b [RICHED20] Sync with Wine 3.0. CORE-14225 2018-01-20 13:09:57 +01:00
Amine Khaldi
f41035d141 [PROPSYS_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:06:43 +01:00
Amine Khaldi
2dd1f8b089 [PSDK] Update propvarutil.h. CORE-14225 2018-01-20 13:04:48 +01:00
Amine Khaldi
95c3773f73 [PROPSYS] Sync with Wine 3.0. CORE-14225 2018-01-20 13:02:49 +01:00
Amine Khaldi
5f28af7188 [OLEAUT32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 13:00:17 +01:00
Amine Khaldi
13fd286c18 [OLEAUT32] Sync with Wine 3.0. CORE-14225 2018-01-20 12:59:23 +01:00
Amine Khaldi
b44b1afb81 [OLE32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 12:58:03 +01:00
Amine Khaldi
2178977b54 [OLE32] Sync with Wine 3.0. CORE-14225 2018-01-20 12:57:25 +01:00
Amine Khaldi
d4c87f7aa8 [MSXML3_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 12:36:34 +01:00
Amine Khaldi
0506c9332a [MSXML3] Sync with Wine 3.0. CORE-14225 2018-01-20 12:35:17 +01:00
Amine Khaldi
d023d396ee [MSVIDC32] Sync with Wine 3.0. CORE-14225 2018-01-20 12:33:41 +01:00
Amine Khaldi
8e65919260 [MSVFW32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 12:32:30 +01:00
Amine Khaldi
76e5652fb4 [MSVFW32] Sync with Wine 3.0. CORE-14225 2018-01-20 12:31:50 +01:00
Amine Khaldi
f860a7802c [MSI_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 12:30:30 +01:00
Amine Khaldi
f8b992f2d3 [MSI] Sync with Wine 3.0. CORE-14225 2018-01-20 12:29:30 +01:00
Amine Khaldi
35e6bb9199 [IMM32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 12:27:53 +01:00
Amine Khaldi
ae5f2352bc [MMDEVAPI_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 12:26:57 +01:00
Amine Khaldi
a3eb2d3811 [MMDEVAPI] Sync with Wine 3.0. CORE-14225 2018-01-20 12:26:03 +01:00
Amine Khaldi
eeff448275 [USP10_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-20 12:23:22 +01:00
Amine Khaldi
cea8085626 [USP10] Sync with Wine 3.0. CORE-14225 2018-01-20 12:17:14 +01:00
Thomas Faber
095a4d1d23 [RTL] Handle RtlReAllocateHeap failure in com_class_add_progid. CID 1223161 2018-01-20 09:48:07 +01:00
Thomas Faber
73e6bc960a [COMCTL32] Unset the toolbar's hot item when deleting a button. CORE-14222
This fixes occasional crashes when hovering over disappearing tray icons.
2018-01-20 02:24:01 +01:00
Lee Schroeder
9be6ac9cbb [DRWTSN32][SHIMDBG] Add missing va_end.
CORE-14193
2018-01-19 22:09:47 +01:00
Amine Khaldi
45ec86c442 [MSCTF_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 12:33:20 +01:00
Amine Khaldi
fa31874ef7 [MSACM32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 12:32:24 +01:00
Amine Khaldi
96960b6e18 [MPR_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 12:30:38 +01:00
Amine Khaldi
7821493171 [MPR] Sync with Wine 3.0. CORE-14225 2018-01-19 12:30:00 +01:00
Amine Khaldi
44e39baf4a [MLANG_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 12:28:36 +01:00
Amine Khaldi
5e2c163f70 [MLANG] Sync with Wine 3.0. CORE-14225 2018-01-19 12:27:23 +01:00
Adam Słaboń
86908fc647 [TRANSLATION] Polish translation update (#284). 2018-01-19 12:06:38 +01:00
Amine Khaldi
df52b0e7e2 [JSCRIPT_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 00:46:30 +01:00
Amine Khaldi
3381ee4b89 [JSCRIPT] Sync with Wine 3.0. CORE-14225 2018-01-19 00:45:08 +01:00
Amine Khaldi
08fb1fc8fe [ITSS] Sync with Wine 3.0. CORE-14225 2018-01-19 00:43:54 +01:00
Amine Khaldi
31fbc03b86 [INSENG] Sync with Wine 3.0. CORE-14225 2018-01-19 00:42:56 +01:00
Amine Khaldi
0749f1d71d [INETCOMM_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 00:40:54 +01:00
Amine Khaldi
88221e598a [INETCOMM] Sync with Wine 3.0. CORE-14225 2018-01-19 00:39:56 +01:00
Amine Khaldi
7b7a0e1bc9 [IMAGEHLP_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 00:38:42 +01:00
Amine Khaldi
fc87cf0bc3 [IMAGEHLP] Sync with Wine 3.0. CORE-14225 2018-01-19 00:37:52 +01:00
Amine Khaldi
c4b0f2155f [IEFRAME] Sync with Wine 3.0. CORE-14225 2018-01-19 00:36:36 +01:00
Amine Khaldi
e399d3ec3e [PSDK] Import ieautomation.idl from Wine 3.0. CORE-14225 2018-01-19 00:35:51 +01:00
Amine Khaldi
d848f99bf9 [ICCVID] Sync with Wine 3.0. CORE-14225 2018-01-19 00:32:44 +01:00
Amine Khaldi
7998a3f086 [HNETCFG_WINETEST] Import from Wine 3.0. CORE-14225 2018-01-19 00:31:47 +01:00
Amine Khaldi
221fc8fd30 [HNETCFG] Sync with Wine 3.0. CORE-14225 2018-01-19 00:30:10 +01:00
Amine Khaldi
c3fa3f6079 [HLINK_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 00:24:20 +01:00
Amine Khaldi
73921e9412 [HLINK] Sync with Wine 3.0. CORE-14225 2018-01-19 00:23:23 +01:00
Amine Khaldi
8d2d12d7ee [HHCTRL.OCX] Sync with Wine 3.0. CORE-14225 2018-01-19 00:21:29 +01:00
Amine Khaldi
70c9f30747 [GDIPLUS_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 00:20:03 +01:00
Amine Khaldi
007122e774 [GDIPLUS] Sync with Wine 3.0. CORE-14225 2018-01-19 00:17:41 +01:00
Amine Khaldi
7a00f240c6 [PSDK] Update gdiplusflat.h and gdiplusgpstubs.h. CORE-14225 2018-01-19 00:15:20 +01:00
Amine Khaldi
9e28af3792 [FUSION_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 00:11:52 +01:00
Amine Khaldi
975d9d4d4c [FUSION] Sync with Wine 3.0. CORE-14225 2018-01-19 00:10:53 +01:00
Amine Khaldi
f9c57f8489 [DBGHELP] Sync with Wine 3.0. CORE-14225 2018-01-19 00:09:29 +01:00
Amine Khaldi
2afa4566ba [CABINET_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-19 00:07:18 +01:00
Amine Khaldi
736e16553a [CABINET] Sync with Wine 3.0. CORE-14225 2018-01-19 00:06:11 +01:00
Amine Khaldi
f1713a3c60 [AVIFIL32] Sync with Wine 3.0. CORE-14225 2018-01-19 00:04:19 +01:00
Amine Khaldi
9c96b06291 [ATL][ATL80][ATL100] Sync with Wine 3.0. CORE-14225 2018-01-19 00:01:06 +01:00
Amine Khaldi
4c8b42be0f [INCLUDE/WINE] Update atlbase.h. CORE-14225 2018-01-19 00:00:10 +01:00
Amine Khaldi
b53d60cfc5 [COMDLG32] Sync with Wine 3.0. CORE-14225 2018-01-18 23:52:46 +01:00
Amine Khaldi
0d320bc25f [COMCTL32_WINETEST] Sync with Wine 3.0. CORE-14225 2018-01-18 23:49:50 +01:00
Amine Khaldi
edd99e8ccc [COMCTL32] Sync with Wine 3.0. CORE-14225 2018-01-18 23:49:20 +01:00
Amine Khaldi
65ab703cd5 [PSDK] Update commctrl.h. CORE-14225 2018-01-18 23:48:30 +01:00
Amine Khaldi
b744385652 [FREETYPE] Update to v2.9.0 and use this as a chance to slim down our lib a bit. CORE-14220 2018-01-18 23:29:50 +01:00
David Quintana
2c8ed37605 [EXPLORER] Fix the code that requests the taskbar to recalculate the size,
after an icon is removed due to missing owner. Also cleaned up the other case.
2018-01-18 02:20:20 +02:00
David Quintana
74e58d938e [EXPLORER] Fix some issues with the notification area code,
and implement NIS_SHAREDICON while at it.
2018-01-18 02:20:20 +02:00
Colin Finck
22ffe5300b [PRINTING] Replace all my custom marshalling code by calls to the newly implemented APIs, thereby significantly reducing the codebase and providing a sane template to implement more Printing APIs. 2018-01-17 12:52:12 +01:00
Colin Finck
35ef5a3c24 [PRINTING] Try to fix Linux build #2 2018-01-17 10:55:02 +01:00
Colin Finck
86c59690da [PRINTING] Try to fix Linux build.
Why this previously built without any errors using GCC and MSVC under Windows is left as an exercise to the reader.
2018-01-17 10:41:55 +01:00
Colin Finck
f3ea8225cb [PRINTING] Implement the undocumented MarshallDownStructure, MarshallDownStructuresArray, MarshallUpStructure, and MarshallUpStructuresArray to the extent I need and could find out through black-box testing.
PDBs reveal that these functions are also used in winspool.drv, but not imported from spoolss.dll to retain the client/server architecture.
As winspool.drv highly benefits from the MarshallUp* functions, I put them in a source file shared between spoolss.dll and winspool.drv.

The added API Tests cover my testing and all implemented features.
One more item done from https://reactos.org/wiki/Printing !
2018-01-17 10:13:25 +01:00
Thomas Faber
2ae756a4e5 [NTOS:MM] Fix broken ASSERT. CID 701285 2018-01-16 22:29:19 +01:00
Giannis Adamopoulos
71e66c69c1 [EXPLORER] CTrayBandSite: Call DBID_SETWINDOWTHEME on new bands to make them use the theme of the taskbar. CORE-14176 2018-01-16 11:50:52 +02:00
Giannis Adamopoulos
4c23b78b5e [BROWSEUI] CISFBand: Handle DBID_SETWINDOWTHEME. CORE-14176 2018-01-16 11:50:51 +02:00
Pierre Schweitzer
c779dbd4c5 [NTOSKRNL] Implement CcIsThereDirtyData() 2018-01-15 23:20:53 +01:00
Mark Jansen
4a2ad113e5 [KERNEL32] Add version info to VerifyVersionInfo mismatch print. 2018-01-15 19:47:58 +01:00
Giannis Adamopoulos
7e9f56229f [UXTHEME] -Pass a non 0 wParam when themes get enabled and 0 when they get disabled 2018-01-15 12:57:08 +02:00
Giannis Adamopoulos
b8062bde5d [COMCTL32] rebar: Remove some hacks and fix checking for transparent background 2018-01-15 12:57:06 +02:00
Giannis Adamopoulos
6318e47bb9 [USER32] InternalGetWindowText: Write to caller's buffer only when one was provided. CORE-13614 2018-01-15 12:45:41 +02:00
Giannis Adamopoulos
bd193c4534 [USER32] Stop hiding exceptions left and right 2018-01-15 12:36:45 +02:00
Joachim Henze
e0498ca00a [SYSDM] Fix text truncation for ru-RU CORE-13845 2018-01-14 13:55:43 +01:00
Timo Kreuzer
2dade10d54 [NTOS] Fix 64 bit warnings 2018-01-14 13:54:14 +01:00
Joachim Henze
9078c335f7 [DESK] Fix text truncation for ru-RU CORE-13845 2018-01-14 13:52:34 +01:00
Mark Jansen
1d4d88b062 [PSDK][ACTXPROXY] Add IExplorerCommand and related classes (Vista+) 2018-01-13 23:49:58 +01:00
Pierre Schweitzer
371aba1abe [NTOSKRNL] When mapping data in CcMapData(), don't truncate offset to ULONG.
This would affect reads/writes on large volumes where offset is higher than what a ULONG can hold.

This really nasty bug was hitting CcMapData() but also CcPinRead() (due to the nature of its implementation)
and both were returning garbage data under certain circumstances with Ext2Fsd.

This should (I hope!) help some other FSDs to work better in ROS.

CORE-12456
2018-01-13 21:30:37 +01:00
Mark Jansen
e5f9029826 [BROWSEUI] Do not clear a CComPtr with memset. 2018-01-13 20:57:04 +01:00
Giannis Adamopoulos
6d9a0d0fd4 [SHELL32] CDrivesFolder: Fix showing the drive capacity. CORE-14201 2018-01-13 21:27:57 +02:00
Giannis Adamopoulos
4b6d929be1 [EXPLORER] Winkey + E shortcut should open "My Computer" instead of "My documents" CORE-14199 2018-01-13 21:14:16 +02:00
Giannis Adamopoulos
5966a18e66 [COMCTL32] toolbar: Use the theme text color for the dropdown arrows. CORE-13855 2018-01-13 16:19:27 +02:00
Giannis Adamopoulos
5618b33c3b [SHELL32] CMenuBand: Redraw the toolbars if this is the menu bar of a window and its active state changed. Use COLOR_GRAYTEXT for the text of the inactive menu bar items. CORE-14197 2018-01-13 14:57:24 +02:00
Amine Khaldi
f2f2dd0552 [USBOHCI_NEW] Bring-in the USB OHCI miniport driver created by Vadim Galyant. (#244)
[USBOHCI_NEW] Add the new usbport-based OHCI driver.
2018-01-12 21:09:58 +01:00
Serge Gautherie
2a8864967f [DRWTSN32] Update output string copypasta from #268 168223aeb8. 2018-01-11 10:37:23 +01:00
Giannis Adamopoulos
f463ebe9e7 [COMCTL32] -toolbar: Improve drawing diabled text with themes. CORE-13855 2018-01-10 23:30:26 +02:00
Vadim Galyant
a0296dd3de [USBPORT] In USBHI_GetExtendedHubInformation, pass the correct port index to RH_GetPortStatus. 2018-01-10 18:59:25 +01:00
Vadim Galyant
c0f157e589 [USBHUB] Move DPRINT after check Status. 2018-01-10 18:59:23 +01:00
Vadim Galyant
86af8d49fb [USBHUB] Correcting L"USB\\Vid_0000&Pid_0000" for case BusQueryDeviceID in USBH_PdoQueryId() if INIT_PORT_FAILED. 2018-01-10 18:59:21 +01:00
Giannis Adamopoulos
789881672a [COMCTL32] status: Use DrawThemeText when drawing text with themes. CORE-13855 2018-01-10 15:52:42 +02:00
Giannis Adamopoulos
92732f1bcf [COMCTL32] rebar: Use DrawThemeText when drawing text with themes. CORE-13855 2018-01-10 13:44:32 +02:00
Thomas Faber
bf5e33201e [MSAFD] Avoid magic numbers in NtCreateEvent calls. 2018-01-10 11:26:21 +01:00
Thomas Faber
f54fb980ba [TCPIP] Fix buffer sizes in ReadIpConfiguration. 2018-01-10 11:25:05 +01:00
Thomas Faber
d87786bf6c [TCPIP] Check for allocation failures in ReadIpConfiguration. CID 1411924 2018-01-10 11:25:03 +01:00
Colin Finck
63a3a2cbb8 [KERNEL32] Accept all images for NT 3.1 and higher instead of bailing out at image versions > 5.01 (#273)
Print a debug message whenever an application newer than ReactOS' internal NT version is started.
This gets a simple "Hello World" compiled by VS' 2017 regular "v141" toolchain to run under ReactOS.

Please retry NT6+ applications!
2018-01-10 09:24:22 +01:00
Mark Jansen
06c1e134e1 [SHIMENG] Mark modified dll's as visited, and apply shims to newly loaded dlls 2018-01-09 22:43:36 +01:00
Mark Jansen
0123f4745b [APPHELP] Try Dos and Nt path formats in SdbGetFileAttributes. 2018-01-09 22:43:36 +01:00
Andreas Maier
387067ad29 [SETUPAPI]: Fix a FIXME in SetupDiSetDeviceRegistryPropertyA.
Rename SetupDiSetDeviceRegistryPropertyW to IntSetupDiSetDeviceRegistryPropertyAW and use it for both (A/W).
The FIXME in the A-Version was already implemented in the W-Version.

CORE-14173.
2018-01-09 18:51:12 +01:00
Mark Jansen
7b398514f1 [NTOS] Limit the spam from NtNotifyChangeMultipleKeys.
CORE-13125
2018-01-08 22:24:54 +01:00
Mark Jansen
81eb3bbceb [SDK] Add UNIMPLEMENTED_ONCE macro, to be used for functions that spam. 2018-01-08 22:24:54 +01:00
Colin Finck
f319cf950c [RAPPS] Remove the RAPPS database from the main source tree. It will now be maintained in the new repository https://github.com/reactos/rapps-db
As a bonus, the public database at https://svn.reactos.org/packages/rappmgr.cab is now automatically updated with every commit to that repository.
Thanks to Alexander Shaposhnikov for the idea and help!
2018-01-08 18:04:50 +01:00
Katayama Hirofumi MZ
ca8c5a2164 [USETUP] Improve muifonts.h and add a SimHei font substitution entry (#272) 2018-01-08 16:24:31 +01:00
Thomas Faber
58f2c14c23 [ADVAPI32] Fix non-PCH build. 2018-01-08 09:51:15 +01:00
Mark Jansen
d0f3fa51fb [ADVAPI32] Stub OpenTrace and ProcessTrace so newer versions of ProcessExplorer start again.
CORE-10312
2018-01-07 22:29:17 +01:00
Mark Jansen
e3459ec36e [PSDK] Fix definition of INVALID_PROCESSTRACE_HANDLE as suggested by Thomas.
#267
2018-01-07 22:29:17 +01:00
Erdem Ersoy
ba3f074320 [TRANSLATIONS] Update the email address and add a note in the Turkish translation document (#271) 2018-01-07 22:09:42 +01:00
jimtabor
7c75bc627b [RichEd20] Fix structure by adding missing byte, see CORE-8452.
Update version, tell wine.
This fixes "Assertion failed: style->cbSize == sizeof(CHARFORMAT2W)".
2018-01-07 14:47:42 -06:00
Serge Gautherie
d6fab4158e [FASTFAT] Improve code style in addition to 8294118174. 2018-01-07 19:29:23 +01:00
Joachim Henze
79d392c53c [WIN32K] revert PR173 to fix regressions in Chrome/Chromium CORE-14170
This reverts ea4daf8b68 committed 2017-12-09 to master, the commit was named
"[WIN32K] Fix NtGdiGetTextFaceW to report face name correctly (#173)",
reverting got ack of khmz,
reopening less severe CORE-14071 accordingly
2018-01-07 17:58:47 +01:00
Pierre Schweitzer
f0a1a5c773 [FASTFAT] Notify on file size change in FileAllocationInformation/FileEndOfFileInformation 2018-01-07 15:29:33 +01:00
Pierre Schweitzer
8294118174 [FASTFAT] Add a wrapper around FsRtlNotifyFullReportChange 2018-01-07 14:16:31 +01:00
Timo Kreuzer
168223aeb8 [DRWTSN32] Fix amd64 build 2018-01-07 13:42:39 +01:00
Pierre Schweitzer
2a36b632ef [FASTFAT] When a file gets overwritten, notify about the changes 2018-01-07 11:44:25 +01:00
Pierre Schweitzer
ffeb3f070b [FASTFAT] When overwriting a file, also update its write time 2018-01-07 11:34:41 +01:00
Pierre Schweitzer
0eacb0b1ef [FASTFAT] When dealing with attributes on IRP_MJ_CREATE, filter user input to ensure we have only attributes we can handle.
This applies to files newly created, or for files overwritten where attributes are reset/modified.
2018-01-06 22:02:10 +01:00
Pierre Schweitzer
7bea4ec07e [NTFS] Apply fix from 52f0726: allow partial info copy on dir enumeration on first entry return.
This is assorted with misc fixes to make this code closer to what we currently have in FastFAT.
This also allows fixing a memory leak in case of single entry return.

CORE-13367
2018-01-06 21:39:25 +01:00
Timo Kreuzer
1014d50a4b [NTOS:MM] Pass FaultCode to MiDispatchFault 2018-01-06 18:20:24 +01:00
Timo Kreuzer
3f426aabde [NTOS:MM] Mark local functions with static 2018-01-06 18:20:24 +01:00
Timo Kreuzer
a00378a1a1 [NTOS:MM] Add support for NX page-faults 2018-01-06 18:20:24 +01:00
Timo Kreuzer
4d043aa05e [NTOS:MM] Make use of FaultCode and MI_IS_NOT_PRESENT_FAULT and MI_IS_WRITE_ACCESS macros in MmArmAccessFault. 2018-01-06 18:20:24 +01:00
Timo Kreuzer
d5c71429d7 [NTOS:MM] Pass The FaultCode to MmArmAcceessFault as well and translate it there to what was declared as "StoreInstruction"
No functional changes.
2018-01-06 18:20:24 +01:00
Timo Kreuzer
3021c2d571 [NTOS:MM] Pass page fault code to MmAccessFault
Note: before we had a BOOLEAN parameter called StoreInstruction, but in reality it was not specifying whether the fault was from a store store instruction, but whether it was an access violation rather than a page-not-present fault. On x86 without PAE there are only 2 kinds of access violations: (1) Access of a kernel mode page from user mode, which is handled early and (2) access of a read-only (or COW) page with a writing instruction. Therefore we could get away with this, even though it relied on the wrong assumption that a fault, which was not a page-not-present-fault, was automatically a write access. This commit only changes one thing: we pass the full fault-code to MmAccessFault and handle the rest from there in exactly the same way as before. More changes are coming to make things clear.
2018-01-06 18:20:24 +01:00
Luo Yufan
fe50c655aa [TRANSLATION] Update Simplified Chinese translations and font settings. (#266) 2018-01-06 18:05:07 +01:00
Timo Kreuzer
690cc9f30b [NDK] Fix some ob types (64 bit) 2018-01-06 17:13:22 +01:00
Timo Kreuzer
5985fe613b ! Fix build of tracert
# Conflicts:
#	sdk/include/psdk/ipexport.h
2018-01-06 17:07:54 +01:00
Pierre Schweitzer
48382d1448 [FLTMGR] Properly allocate CCB in CreatePortCCB()
CID 1427031
2018-01-06 13:54:21 +01:00
Colin Finck
f5d366b200 [NTOS:CM] Improve code in cmsysini.c (#216)
Based on an original patch by Timo Kreuzer, with modifications by me to adapt it to latest HEAD and use a single exit path through the Cleanup label. This reliably frees all allocated handles.

The original code returns STATUS_SUCCESS for many cases. This has been preserved.
In the future, it should be checked though whether returning success is appropriate for all these cases.

CORE-6844
2018-01-06 13:27:41 +01:00
Pierre Schweitzer
cc8ccc6eb8 [USETUP] When opening the target file for dropping readonly mode only use required access.
This avoids the open failing on certain file systems where GENERIC_WRITE access would be denied
for a readonly file.
This is an addendum to 82f44a2.

CORE-14158
2018-01-06 12:11:02 +01:00
Mark Jansen
280d7a9775 [DRWTSN32] Implement basic crash report functionality
On application crash, drwtsn32 will attach to the application and try to get a dump, consisting of:
- List of loaded modules
- List of loaded threads
- Per thread, a stacktrace
- Per thread, a small hexdump from the stack
- Per thread, a dump of the most common registers

This dump is saved to the desktop, and the user is notified of the dump being dropped there.

CORE-14180
#145
2018-01-06 11:47:54 +01:00
Luo Yufan
59aa6b9e74 [TRANSLATION] Improve Simplified Chinese Translations (#265)
* Update Simplified Chinese translation of SYSSETUP
* Update Simplified Chinese translations and font settings.
* Update Translation of SHELL32.
2018-01-05 14:15:03 +01:00
Giannis Adamopoulos
a671923037 [SHELL32] CMenuToolbarBase: Use COLOR_MENUTEXT color for the text color in normal menu items. CORE-13855 2018-01-05 11:53:35 +02:00
Giannis Adamopoulos
695147eaac [COMCTL32] tab: Use DrawThemeText when drawing text with themes. CORE-13855 2018-01-04 23:27:48 +02:00
Pierre Schweitzer
82f44a2107 [USETUP] When overwriting a file, if open fails, it might be because the file is readonly.
In such situation, try to drop the readonly attribute before overwritting the file.

This fixes setup not being able to overwrite FAT bootcode when reusing a FAT partition
already installed without reformatting.

CORE-14158
2018-01-04 21:49:56 +01:00
Timo Kreuzer
f555c102b7 [NTOS:EX] Don't dereference ExpCritSecOutOfMemoryEvent when it was never referenced. 2018-01-04 21:05:10 +01:00
David Quintana
c32993c672 [PSDK] Change #if to #ifdef, to be more consistent with the majority of our codebase. 2018-01-04 19:15:06 +01:00
David Quintana
c8b93430d4 [PSDK] Add ICMP_ECHO_REPLY32 needed by 64-bit code. Fixes x64 build of tracert. 2018-01-04 18:21:16 +01:00
Giannis Adamopoulos
522601d050 [COMCTL32] toolbar: Draw checked and not hot buttons as checked, not hot. CORE-13592
Should be sent to wine.
2018-01-04 14:30:47 +02:00
Katayama Hirofumi MZ
a8bd06be98 [NTOS:KDBG] Fix DPRINT format specifier in KdPortInitializeEx. CORE-14174 2018-01-04 11:37:50 +01:00
Timo Kreuzer
d17812f933 [NTOS:MM] Use MiResolveDemandZeroFault instead of MiDispatchFault 2018-01-03 23:07:19 +01:00
Timo Kreuzer
d4765fe366 [NTOS:MM] Implement resolving PXE/PPE page table demand zero faults 2018-01-03 23:07:19 +01:00
Timo Kreuzer
2eff510074 [NTOS:MM] Increment Prcb->MmDemandZeroCount while holding the Pfn lock 2018-01-03 23:07:19 +01:00
Timo Kreuzer
1240ed9e18 [NTOS/MM] Add Protection parameter to MiResolveDemandZeroFault 2018-01-03 23:07:19 +01:00
Bișoc George
699b8bf857 [DLL][WIN32][NEWDEV] Wrong character in the Romanian translation removed (#259)
Replaced "ú" with "u". Is that letter even a thing? :D
2018-01-03 21:29:44 +01:00
Stanislav Motylkov
6fa16d791a [SYSSETUP] Add marquee progress bar to show setup is alive (#262)
CORE-14163 #resolve
2018-01-03 21:24:26 +01:00
Bișoc George
71899c4290 [RAPPS] Romanian translation update
Quick update covering the latest commit - CORE-13789.
2018-01-03 12:29:13 +02:00
Bișoc George
7e1f4184fe [RAPPS] Italian translation update
Quick-update covering the latest commit - CORE-13789.
2018-01-03 12:28:37 +02:00
Joachim Henze
1522d1cf67 [RAPPS] update translation de-DE.rc for CORE-13789 2018-01-03 09:48:31 +01:00
Alexander Shaposhnikov
58f8fa9ec8 [RAPPS] Make selection global
- Added a 'Selected for installation' category that shows what was selected.
  Selection is now kept between categories.
- New string is added to resources.
  ru-RU.rc and uk-UA.rc strings are translated.
CORE-13789
2018-01-03 10:18:49 +02:00
Pierre Schweitzer
06abd3b480 [DISKPART] Don't crash on input if user provided no command
CORE-14018
2018-01-03 08:48:36 +01:00
Hermes Belusca-Maito
b2be558e61 [NTOS:INBV] Simplify a little bit the BootLogoFadeIn() function
- Use KeDelayExecutionThread() instead of KeStallExecutionProcessor().
- Fix magic values and add comments.
- Fix structure name.
2018-01-03 02:57:28 +01:00
Stanislav Motylkov
dd71fb5ec8 [NTOS:INBV] Implement rotation bar for boot screen
CORE-10327 #resolve
2018-01-03 02:57:28 +01:00
Bișoc George
4e2d8956a4 [REACTOS] Italian translation update. #255 2018-01-02 18:41:50 +01:00
Luo Yufan
2524a0b636 [TRANSLATIONS] Simplified Chinese translation update. #251 2018-01-02 18:39:24 +01:00
Ged Murphy
344f367211 [TRACERT] Rewrite tracert
- Full rewrite. This commit replaces the old utility.
- Use the new ICMP APIs instead of manually crafting ping requests using raw sockets.
- Add support for additional languages (the previous utility was hardcoded)
- Add support for IPv6
- Make the icmpapi header C++ compatible. (we don't appear to sync this with wine anymore.)
- Now runs on Win10, is much more reliable, and brings the code somewhat into the 21st century.
(It's currently missing source routing (-j), but as most routers disable this anyway, I'm not sure that it's worth adding)
2018-01-02 09:43:14 +00:00
Alexander Shaposhnikov
8d436d9bb5 [RAPPS] Simplified string creation in CAvailableApps
Created a struct that fills itself upon creation.
This makes it easy to include in CAvailableApps without additional weirdness.
2018-01-02 02:13:55 +02:00
Thomas Faber
b20280a0f9 [CMAKE] Allow overriding the .dll extension for delay imports in MSVC builds.
Fixes delay-importing winspool.drv.
2018-01-01 19:05:30 +01:00
Pierre Schweitzer
2b4d5c5cff [FASTFAT] When overwriting a file with FILE_OVERWRITE*, don't erase previous file attributes, only update them.
Keep erasing them in case the file gets overwritten with FILE_SUPERSEDE.

CORE-14158
2018-01-01 14:29:15 +01:00
Pierre Schweitzer
f3fecf92c1 [FASTFAT] On file overwrite, deny it if file as HIDDEN/SYSTEM flag and caller doesn't set them.
CORE-14158
2018-01-01 12:13:46 +01:00
Timo Kreuzer
c4d6c2c3f1 [NTOS:KE] Fix pushing of fake error code in KiDoubleFaultAbort (amd64) 2018-01-01 12:09:38 +01:00
Timo Kreuzer
f60a9eb7a3 [RTL] Fix amd64 version of DebugService2 2018-01-01 12:09:38 +01:00
Timo Kreuzer
a2f7de7ee8 Amd64/misc 64bit fixes (#236)
[REACTOS] Misc 64 bit fixes

* [NTOS:MM] Allow MEM_DOS_LIM in NtMapViewOfSection on x64 as well
* [NTOS:MM] Implement x64 version of MmIsDisabledPage
* [HAL] Remove obsolete code
* [NTOS:KE] Fix amd64 version of KeContextToTrapFrame and KeTrapFrameToContext
* [XDK] Fix CONTEXT_XSTATE definition
* [PCNET] Convert physical address types from pointers to PHYSICAL_ADDRESS
2018-01-01 12:07:50 +01:00
Hermès Bélusca-Maïto
5a4693ff6f [CHARMAP:NEW] Fix newlines and whitespace. 2018-01-01 02:10:22 +01:00
Hermès Bélusca-Maïto
9fa693e59b [REACTOS] Switch to year 2018...
... and Happy New Year 2018 to everyone!!

☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆

  ⋱★⋰⋱☆⋰⋱★⋰⋱☆⋰⋱☆⋰⋱★⋰⋱☆⋰⋱★⋰
░░░░░░█░█ █▀█ █▀█ █▀█ █░█░░░░░░
░░░░░░█▀█ █▀█ █▀▀ █▀▀ ▀█▀░░░░░░
░░░░░░▀░▀ ▀░▀ ▀░░ ▀░░ ░▀░░░░░░░
█▄░█ █▀▀ █░█░█░░█░█ █▀▀ █▀█ █▀█
█░██ █▀▀ █░█░█░░▀█▀ █▀▀ █▀█ ██▀
▀░░▀ ▀▀▀ ░▀▀▀░░░░▀░ ▀▀▀ ▀░▀ ▀░▀
  ⋱☆⋰⋱★⋰⋱☆⋰⋱★⋰⋱★⋰⋱☆⋰⋱★⋰⋱☆⋰
░░░▄████▄░▄███▄░░▄██░▄████▄░░░
░░░▀▀░▄██░██░██░████░██▄▄██░░░
░░░░▄██▀░░██░██░░░██░██▀▀██░░░
░░░██████░▀███▀░░░██░▀████▀░░░

☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆.¸¸.•´☆
2018-01-01 00:00:00 +01:00
Pierre Schweitzer
d2a5322576 [NTFS] Start using different tags for allocations.
They all be Ntf? as for the Windows NTFS driver
2017-12-31 23:11:57 +01:00
Bișoc George
e7459b0cc2 [CHARMAP:NEW] Adding some indentation (#241)
This file lacks proper indentation and that doesn't meet the ReactOS Coding style as it should.
2017-12-31 22:42:16 +01:00
Bișoc George
738aaf6dc6 [CHARMAP:NEW] Italian language implementation (#243)
This patch brings the Italian translation resource file for ReactOS Character Map (CHARMAP_NEW).
2017-12-31 22:36:20 +01:00
Bișoc George
40b3380f38 [CHARMAP:NEW] Romanian language implementation (#242)
This patch implements the Romanian language resource file for ReactOS Character Map software (CHARMAP_NEW).
2017-12-31 22:35:33 +01:00
Thomas Faber
2bfbaa66fc [DXTN] Fix MSVC build with runtime checks. 2017-12-31 19:37:23 +01:00
Mark Jansen
cb885480b2 [SHLEXTDBG] Add utility to run / debug shell extensions.
CORE-7684 #234
2017-12-31 14:56:22 +01:00
Mark Jansen
b2a5a804b4 [ROSDLGS] Add SetWizardButtons to CPropertyPageImpl
CORE-7684 #234
2017-12-31 14:56:22 +01:00
Mark Jansen
4bdc74bf5d [COM_APITEST] Add zipfldr tests.
CORE-7684 #234
2017-12-31 14:56:22 +01:00
Pierre Schweitzer
2d3d74151b [NTFS] Fix a memory leak on error
CID 1427053
2017-12-31 14:18:02 +01:00
Pierre Schweitzer
216a2cae73 [NTFS] Use LookasideList allocations for FILE_RECORD_HEADER.
TODO: use a specific tag

This, and previous commit, should speed up a bit the driver until caching gets implemented
2017-12-31 14:14:24 +01:00
Pierre Schweitzer
3ddf44ff10 [NTFS] Use LookasideList allocations for NTFS_ATTR_CONTEXT.
TODO: use a specific tag
2017-12-31 12:15:17 +01:00
Pierre Schweitzer
849fa7fbae [NTFS] Rewrite ReleaseAttributeContext() so that its null checks are consistent
CID 1427067
2017-12-31 10:38:58 +01:00
Pierre Schweitzer
007d3d382a [NTFS] Don't dereference NULL IRP
CID 1427057
2017-12-31 10:38:58 +01:00
Pierre Schweitzer
7a88e3bfd4 [NTFS] Don't leak memory in case of failure while creating a directory
CID 1427065
2017-12-31 10:38:58 +01:00
Pierre Schweitzer
9d9cce2838 [NTFS] Don't leak attributes contextes in the btree management functions
CID 1427030, 1427062
2017-12-31 10:38:58 +01:00
Pierre Schweitzer
391056ba22 [NTFS] Don't leak memory when reading or writing non-resident attributes
CID 1427048, 1427070
2017-12-31 10:38:58 +01:00
Hermès Bélusca-Maïto
e0baa58f1b [SETUPAPI] Fix extraction of files from a cabinet file using the SetupQueueCopy and SetupCommitFileQueue method.
CORE-14164

- Contrary to what Wine thought, this works even if the cabinet file does not have a ".cab" extension.
- Instead of polluting the directory where the cabinet file exists with all the files extracted from it,
  we only extract the needed file to a temporary folder (thus being sure it does not overwrite any other
  existing file with the same name), and then we move the extracted file to its final destination with rename.
2017-12-31 02:48:58 +01:00
Hermès Bélusca-Maïto
7c447a15a0 [SETUPAPI] Add __REACTOS__ guards around our own code; addendum to r68659 and r73442, CORE-10000 and CORE-12471. 2017-12-31 02:48:54 +01:00
Alexander Shaposhnikov
4c29691f6a [RAPPS] Replaced "..." with "…" for resource unification 2017-12-30 23:39:39 +02:00
Bișoc George
67a4e1387e [CHARMAP] Tiny update for Italian translation
Replaced "Map Character" with "Mappa Caratteri".
2017-12-30 16:08:58 +01:00
Thomas Faber
008e035b7e [LIBS] Use KeClearEvent instead of KeResetEvent where the previous state is not needed. 2017-12-30 11:46:57 +01:00
Thomas Faber
2cb0c129a6 [KMTESTS] Use KeClearEvent instead of KeResetEvent where the previous state is not needed. 2017-12-30 11:46:14 +01:00
Thomas Faber
75850abcbb [NTOS] Use KeClearEvent instead of KeResetEvent where the previous state is not needed. 2017-12-30 11:45:03 +01:00
Thomas Faber
4f8379a02b [DRIVERS] Use KeClearEvent instead of KeResetEvent where the previous state is not needed. 2017-12-30 11:44:25 +01:00
Timo Kreuzer
bad1c03529 [KSPROXY] Fix MSVC build
The module stays disabled though.
2017-12-30 11:08:11 +01:00
Bișoc George
409d166c2c [RAPPS] Romanian translation update
- Translated some English strings and fixed a small grammar typo.

Addendum:
- Header file ported from ReactOS coding style added
(even though it kind of bloats the translation file, it does actually help for
future translators looking at changes committed by previous translators).
- Replaced "..." with "…" (single character) <sanchaez>
2017-12-29 23:30:54 +02:00
Pierre Schweitzer
7fecde4a20 [NTOSKRNL] Print tags which contains numerics in the memory dumper.
This fixes i8042prt.sys allocations not properly being rendered.
2017-12-29 20:37:43 +01:00
Pierre Schweitzer
4663d02cd7 [NTOSKRNL] In the memory dumper, print in the direct order to make !poolused TAG usage easier 2017-12-29 20:37:43 +01:00
Pierre Schweitzer
ca3143b9ab [NTOSKRNL] Add support for verbose output in the !poolused command 2017-12-29 20:37:43 +01:00
Timo Kreuzer
cbc4cfeed6 [NTOS:EX] Fix handle table code for x64.
Based on patch by Ivan Labutin. See PR #115
2017-12-29 19:44:09 +01:00
Pierre Schweitzer
2daf2391a6 [NTOSKNRL] Addendum to 9a633f7 2017-12-29 18:22:37 +01:00
Pierre Schweitzer
9a633f7b48 [NTOSKRNL] Fix MSVC build 2017-12-29 18:03:33 +01:00
Pierre Schweitzer
4e34bf2a0b [NTOSKRNL] Add support for the ? wildcard in the !poolused command 2017-12-29 17:23:36 +01:00
Pierre Schweitzer
454e8738f2 [NTOSKRNL] Allow filtering !poolused output using a tag 2017-12-29 17:23:36 +01:00
Pierre Schweitzer
879d8f2104 [NTOSKRNL] Now that the memory dumper handles paged pool, make use of it in any situation 2017-12-29 17:23:36 +01:00
Pierre Schweitzer
1433ade827 [NTOSKRNL] Add support for the paged pool in the memory dumper 2017-12-29 17:23:36 +01:00
Pierre Schweitzer
bb63841b57 [NTOSKRNL] Prettify the memory dumper output and add number of allocs 2017-12-29 17:23:36 +01:00
Pierre Schweitzer
78b55550bb [NTOSKRNL] Make the memory dumper available as a kdbg command: !poolused 2017-12-29 17:23:36 +01:00
Katayama Hirofumi MZ
89f9c9101a [TRANSLATION] Use correct font name in Korean resources, CORE-9566 (#228).
Localized resources should use the correct Korean fonts that are most suitable
for UI and compatible with Windows.
2017-12-29 01:51:15 +01:00
Katayama Hirofumi MZ
e9d8fa57c3 [TRANSLATION][BASE][FDEBUG][MODULES][WIN32SS] Use correct font name in Chinese resources, CORE-9566 (#227).
Localized resources should use the correct Traditional/Simplified Chinese fonts
that are most suitable for UI and compatible with Windows.
2017-12-29 01:51:06 +01:00
Katayama Hirofumi MZ
d09998dfc7 [TRANSLATION][APPLICATIONS] Use correct font name in Chinese resources, CORE-9566 (#226).
Localized resources should use the correct Traditional/Simplified Chinese fonts
that are most suitable for UI and compatible with Windows.
2017-12-29 01:50:54 +01:00
B. George
bdb076bdce [TRANSLATION][RAPPS] Update for the Italian translation, CORE-14093.
Just a small patch which translates several English strings for the RAPPS application.
2017-12-28 17:42:56 +01:00
Stanislav Motylkov
e7485ea00c [RASAPI32] Add stub for RasGetConnectionStatistics
See CORE-10426
2017-12-28 11:51:40 +01:00
Timo Kreuzer
456e2192b7 [WIN32K] Check for empty output rect in GreGradientFill
Fixes a failed ASSERT.
CORE-14148 #resolve
2017-12-28 10:46:01 +01:00
Joachim Henze
5e5e5cde68 [COMCTL32] use previous version of cursor files CORE-14144,
idc_divider.cur & idc_divideropen.cur,
justify their diff in comctl32/comctl32_ros.diff
2017-12-28 00:04:53 +01:00
Giannis Adamopoulos
406c31cee8 [ATL] CWindow: Add an overload of GetDlgItemText which takes a CSimpleString as parameter 2017-12-27 19:25:58 +02:00
Giannis Adamopoulos
deb908b038 [ATL] -Add COMMAND_CODE_HANDLER macro 2017-12-27 19:25:58 +02:00
Katayama Hirofumi MZ
bf51ed17f8 [SHELLEXT] Use correct font name in Chinese resources, CORE-9566 (#224).
Localized resources should use the correct Chinese font names compatible with Windows.
2017-12-27 16:11:36 +01:00
Katayama Hirofumi MZ
1ebe4a5b83 [TRANSLATION] Use correct font name in Chinese resources, Part 3/3, CORE-9566 (#223).
Localized resources should use the correct Chinese font names compatible with Windows.
2017-12-27 16:11:21 +01:00
Katayama Hirofumi MZ
074f5c6c13 [TRANSLATION] Use correct font name in Chinese resources, Part 2/3, CORE-9566 (#222).
Localized resources should use the correct Chinese font names compatible with Windows.
2017-12-27 16:11:08 +01:00
Katayama Hirofumi MZ
81d6232aa3 [TRANSLATION] Use correct font name in Chinese resources, Part 1/3, CORE-9566 (#221).
Localized resources should use the correct Chinese font names compatible with Windows.
2017-12-27 16:10:56 +01:00
Serge Gautherie
74f92c3d86 CORE-13332. PcMemGetBiosMemoryMap(): Update ACPI (Extended Attributes) support. (#143)
[FREELDR] Update ACPI (Extended Attributes) support in PcMemGetBiosMemoryMap()
CORE-13332

* PcMemGetBiosMemoryMap(): Add Extended Attributes set and check for entry validity and default handling of unexpected case. 

* pcbios.h: Rename superceded BIOS_MEMORY_MAP.Reserved. Adapt existing code to new ACPI 6.2-A definitions.

* pcbios.h: Update BIOS_MEMORY_TYPE and BIOS_MEMORY_MAP to ACPI 6.2-A from 1.0+.

* PcMemGetBiosMemoryMap(): Misc fixes, no functional changes.
*Create PcMemCheckUsableMemorySize(), to split unrelated code out.
*Fix a copypasta in 2 output strings from ba9a1c3abb.
*Improve output readability of TRACE("ECX ...", ...).
*Move a TRACE("\n").
*Improve code style a bit.
2017-12-27 11:09:20 +01:00
Katayama Hirofumi MZ
b214b160b6 [REACTOS][WELCOME] Use correct font name in Chinese resources, CORE-9566 (#219).
Localized resources should use the correct Chinese font names compatible with Windows.
2017-12-26 22:11:21 +01:00
Katayama Hirofumi MZ
2b91b29642 [CPL] Control Panel Applets: Use correct font name in Chinese resources, CORE-9566 (#220).
Localized resources should use the correct Chinese font names compatible with Windows.
2017-12-26 20:57:48 +01:00
Lauri Ojansivu
2246a9f211 [TRANSLATION] Translate Explorer into Finnish, by Lauri Ojansivu (#218) 2017-12-26 20:17:30 +01:00
Timo Kreuzer
10e0d9ebb9 [CONFIGURE] Add CL version 19.12.* (VS 15 / 2017) to configure.cmd 2017-12-26 15:09:57 +01:00
Amine Khaldi
007131b5de [NTOS] Fix Shim AVL prototypes to exactly match the types expected by RtlInitializeGenericTableAvl. #179 2017-12-25 22:34:57 +01:00
Amine Khaldi
5a54e722b3 [USRMGR] Rename some functions. #179 2017-12-25 22:11:57 +01:00
Amine Khaldi
5e4f6c69c7 [DESK] Rename DATA structures and some functions. #179 2017-12-25 21:12:00 +01:00
Amine Khaldi
c5e033e643 [RAPPS] Remove conversion helper that is now obsolete. #179 2017-12-25 20:57:04 +01:00
Amine Khaldi
9ce192a807 [MSCONFIG_NEW] Add missing header guard. Rename Update_Btn_States() and iSortedColumn. #179 2017-12-25 20:31:27 +01:00
Amine Khaldi
018ba0f72e [FTP] lostpeer() is declared and defined with a void return type. #179 2017-12-25 20:25:57 +01:00
Amine Khaldi
4d4e4bb68a [NTOS] Deduplicate MiSynchronizeSystemPde(). #179 2017-12-25 20:14:46 +01:00
Amine Khaldi
2367206744 [USER32] Fix RealUserDrawCaption() return type. Rename {HFONT,UISTATE}_GWL_OFFSET and pfPaint. #179 2017-12-25 14:36:33 +01:00
Colin Finck
3b93ba0f31 [LOCALSPL] Fix parameter handling in LocalSetJob and add tests for the few ways we can easily test this function.
Yes, it checks the input handle and doesn't fail if an invalid level is given, because someone may still send a Command.
This also fixes CORE-12794. Thanks for reporting!
2017-12-25 14:30:47 +01:00
Amine Khaldi
a76fdbd8cb [UNIATA] Update to v0.46e5. CORE-14117 2017-12-25 14:18:21 +01:00
Mark Jansen
fa3e173515 [ATL] Add CString.AllocSysString 2017-12-25 14:00:51 +01:00
Mark Jansen
6c92d5c14a [ATL] Add CComBSTR.Attach 2017-12-25 14:00:51 +01:00
Mark Jansen
9187a81538 [ATL_APITEST] Add a test for CComBSTR.Attach/Detach 2017-12-25 14:00:51 +01:00
Mark Jansen
bccdcded28 [ATL_APITEST] Add a test for CString.AllocSysString 2017-12-25 14:00:51 +01:00
Amine Khaldi
0e9d9ce905 [NET] Fix a style issue I caused by 3c8a3a6 2017-12-25 13:49:50 +01:00
Amine Khaldi
a66bbfa92c [SHELL32_APITEST] Rename TestShellFolder, test_data and Tests. #179 2017-12-25 13:33:33 +01:00
Amine Khaldi
a3797dba7a [SHELL32] Deduplicate MAX_PROPERTY_SHEET_PAGE and AddPropSheetPageCallback(). #179 2017-12-25 13:22:23 +01:00
Amine Khaldi
0d35ee7ade [INCLUDE/CRT] Add some throw() annotations. #179 #210 2017-12-25 12:56:16 +01:00
Markus Gothe
e2e699118f Improve swedish translations and add new translations to swedish. 2017-12-25 11:31:22 +01:00
Pierre Schweitzer
453e42beb5 [FASTFAT] Revert bd1e7bf: our VPB swapout implementation in FastFAT is buggy and
leaves volumes in half-(dis)mounted state and thus they get remounted while not
completely dismounted.
This can lead to major breakage and data corruption.
This requires deeper fixes (let's just drop that driver!).

CORE-14124
CORE-14126
CORE-14133
2017-12-25 11:24:13 +01:00
Pierre Schweitzer
fc5a61d8b7 [NTOSKRNL] Revert 4ef0887: experiments show that our FastFAT is not ready yet to live on its own.
So, bring back the infamous IopParseDevice() hack. Dismounting is to be fixed in FastFAT.
Even though it might not be the last remaining bug...

CORE-14124
CORE-14126
CORE-14133
2017-12-25 11:24:13 +01:00
Giannis Adamopoulos
c5db5399dc [USER32] Implement the index -1 for GetWindowLong which returns a pointer to WW
We don't have this struct but WND already contains the same fields in the right
order so we can just return the pointer to the first one.

The meaning of the -1 index was found here: http://www.geoffchappell.com/studies/windows/win32/user32/structs/wnd/index.htm
2017-12-25 00:12:45 +02:00
Giannis Adamopoulos
c5e707ec1f [UXTHEME] EnableThemeDialogTexture: Update window theme only when ETDT_USETABTEXTURE is used 2017-12-24 23:52:10 +02:00
Pierre Schweitzer
b9b461bde9 [DISK] Properly implement querying partition information for partition 0.
In spite of what was implemented in our NT DDK sample, this is a legit operation.

This may have been turned legit starting NT5 (reminder, our implementation is
NT4 based...). So, in this situation, just return the information about the whole
disk (and not a random size) and also, mark everything with default values.

See disk_new for an example of how it works in NT5+.

CORE-14124
2017-12-24 21:58:47 +01:00
Giannis Adamopoulos
1db8bd46d6 [NTDLL_APITEST] -Add a hacky Microsoft.Windows.GdiPlus.manifest.
This is needed because ntdlltest.manifest has a dependency
on gdiplus and won't load because we don't have it in winsxs.
Eventually this must be removed.
2017-12-24 21:19:03 +02:00
Giannis Adamopoulos
435b0b19d2 [COMCTL32] Install comctl32 v6 and its manifest in first stage 2017-12-24 21:19:03 +02:00
Giannis Adamopoulos
7059421a23 [NTDLL_APITEST] Add several tests for RtlDosApplyFileIsolationRedirection_Ustr 2017-12-24 21:19:03 +02:00
Giannis Adamopoulos
f318a25e10 [LDR] Overhaul sxs support in ldr
* Remove the hacky find_actctx_dll form ldr that was taken from wine. LdrpResolveDllName and LdrpCheckForLoadedDll should get a parameter that is already redirected.
* Use RtlDosApplyFileIsolationRedirection_Ustr in LdrpLoadImportModule and LdrpUpdateLoadCount3 to redirerect the input parameter.
2017-12-24 21:19:03 +02:00
Giannis Adamopoulos
7000fe2340 [NTDLL] Implement RtlDosApplyFileIsolationRedirection_Ustr based on existing wine's code for ldr. .local redirection is not implemented yet. 2017-12-24 21:19:03 +02:00
Giannis Adamopoulos
51c694274f [RTL] find_string_index: name parameter may not be null terminated 2017-12-24 21:19:03 +02:00
Hermès Bélusca-Maïto
ff8d8a8162 Revert 57c0678 (PR #194) that has been erroneously committed too early. 2017-12-24 16:54:48 +01:00
Hermès Bélusca-Maïto
f49caecb3b [SDK] Fix copy-pasta, addendum to 7861960 by Mark Jansen. 2017-12-24 16:48:13 +01:00
Stanislav Motylkov
57c0678818 [NTOS:INBV] Implement rotation bar for boot screen 2017-12-24 16:47:02 +01:00
Mark Jansen
7861960a88 [SDK] Guard manifest_[dll|exe].rc against wrong usage. 2017-12-24 11:44:21 +01:00
Mark Jansen
99c7c93b83 [DLL] Fix wrong manifest includes. 2017-12-24 11:44:21 +01:00
Amine Khaldi
3c8a3a6e7e [NET] CompareInfo => CompareUserInfo. #179 2017-12-24 00:15:58 +01:00
Amine Khaldi
5ef2c4515e [NTVDM] Move the def file out of the source files list. Rename some variables and functions. #179 2017-12-24 00:04:15 +01:00
Amine Khaldi
d822478e06 [NTVDM] Missed this file. 2017-12-23 23:59:39 +01:00
Amine Khaldi
9716814879 [NTVDM] Deduplicate IsConsoleHandle() using the correct version pointed by Hermès. #179 2017-12-23 23:56:04 +01:00
Amine Khaldi
3d93998d6e [USER32] Add wine/debug.h to the PCH and remove an unneeded wine/unicode.h inclusion. 2017-12-23 23:42:40 +01:00
Amine Khaldi
17b691f5a9 [REGEDIT] Rename NUM_ICONS and _CmdWndProc(). #179 2017-12-23 14:15:02 +01:00
Amine Khaldi
fc93f23830 [INTL] Rename some variables and functions. #179 2017-12-23 14:07:33 +01:00
Amine Khaldi
eff73544ec [SYSDM] Rename some functions. #179 2017-12-23 14:05:07 +01:00
Amine Khaldi
d9a18277b8 [SERVMAN] InitDialog => InitProgressDialog. #179 2017-12-23 14:00:08 +01:00
Amine Khaldi
e3e46b2bcd [DXDIAG] Rename WIDTH, HEIGHT, InitListViewColumns and SetDeviceDetails. Zap WindowProc. #179 2017-12-23 13:57:01 +01:00
Amine Khaldi
1963e2d130 [CHARMAP] Rename OnCreate functions. #179 2017-12-23 13:46:33 +01:00
Pierre Schweitzer
fc921423f3 [VFD] Add support for installing driver from System32\drivers.
Patch by Doug Lyons.

CORE-14090
2017-12-23 09:34:34 +01:00
Mark Jansen
f941c78f50 [ATL_APITEST] Show that CComObject's COM_MAP continues enumeration after a failing blind function. 2017-12-21 21:37:54 +01:00
Mark Jansen
a730e3fce1 [ATL] Continue enumeration after a failing COM_INTERFACE_ENTRY_FUNC_BLIND 2017-12-21 21:37:54 +01:00
Amine Khaldi
7ce46d59b4 [WINDOWSCODECS_WINETEST] Add a PCH. 2017-12-21 13:57:22 +01:00
Amine Khaldi
d3626819e6 [MSXML3_WINETEST] Add a PCH. 2017-12-21 13:55:57 +01:00
Amine Khaldi
ffd9617271 [DSOUND_WINETEST] Add a PCH. 2017-12-21 13:53:36 +01:00
Amine Khaldi
0b21a561cd [DINPUT_WINETEST] Add a PCH. 2017-12-21 13:45:22 +01:00
Amine Khaldi
b09a63709b [WS2_32_APITEST] Improve the existing PCH and make use of it. 2017-12-21 13:36:04 +01:00
Amine Khaldi
823270e608 [ATL_APITEST] Add a PCH. 2017-12-21 13:31:24 +01:00
Samuel Serapion
a59d4674de [NTOS] Remove forgotten assert, see CORE-14128. 2017-12-20 21:00:52 +01:00
Stanislav Motylkov
a89c979fe0 [TRANSLATION] [NETCFGX] Fix russian translation 2017-12-20 20:35:08 +01:00
Joachim Henze
82caf5f823 [WIN32K] avoid BSOD in Bochs 2.6.8 CORE-13629, patch by Mark Jansen
We applied this patch also last second in 0.4.7rls, now in master.

IntTrackPopupMenuEx() caused the BSOD when called while window is in the process of being destroyed.
2017-12-20 17:38:36 +01:00
Amine Khaldi
9317220c00 [SHLWAPI_WINETEST] Add a PCH. 2017-12-20 13:36:27 +01:00
Amine Khaldi
e32018ba19 [SHELL32_WINETEST] Add a PCH. 2017-12-20 13:29:32 +01:00
Amine Khaldi
de6d0f24bc [OLEAUT32_WINETEST] Add a PCH. 2017-12-20 13:21:11 +01:00
Amine Khaldi
2cd1c84f7f [OLE32_WINETEST] Add a PCH. 2017-12-20 13:13:26 +01:00
Amine Khaldi
a76e7d13e2 [NTDLL_WINETEST] Add a PCH. 2017-12-20 13:07:06 +01:00
Amine Khaldi
9cfa608dcf [MSVCRT_WINETEST] Add a PCH. 2017-12-20 12:57:58 +01:00
Colin Finck
12b78f182d Replace our dxtn.dll by a version based on the libtxc_dxtn source code (#203)
This is no official system DLL and WineD3D is its only user. But latest WineD3D prefers the libtxc_dxtn codebase instead of the alternative library we used.
This is also what Mesa uses and Fedora ships now that the patents have expired, so we should stick to the same.

I'm importing the libtxc_dxtn-1.0.1 codebase from https://people.freedesktop.org/~cbrill/libtxc_dxtn/
It compiles warning-free in our tree without modifying a single line!

I'm merging this Pull Request based on the positive response in CORE-12759.
I lack a proper test case myself, but my version at least shouldn't make things worse. In my opinion, the previous one was broken anyway due to using stdcall imports when WineD3D called cdecl ones.

This also removes the NSWPAT option from our buildsystem as dxtn was its latest user.
2017-12-20 11:15:13 +01:00
Timo Kreuzer
84c26953e4 [BOOT] Add VBox debug to livecd.ini 2017-12-20 06:56:09 +01:00
Timo Kreuzer
12e2c48a25 [NTOS:MM] Fix a bug in MiBuildPfnDatabase
MxPfnAllocation is in pages, not in bytes!
2017-12-20 06:56:09 +01:00
Timo Kreuzer
18cd763160 [NTOS:MM] Make debug code in MmArmInitSystem portable 2017-12-20 06:56:09 +01:00
Timo Kreuzer
11c78f701d [NTOS:MM] Implement x64 version of MI_MAKE_SUBSECTION_PTE 2017-12-20 06:56:09 +01:00
Ivan Labutin
8723be733c [NTOS:PS] Skip backtrace on non-x86 2017-12-20 06:56:09 +01:00
Ivan Labutin
925f1a67ea [SAC] Fix wrong sized variable in SAC driver 2017-12-20 06:56:09 +01:00
Ivan Labutin
0d01b00871 [NTOS:FSRTL] Fixed incorrect comparison 2017-12-20 06:56:09 +01:00
Ivan Labutin
d6792047f3 [NTOS][NDK][RTL] A bunch of 'wrong size' fixes 2017-12-20 06:56:09 +01:00
Ivan Labutin
4d35d59fb9 [NTOS:MM] Quick fix: use SIZE_T instead of ULONG, because ULONG is 32-bit and on 64-bit truncates values 2017-12-20 06:56:09 +01:00
Ivan Labutin
ede3f4d449 [NTOS:KE] Improve readability of CPU flag checks and fix error checking wrong register for HT support 2017-12-20 06:56:09 +01:00
Ivan Labutin
5857733996 [NTOS:KE] Remove duplicate NX enabling 2017-12-20 06:56:09 +01:00
Ivan Labutin
39dd47cebb [NTOS:MM] Comment out debug code for x86 that should not run on x64 2017-12-20 06:56:09 +01:00
Ivan Labutin
1aa70ef6d1 [NTOS:KE] Move RtlpUse16ByteSLists initialization into KiInitializeKernel 2017-12-20 06:56:09 +01:00
Ivan Labutin
b9f592c054 [NTOS:KE] EFER constants fix 2017-12-20 06:56:09 +01:00
Timo Kreuzer
92b8d327b9 [NTOSKRNL] Fix return of uninitialized variable in PspSetQuotaLimits
CID-1322247
2017-12-20 05:23:06 +01:00
Mark Jansen
ad181d892c [BROWSEUI] Implement ACLCustomMRU.
CORE-9281
2017-12-18 23:17:17 +01:00
Mark Jansen
cba274350e [BROWSEUI_APITEST] Add tests for IACLCustomMRU.
CORE-9281
2017-12-18 23:17:17 +01:00
Mark Jansen
8aaa5eea75 [COM_APITEST] Add IACLCustomMRU 2017-12-18 23:17:17 +01:00
Amine Khaldi
4cfc324cd1 [MSI_WINETEST] Add a PCH. 2017-12-18 13:48:13 +01:00
Amine Khaldi
ba54c5644e [MSHTML_WINETEST] Add a PCH. 2017-12-18 13:43:24 +01:00
Amine Khaldi
98ca8ad114 [KERNEL32_WINETEST] Add a PCH. 2017-12-18 13:28:00 +01:00
Amine Khaldi
e36cf4acaf [APITESTS][WINETESTS] Addendum to the recent PCH work. 2017-12-18 13:21:47 +01:00
Amine Khaldi
0a4e5911fc [UUID] Add SID_SHTMLEditServices. 2017-12-18 13:18:26 +01:00
Pierre Schweitzer
5a650f6ba5 [FS] During 1st stage, disable any FS we don't support install to in order to let RawFS these volumes.
This avoids bloated setup and avoids potential bugs in 3rd party drivers.

This is following 806cd1.
2017-12-18 08:46:24 +01:00
Pierre Schweitzer
4ef08871ee [NTOSKRNL] Make again an attempt at killing the IopParseDevice() hack.
For the record, the only place it was remaining was 1st stage, notably because
FSD (FastAT <3) was missing a few features. As this features weren't triggered
in 3rd stage (unless forced), it was not needed there any longer.

Now that they are implemented, and seem working out of the box, this hack might
not be longer anymore.

This is my ... ?! pfff attempt at killing it. It might not be the last, so just
disabling the hack for now. If there are no regressions (who can really believe that?)
we'll be clear for dropping it once for all.
2017-12-17 23:30:58 +01:00
Pierre Schweitzer
bd1e7bf85e [FASFAT] Enable FAT volume dismount using VPB swapout 2017-12-17 23:29:33 +01:00
Pierre Schweitzer
c8f2befb5f [USETUP] Our current FAT ChkDsk being a bit slow when using the right path make
it only perform a full check if dirty bit is set (which should never happen *cough*).

This is needed because otherwise, ReactOS installation takes forever when IopParseDevice is gone
due to slow ChkDsk.
2017-12-17 23:26:38 +01:00
Pierre Schweitzer
806cd16328 [SETUP] Remove FSDs which have broken dismount implementation.
This avoids issues when these partitions are formatted to FAT for setup.

For now, this commit doesn't change anything, but once IopParseDevice hack
gets removed, this will make a difference!

CORE-6305
2017-12-17 23:16:01 +01:00
Timo Kreuzer
5311c57b5f [HAL] Use 64 bits for physical addresses. 2017-12-17 19:01:52 +01:00
Pierre Schweitzer
dcd95c1a85 [FASTFAT] Add a comment (and an ASSERT) in VfatCreateFile() that shows that my stats code is broken... 2017-12-17 18:25:43 +01:00
Pierre Schweitzer
64bc96558e [FASTFAT] While closing FCBs on dismount, release from tail to head and not the contrary.
It fixes assertion failure in vfatDestroyFCB() where we would have release parent before child.
This is still not perfect, but less bug prone...

With this commits (and ENABLE_SWAPOUT defined), ReactOS seems to unmount FAT volumes quite nice! :-)
(Tried with fsutil volume dismount X:)
2017-12-17 18:24:01 +01:00
Pierre Schweitzer
de03686148 [FASTFAT] Fix a handle count leak on volume close. This can prevent locking a volume! 2017-12-17 18:24:01 +01:00
Pierre Schweitzer
27773dbb3f [FASTFAT] When not able to lock a volume due to open handles, print open handles 2017-12-17 18:24:01 +01:00
Alexander Shaposhnikov
ab7ddc44f7 [RAPPS] Select 'Available' category by default. 2017-12-17 16:14:51 +02:00
Hermès Bélusca-Maïto
8f04bf3af6 [MSCONFIG_NEW] Temporarily "fix" the header of the SimpChinese resource file because this has nothing to do with Paint whatsoever. Proper headers will be used as soon as msconfig_new replaces the old one and such headers be used in all of its code. 2017-12-17 14:44:23 +01:00
Luo Yufan
d6131ace49 [TRANSLATION] Improve Simplified Chinese Translations.
* Fix Simplified Chinese Translation of EXPLORER.
* Fix Simplified Chinese Translation of MSCONFIG_NEW.
* Fix Simplified Chinese Translation of MSPAINT.
* Fix Simplified Chinese Translation of SHELL32.
* Fix Simplified Chinese Translation of SYSDM.
* Fix Simplified Chinese Translation of SETUP/REACTOS.
2017-12-17 14:40:59 +01:00
Pierre Schweitzer
b0bf7dfb62 [VFATLIB] Never touch the file system if not in interactive or RW mode.
It's critical not to perform any write on a volume without an exclusive lock on it.
That lock is only acquired if ChkDsk is started in RW mode.
Also added an assert in write routine, to make sure that when we're about to perform
a write operation, we're really allowed to do so.

This will avoid volume corruptions when a simple "chkdsk" is issued from cmd.
To put it simple: check will really check now, and won't attempt any repair.

CORE-14119
2017-12-17 14:02:31 +01:00
Amine Khaldi
284a839dbd [COMCTL32_WINETEST] Add a PCH. 2017-12-17 13:40:43 +01:00
Amine Khaldi
8ed8eec17c [SHELL32_APITEST] Improve the existing PCH and make use of it. Convert AddCommas.c to c++ in order to have it benefit from the PCH. 2017-12-17 13:31:22 +01:00
Amine Khaldi
95ec9464d3 [GDI32_WINETEST] Add a PCH. 2017-12-17 13:20:00 +01:00
Amine Khaldi
cded6efd75 [GDIPLUS_WINETEST] Add a PCH. 2017-12-17 13:14:57 +01:00
Amine Khaldi
5bd2230dc8 [CRYPT32_WINETEST] Add a PCH. 2017-12-17 12:33:39 +01:00
Amine Khaldi
0622ce1775 [COMDLG32_WINETEST] Add a PCH. 2017-12-17 12:28:41 +01:00
Amine Khaldi
71ddf5374a [ADVAPI32_WINETEST] Add a PCH. 2017-12-17 12:24:27 +01:00
Amine Khaldi
3bf31bf2ab [WIN32KNT_APITEST] Improve the existing PCH and make use of it. 2017-12-17 12:17:37 +01:00
Colin Finck
361b6e39e3 [HALX86] Deduplicate initialization of legacy PICs and remove EOI in I/O APIC initialization, which causes an unexpected interrupt 2017-12-17 09:51:37 +01:00
Jason Wendt
0fdb5d9b63 [SWENUM] Add version information. CORE-14112
Improves setup of DirectX 9.0b 4.09.00.0902 (which the game Halo wants
to install) after manually lowering DirectX version in registry.
2017-12-17 02:22:28 +01:00
Katayama Hirofumi MZ
10910ca9e1 [GDI32] Fix TextOutA multibyte text length overgoing. CORE-14070 2017-12-17 02:04:31 +01:00
Pierre Schweitzer
132c7d926b [VFD] Remove no longer required ReactOS specific change
CORE-14090
2017-12-16 22:53:32 +01:00
Hermès Bélusca-Maïto
acabbb7b85 [VFDLIB] Fix preprocessor directive compilation error when being used inside a macro expansion on MSVC. 2017-12-16 22:48:50 +01:00
Hermès Bélusca-Maïto
e7b2aa65d2 [VFD] Fix build on MSVC2010. 2017-12-16 22:34:20 +01:00
Pierre Schweitzer
2a146533a5 [VFD] Fix build 2017-12-16 22:00:41 +01:00
Pierre Schweitzer
753d87468c [VFD] Build with debug information on debug builds
CORE-14090
2017-12-16 21:57:11 +01:00
Pierre Schweitzer
25c7e1a8d0 [VFD] Import the VFD project (Virtual Floppy Drive) which allows creating virtual
floppy drives in ReactOS and mount images on them.
Only the cmd got imported. The GUI interface may come later on.
Note that, as for vcdrom, the driver is left disabled and you need to explicitely
start it through vfd command line interface.

CORE-14090
2017-12-16 21:48:34 +01:00
Pierre Schweitzer
d82796778f [PSDK] Add some missing defines
CORE-14090
2017-12-16 21:48:34 +01:00
Hermès Bélusca-Maïto
0710eae780 [DOSKEY] Resource files: remove trailing whitespace. 2017-12-16 21:09:59 +01:00
Hermès Bélusca-Maïto
ae9702fcec [DOSKEY] Improvements when importing aliases definition files.
- The aliases ("macros") definition files have the same format as what
  is output by DosKey when one displays the list of defined aliases with
  the /macros: command-line switch. It should then, in particular,
  understand the format where executable names are also specified:

[exename1]
    alias1=command1
    ...

[exename2]
    aliasN=commandN
    ...

  We now behave similarly as Windows' version of this utility in that
  regard.

- Use ARRAYSIZE() when needed.
- Take the opportunity to add a license header to the source file.
2017-12-16 21:07:39 +01:00
Hermès Bélusca-Maïto
eea43394bf [KERNEL32] Improve the definition of EXENAME_LENGTH. 2017-12-16 21:07:23 +01:00
Pierre Schweitzer
72094e637d [KERNEL32_APITEST] Add a test for FormatMessage backed with MC file. 2017-12-16 19:43:29 +01:00
Serge Gautherie
e8b1752162 [SDK] pnp.idl: Add a reminder comment about removed Vista/+ functions. CORE-12580 2017-12-15 16:01:53 +01:00
Serge Gautherie
614ace03fa [NTOS:MM] Fix NtFreeVirtualMemory() FreeType parameter checks. CORE-13126 2017-12-15 11:56:35 +01:00
Serge Gautherie
4f7159e3a5 [BOOTDATA] Start menu, shortcuts: port r61988 to LiveCD from BootCD. CORE-13994
- Move Accessibility, Entertainment and System Tools folders into Accessories.
- Move mstsc.exe shortcut into new Accessories/Communications folder.
- Rename Remote desktop to Remote Desktop Connection.
- Rename Regedit to Registry Editor.
- Plus: Sort touched lines in the list.
2017-12-14 16:49:03 +01:00
Serge Gautherie
48cfd02497 [TRANSLATION] Start menu, shortcuts, r61988: update untranslated strings too. CORE-13994
ToDo: Translators should check already translated strings too.
2017-12-14 16:46:37 +01:00
Thomas Faber
7e8de26164 [NTOS:KD] Pass PreviousMode down to KdpPrintString, since ExGetPreviousMode is not accurate. CORE-14103 2017-12-14 11:46:18 +01:00
Thomas Faber
7b95fcf93d [NTOS:KD] Avoid _alloca inside SEH, as it's apparently incompatible with PSEH. CORE-14103 2017-12-14 11:46:16 +01:00
Thomas Faber
a07b569b25 [NTOS:KD] Don't assume null termination in KdpSerialDebugPrint and KdpScreenPrint. CORE-14057 CORE-14103 2017-12-14 11:46:14 +01:00
Stanislav Motylkov
a0fe72e218 [SYSDM] Extend build string to fit commit hash 2017-12-13 13:55:01 +01:00
Amine Khaldi
631a14ff64 [ASM][NDK][NTOS] Rename Self to SelfPcr in the KIPCR structure. 2017-12-13 13:49:00 +01:00
Amine Khaldi
e00cc9728c [KERNEL32_APITEST] Add a PCH. 2017-12-13 13:48:26 +01:00
Amine Khaldi
3543c43252 [COM_APITEST] Improve the existing PCH and make use of it. 2017-12-12 13:01:03 +01:00
Amine Khaldi
24f8946956 [ADVAPI32_APITEST] Add a PCH. 2017-12-12 12:44:32 +01:00
Amine Khaldi
24f35397c6 [NTOS] Add some header guards. 2017-12-12 12:42:13 +01:00
Li Keqing
f461c451a1 [TRANSLATION] Fix Simplified Chinese Translations (#187)
* Fix the Simplified Translation of Rapps
* Fix the Simplified Translation of msconfig_new
* Fix the Simplified Translation of charmap_new
* Fix the Simplified Translation of winmine
* Fix the Simplified Translation of kbswitch
* Fix Simplified Chinese Translation of logoff
* Fix Simplified Chinese Translation of eventvwr
* Fix Simplified Chinese Translation of sysdm
* Update Simplified Chinese Translation for dxdiag
2017-12-11 11:35:59 +02:00
Pierre Schweitzer
1f2db8fab9 [VCDCLI] Fix typo 2017-12-10 23:44:19 +01:00
Hermès Bélusca-Maïto
197ec4c5b8 [KERNEL32] Update some console API prototypes. 2017-12-10 17:04:29 +01:00
Thomas Faber
68ebcf16b8 [NTOS:KD] Protect against invalid user arguments for BREAKPOINT_LOAD_SYMBOLS. CORE-14057 2017-12-10 15:26:18 +01:00
Thomas Faber
34ccecbce8 [NTOS:KD] Protect against invalid user arguments in KdpPrintString. CORE-14057 2017-12-10 15:26:18 +01:00
Thomas Faber
1a38c76266 [NTOS:KD] Protect against invalid user arguments in KdpPrompt. CORE-14057 2017-12-10 15:26:18 +01:00
Joachim Henze
8624801eb8 [SERVMAN] fix status-bar text truncation, update german localization CORE-14092 2017-12-10 14:08:29 +01:00
Thomas Faber
03be7587eb Merge branch 'ntfs_rebase' 2017-12-10 12:46:33 +01:00
Colin Finck
3a69fd4e96 [PRINTING] Fix GetPrinterW, add tests for it and GetDefaultPrinterA/W, and add a proper stub for GetPrinterDriverDirectoryA.
* Pass the correct handle to _RpcGetPrinter in GetPrinterW.
* Pass an empty string instead of a NULL pointer as wszComputerName to the GetPrinterLevel* functions, because this variable is later used as source for StringCbCopyExW.
* Don't check for GetLastError() == ERROR_SUCCESS in tests. Windows apparently only sets the last error in case of failure.
  The Printing code should probably be changed similarly in a future commit.

Should fix CORE-14072
2017-12-10 12:28:08 +01:00
Pierre Schweitzer
b5555650a8 [NTFS] Fix the FileNamesInformation/FileNameInformation class confusion that was spotted on FastFAT.
What should also be fixed is the partial return of data on first entry enumeration.
2017-12-10 11:25:48 +01:00
Trevor Thompson
1ac7128da0 [NTFS] - Respect NTFS' file ordering when enumerating a directory. Split off part of BrowseIndexEntries() into a separate function to simplify the code.
AddNewMftEntry() - Zero the (larger) buffer for the bitmap prior to reading the bitmap.
BrowseIndexEntries() - Check sub-nodes before checking an index entry. Read and use the index bitmap when checking sub-nodes.
+BrowseSubNodeIndexEntries() - Called for sub-nodes of an index when browsing index entries.
+NtfsDumpData() - Diagnostic function which allows for visualizing a series of bytes.

svn path=/branches/GSoC_2016/NTFS/; revision=75817
2017-12-10 11:15:26 +01:00
Trevor Thompson
a40ba448d4 [NTFS] - Fix some errors that break building in C89 mode, and remove an extraneous "ninja livecd" that got inserted in a comment. Thanks to Doug Lyons for spotting these errors.
SplitBTree() - comment-out redundant code for finding the median key and improve comments.

svn path=/branches/GSoC_2016/NTFS/; revision=75727
2017-12-10 11:15:25 +01:00
Trevor Thompson
52c30fdf37 [NTFS] - Add some helper functions for new features. Add some fixes. Add support for creating an index allocation, splitting a b-tree node, or "demoting" the index root. This allows for file creation without functional limitations.
+AddBitmap() - adds a $BITMAP attribute to a file record.
+AddIndexAllocation() - adds an $INDEX_ALLOCATION attribute to a file record.
+CountBTreeKeys() - Counts the number of linked B-Tree keys.
CreateIndexBufferFromBTreeNode() - Set INDEX_NODE_LARGE if the node has sub-nodes.
CreateIndexRootFromBTree() - Simplify the usage and math of MaxIndexSize; make it only account for the cumulative size of the index entries.
+DemoteBTreeRoot() - Replaces the contents of an index root with a dummy key, and puts those contents in a new node, which is made a child of the dummy key. This is done when an index root grows too large.
+GetIndexEntryVCN() - Retrieves the VCN from an index entry.
NtfsAddFilenameToDirectory() - Fix math for MaxIndexRootSize.
NtfsInsertKey() - Add support for splitting a B-Tree node. Don't check size of index root (that will be handled later).
+SplitBTreeNode() - Called when a B-Tree node grows too large.
UpdateIndexAllocation() - Create an $I30 index allocation attribute and bitmap attribute if needed.
UpdateIndexNode() - Update children before updating the current node. Store VCN of child nodes in the index entries of their respective keys.

svn path=/branches/GSoC_2016/NTFS/; revision=75707
2017-12-10 11:15:23 +01:00
Trevor Thompson
5e7c11842a [NTFS] - Fix increasing the mft size, to keep chkdsk happy.
IncreaseMftSize() - Add some fixes. Write blank records to newly-allocated mft entries, and update $MFTMirr when finished; these changes are needed for chkdsk.  Increase size by 64 records instead of 8.
+UpdateMftMirror() - Backs up the first ~4 master file table entries to the $MFTMirr file.

svn path=/branches/GSoC_2016/NTFS/; revision=75694
2017-12-10 11:15:21 +01:00
Trevor Thompson
9a91a51f17 [NTFS] - Fix for C89 compliance.
svn path=/branches/GSoC_2016/NTFS/; revision=75693
2017-12-10 11:15:19 +01:00
Trevor Thompson
b033f00f58 [NTFS] - Add support for directory creation. Add some helper functions, some comments, and some fixes.
+AddIndexRoot() - Creates an $INDEX_ROOT attribute and adds it to a file record.
AddNewMftEntry() - Make sure the buffer used by RtlInitializeBitmap() is ULONG-aligned, and a ULONG-multiple in size, per MSDN.
AllocateIndexNode() - Calculate BytesNeeded correctly. Read $BITMAP attribute before increasing its length, in anticipation of a future commit that will check for a free bit before assigning a new index record to the end of the allocation. Use appropriate Set*AttributeDataLength() function, as $BITMAP can be resident or non-resident.
B_TREE_FILENAME_NODE - Give two members more accurate names: change "ExistsOnDisk" member to "HasValidVCN" and rename "NodeNumber" member "VCN."
+CreateEmptyBTree() - Creates a B-Tree to represent an empty directory (for AddIndexRoot).
+NtfsCreateEmptyFileRecord() - Creates an empty file record in memory, with no attributes.
CreateIndexRootFromBTree() - Fix TotalSizeOfEntries calculation.
+NtfsCreateDirectory() - Creates a file record for an empty directory and adds it to the mft.

svn path=/branches/GSoC_2016/NTFS/; revision=75692
2017-12-10 11:15:17 +01:00
Trevor Thompson
c63e7e54b5 [NTFS] - When creating files:
-Don't add a preceding backslash when creating files on root.
-Use NTFS_FILE_NAME_POSIX name type if CaseSensitive option is specified.
-Don't try to create a file when a folder is requested (folder creation is still TODO).

svn path=/branches/GSoC_2016/NTFS/; revision=75671
2017-12-10 11:15:16 +01:00
Trevor Thompson
88a7c3d14b [NTFS] - Allow for creating a file when the index root gets too large and needs to be moved into an index record. Add some helper functions.
+AllocateIndexNode() - Allocates a new index record in an index allocation.
+CreateDummyKey() - Creates the final B_TREE_KEY for a B_TREE_FILENAME_NODE. Also creates the associated index entry.
GetSizeOfIndexEntries() - Sums the size of each index entry in every key in a B-Tree node.
+SetIndexEntryVCN() - Sets the VCN of a given IndexEntry.
NtfsInsertKey() - Handle instance when the index root grows too large. If it does, add its contents to a new sub-node, and replace contents with a dummy-key whose child is the new node.
UpdateIndexAllocation() - Update index entry if a key has just been assigned a child allocation.
UpdateIndexNode() - Make sure the node exists on disk, and allocate an index record for it if it doesn't.

svn path=/branches/GSoC_2016/NTFS/; revision=75557
2017-12-10 11:15:14 +01:00
Trevor Thompson
d484d91eba [NTFS] - Allow for resizing an attribute in the middle of a file record. Add a helper function and minor improvements:
AddRun() - Allow for resizing the size of the data runs when the attribute isn't the last in the file record. Fix some comments.
CreateIndexBufferFromBTreeNode(), CreateIndexRootFromBTree - Fix math of IndexSize when checking if the index buffer is too large.
InternalSetResidentAttributeLength() - Allow changing the length of an attribute in the middle of a file record. Adjust the position of every attribute after the one being resized.
+MoveAttributes() - Moves a block of attributes to a new location in the file Record.
PrintAllVCNs() - Add consideration for an index allocation with a size of 0.
WriteAttribute() - Add optional parameter for a pointer to the file record being written to. If passed a file record, WriteAttribute() will skip reading the file record from disk, and will update the file record in memory before returning. This helps callers that use the file record after writing an attribute to stay in-sync with what's on disk.

svn path=/branches/GSoC_2016/NTFS/; revision=75554
2017-12-10 11:15:13 +01:00
Trevor Thompson
4dfcd1d582 [NTFS] - Refactor to allow the copy of the attribute stored in NTFS_ATTR_CONTEXT to have a dynamic length; change Record member from an NTFS_ATTR_RECORD to a PNTFS_ATTR_RECORD. Rename it pRecord to reinforce the change. Fix some bugs related to the record size changing.
-PrepareAttributeContext() - update to allocate memory for pRecord. Don't assume allocations are succeeding.
-ReleaseAttributeContext() - update to free memory for pRecord.
-InternalSetResidentAttributeLength() - Increase size of AttrContext->pRecord as needed. Update to return an NTSTATUS.
-SetResidentAttributeDataLength() - Fix bug that could occur when migrating resident attributes to non-resident if AttrContext->pRecord is too small for the new attribute.
-AddRun() - Fix a bug by reallocating AttrContext->pRecord if the record needs to be enlarged.

svn path=/branches/GSoC_2016/NTFS/; revision=75493
2017-12-10 11:15:11 +01:00
Trevor Thompson
f2e47474f0 [NTFS] - Fix index entries storing the wrong allocated file size when the file is resident. Fix a typo in a DPRINT.
svn path=/branches/GSoC_2016/NTFS/; revision=75479
2017-12-10 11:15:09 +01:00
Trevor Thompson
92d1f92a61 [NTFS] - Add some improvements to B-Tree support. Add preliminary support for trees of arbitrary depth. Add support for creating files in directories which have an index allocation, provided there aren't too many files and the node doesn't need to be split.
-CreateBTreeFromIndex() - Fix memory allocation; allocate sizeof(B_TREE_KEY) bytes for the key, not the size of the pointer. Add support for child nodes. Update parameter list.
-CreateIndexRootFromBTree() - Update Header->Flags if any of index root's keys have sub-nodes.
+CreateIndexBufferFromBTreeNode() - Converts a B-Tree node to an index buffer to be written to the index allocation.
+UpdateIndexAllocation() - Updates all of the stale nodes in an index allocation based on a PB_TREE.
+UpdateIndexNode() - Writes a B-Tree node into the index allocation.
+CreateBTreeKeyFromFilename() - Creates a PB_TREE_KEY based on a FILENAME_ATTRIBUTE.
-DestroyBTreeKey() - Destroy a child node, if present.
-DumpBTreeKey() - Dump a child node, if present.
-DumpBTreeNode() - Include Node->KeyCount in output.
-NtfsAddFilenameToDirectory() - Call UpdateIndexAllocation() prior to CreateIndexRootFromBTree().
-Update B_TREE_FILENAME_NODE with members to keep track of its existence on disk.

svn path=/branches/GSoC_2016/NTFS/; revision=75428
2017-12-10 11:15:08 +01:00
Trevor Thompson
b1eab36f6b [NTFS] - Add GetAllocationOffsetFromVCN() function, which was mistakenly left out of the last commit.
svn path=/branches/GSoC_2016/NTFS/; revision=75425
2017-12-10 11:15:06 +01:00
Trevor Thompson
5579428b4f [NTFS] - Add some utility functions and improve some comments. Improve NtfsAddFilenameToDirectory().
+PrintAllVCNs() - Diagnostic function which prints VCN of every node in an index allocation.
+GetAllocationOffsetFromVCN() - Calculates location of an index buffer from the node's VCN.
+GetInfoClassName() - Gets a string representation of an info class enumeration, to speed up development of unimplemented classes.
-NtfsSetInformation() & NtfsQueryInformation() - Use GetInfoClassName to report unhandled information classes.
-CompareTreeKeys() - Add a comment and clarify some comments.
-NtfsAddFilenameToDirectory() - Don't try to update the size of Index Root on disk if the attribute length hasn't changed.

svn path=/branches/GSoC_2016/NTFS/; revision=75424
2017-12-10 11:15:04 +01:00
Trevor Thompson
9cef425464 [NTFS] - After creating a new file, update creation disposition before calling NtfsCreateFile() recursively. This fixes creating a file via right-clicking in a folder.
svn path=/branches/GSoC_2016/NTFS/; revision=75423
2017-12-10 11:15:03 +01:00
Trevor Thompson
935fcd1b35 [NTFS] - Fix some more issues, including remaining issues marked as "unresolved" from CR-123:
-Add define for indexed flag for resident attributes, RA_INDEXED.
-CreateBTreeFromIndex() - Don't try to read index entries beyond attribute length.
-Move NtfsAddFileNameToDirectory() from dirctl.c to mft.c (no changes to function).
-SetResidentAttributeDataLength() - Don't try to free AttribData if it hasn't been allocated. Cast IndexRecord to PUCHAR for WriteAttribute(), and cast BitmapData to PCHAR for ReadAttribute() (make gcc happy).
-Replace magic number 16 with a define, NTFS_FILE_FIRST_USER_FILE.

svn path=/branches/GSoC_2016/NTFS/; revision=75371
2017-12-10 11:15:01 +01:00
Trevor Thompson
430ce0a9e3 [NTFS] - Fix some formatting / style issues, per CR-123.
svn path=/branches/GSoC_2016/NTFS/; revision=75290
2017-12-10 11:15:00 +01:00
Trevor Thompson
5ab24a5aae [NTFS] - Add a few fixes and improvements, most from CR-123:
-Add ATTR_RECORD_ALIGNMENT define to replace magic value of 8 when we need to adjust an attribute's beginning or length.
-Don't use int's.
-GetPackedByteCount() - Remove unused "bytes" variable.

svn path=/branches/GSoC_2016/NTFS/; revision=75288
2017-12-10 11:14:58 +01:00
Trevor Thompson
68a48b2758 [NTFS] - Add some fixes and improvements to mft.c from CR-123:
FindAttribute() - Use * sizeof(WCHAR) in place bit-shifting wizardry.
IncreaseMftSize() - Remove two useless casts. Return error code if WriteAttribute() fails.
SetNonResidentAttributeDataLength() - Assert that AttrContext parameter describes a NonResident attribute. When migrating a resident attribute to non-resident, don't leak memory if FsRtlInitializeLargeMcb() throws an exception, and don't mark the attribute as non-resident until after the Mcb is initialized.
InternalSetResidentAttributeLength() and SetResidentAttributeLength() - Assert that AttrContext parameter describes a resident attribute.
AddNewMftEntry() - Simplify math of backing up and restoring reserved bits by changing BitmapData to PUCHAR type. Don't attempt to modify a volume with more than 2^32 clusters.
AddFixupArray() - Use ULONG in place of int.

svn path=/branches/GSoC_2016/NTFS/; revision=75284
2017-12-10 11:14:56 +01:00
Trevor Thompson
34696e49fc [NTFS] - Add some fixes and improvements to finfo.c from CR-123:
NtfsSetEndOfFile() - Make fileNameAttribute and filename variables uppercase. Don't leak FileRecord if we can't truncate the file. Don't leak memory if there's no FileName attribute.

svn path=/branches/GSoC_2016/NTFS/; revision=75283
2017-12-10 11:14:55 +01:00
Trevor Thompson
39a06fae0d [NTFS] - Add some fixes and improvements to create.c, dirctl.c and fcb.c from CR-123:
-NtfsOpenFile() - Replace an ExFreePool() with ExFreePoolWithTag().
-NtfsCreateFile() - Fix broken cast with BooleanFlagOn() macro.
-NtfsAddFilenameToDirectory() - Remove an extra cast. Return an error if we fail to allocate I30IndexRoot. 
-NtfsGetNextPathElement(), NtfsWSubString(), NtfsGetFCBForFile() - Use PCWSTR in place of const PWCHAR or PWCHAR  where it makes sense.

svn path=/branches/GSoC_2016/NTFS/; revision=75281
2017-12-10 11:14:53 +01:00
Trevor Thompson
7e9acb7dda [NTFS] - Add some fixes and improvements to btree.c from CR-123:
-CompareTreeKeys() - Assert that the first key isn't the dummy key.
-CreateIndexRootFromBTree() - Assert that CurrentKey->IndexEntry->Length isn't 0.
-DumpBTreeKey() - Use sizeof(WCHAR) in place of magic 2.
-NtfsInsertKey() - Check for allocation failure of NewKey.

svn path=/branches/GSoC_2016/NTFS/; revision=75280
2017-12-10 11:14:51 +01:00
Trevor Thompson
e5cc846555 [NTFS] - Add some fixes and improvements to attribute.c from CR-123:
-AddFileName() - Don't use dedicated buffer for FileNameNoPath, just point into FileObject->FileName's buffer. Don't use RtlCopyUnicodeString(), just update pointers.
-AddRun() - Fix an SEH2_YIELD with missing return statement.
-FreeClusters() - Use ULONG_MAX in place of 0xffffffff.
-NtfsDumpIndexRootAttribute() - Use consistent UpperCase naming convention. Use BooleanFlagOn() macro where appropriate. Replace magic 8 with sizeof(ULONGLONG).
-GetFileNameAttributeLength() - Add documentation.

svn path=/branches/GSoC_2016/NTFS/; revision=75279
2017-12-10 11:14:50 +01:00
Trevor Thompson
f5b7f90f23 [NTFS] - Fix UpdateFileNameRecord() when the file being updated resides in $INDEX_ROOT. Also, don't attempt to read beyond size of index root attribute, and check return value after reading.
svn path=/branches/GSoC_2016/NTFS/; revision=75278
2017-12-10 11:14:48 +01:00
Trevor Thompson
612facc28f [NTFS] - Fix AddFileName() when the file path is two or more directories deep.
svn path=/branches/GSoC_2016/NTFS/; revision=75277
2017-12-10 11:14:47 +01:00
Trevor Thompson
16204ed3a7 [NTFS] - Fix gcc build. Fix CompareTreeKeys(): Don't consider Key1 a possible dummy key. Don't assume filenames are the same length.
svn path=/branches/GSoC_2016/NTFS/; revision=75228
2017-12-10 11:14:45 +01:00
Trevor Thompson
2dc4938549 [NTFS] - Fix a couple of issues spotted by Thomas: Maintain alphabetical ordering of CMakeLists.txt, fix casts to BOOLEAN with BooleanFlagOn macro.
svn path=/branches/GSoC_2016/NTFS/; revision=75224
2017-12-10 11:14:43 +01:00
Trevor Thompson
54f5c3b6ec [NTFS] - Begin to implement B-Trees. Allow for creating several new files in a directory.
NtfsAddFilenameToDirectory() - Add CaseSensitive parameter. Update to use new B-Tree code: First, the index is read and converted to a B-Tree in memory. Next, a key for the new file is inserted into the tree. Finally, the tree is converted back to an index root attribute which is written to disk.
+btree.c - Includes functions related to B-Trees (AKA B*Trees).
ntfs.h - Added several structures for representing B-Trees in memory.
Known limitations: For simplicity, only trees with a depth of one are currently supported (i.e. an ordered list of filenames). Directories that have or will require an index allocation to store all their filenames are still TODO. As a consequence, the user will only be able to create about 6 files in a directory.

svn path=/branches/GSoC_2016/NTFS/; revision=75223
2017-12-10 11:14:42 +01:00
Trevor Thompson
38c947b7ab [NTFS] - Add some minor fixes and improvements:
Improve, add, or fix some DPRINTs. In particular, ULONG's should use %lu, not %u. Also, don't be silent about filesystem corruption.
NtfsFindMftRecord() - move CaseSensitive parameter before output parameter in parameter list.

svn path=/branches/GSoC_2016/NTFS/; revision=75199
2017-12-10 11:14:40 +01:00
Trevor Thompson
e4aab26781 [NTFS] - Fix creation of files with long filenames.
svn path=/branches/GSoC_2016/NTFS/; revision=75193
2017-12-10 11:14:39 +01:00
Trevor Thompson
8bb62e20d3 [NTFS] - In the NtfsAddFilenameToDirectory() function, rename DirectoryContext parameter to the more descriptive, and accurate, IndexRootContext (to simplify the next commit).
svn path=/branches/GSoC_2016/NTFS/; revision=75192
2017-12-10 11:14:37 +01:00
Trevor Thompson
948e91907a [NTFS] - Fix a mistake with AddFileName() from my last commit. Also, move CaseSensitive parameter before output parameters in the parameter list of several functions.
svn path=/branches/GSoC_2016/NTFS/; revision=75191
2017-12-10 11:14:35 +01:00
Trevor Thompson
032be02954 [NTFS] - Fix POSIX rules. Fix accessing long filenames created in Windows when 8dot3 name creation is disabled.
Whether or not a filename should be interpreted as case-sensitive is dependent on a flag passed to the driver when a file is created (opened); it's separate from the namespace associated with the file being accessed.

svn path=/branches/GSoC_2016/NTFS/; revision=75178
2017-12-10 11:14:34 +01:00
Trevor Thompson
98ddf610bc [NTFS] - Fix IncreaseMftSize(); check IrpContext to see if waiting for exclusive access to the MFT is allowed. As pointed out by Pierre.
svn path=/branches/GSoC_2016/NTFS/; revision=75170
2017-12-10 11:14:32 +01:00
Trevor Thompson
9ab86116a9 [NTFS] - Add support for expanding the master file table. Fix a bug with BrowseIndexEntries(). Improve diagnostic output.
-AddNewMftEntry() - Increase size of MFT as needed. Fix math for bitmap length. Don't assign file records to MFT indices 0x10 - 0x17; In Windows, these records aren't used unless they have to be, even though they are marked as unused in the bitmap.
+IncreaseMftSize() - Adds room for additional file records in the master file table.
-BrowseIndexEntries() - allow for the rare situation when a non-system file has an MFT index of 0x10.

svn path=/branches/GSoC_2016/NTFS/; revision=75056
2017-12-10 11:14:30 +01:00
Trevor Thompson
1417f286e0 [NTFS] - Restructure some code in preparation for the next commit:
-SetAttributeDataLength() has been split into two functions, SetNonResidentAttributeDataLength() and SetResidentAttributeDataLength(). This should improve code readibility and allows for resizing an attribute when there's no FileObject associated with it.
-Added "MftDataOffset" member to DEVICE_EXTENSION, which stores the offset of the Mft's $DATA attribute. (I'm starting to think it's better to add a member for offset to NTFS_ATTR_CONTEXT directly, but I'll save that level of restructuring for a future commit.)

svn path=/branches/GSoC_2016/NTFS/; revision=75055
2017-12-10 11:14:29 +01:00
Trevor Thompson
9dce6f4db1 [NTFS] - Add some improvements to the previous commit, as suggested by Thomas.
svn path=/branches/GSoC_2016/NTFS/; revision=75054
2017-12-10 11:14:27 +01:00
Trevor Thompson
e0048b1362 [NTFS] - Add the most basic support for file creation. Expand diagnostic output, especially in NtfsDumpIndexRootAttribute(). Replace an ExFreePool() with ExFreePoolWithTag().
AddFileName() - Add a parameter to receive the Mft index of the parent directory. Fix so the name of the file will be stored in the attribute, not the name of the directory.
NtfsCreateFile() - Open a file that was successfully created, instead of assuming failure.
NtfsCreateFileRecord() - Add the filename attribute of the created file to the parent directory's index.
+NtfsAddFilenameToDirectory() - Adds a $FILE_NAME attribute to a given directory index. Presently, a file can be created in an empty directory only.
AddNewMftEntry() - Add a parameter to receive the mft index where the new entry was stored.

svn path=/branches/GSoC_2016/NTFS/; revision=74970
2017-12-10 11:14:26 +01:00
Trevor Thompson
4ca9151300 [NTFS] - Decrease debug spam
svn path=/branches/GSoC_2016/NTFS/; revision=74694
2017-12-10 11:14:24 +01:00
Trevor Thompson
037d88201d [NTFS] - Disable write support by default. Enable it via the registry.
[BOOTDATA] - Add a commented-out section to hivesys.inf which can add the required key to enable NTFS write support.

svn path=/branches/GSoC_2016/NTFS/; revision=74685
2017-12-10 11:14:22 +01:00
Trevor Thompson
7f762aac01 [NTFS] - Add support for changing a file's size via SetEndOfFile():
-Handle IRP_MJ_SET_INFORMATION IRP requests.
+NtfsSetEndOfFile() - Sets the end of file (file size) for a given file.
+NtfsSetInformation() - Sets the specified file information. At this point, only FileEndOfFileInformation is fully implemented. FileAllocationInformation is handled the same way and not truly implemented, but this works well enough for SetEndOfFile().
Overwriting a file in NTFS should now work in the majority of use cases.

svn path=/branches/GSoC_2016/NTFS/; revision=74675
2017-12-10 11:14:21 +01:00
Trevor Thompson
58402b6730 [NTFS] - Fix a bug with last commit, as spotted by Pierre.
svn path=/branches/GSoC_2016/NTFS/; revision=74525
2017-12-10 11:14:19 +01:00
Trevor Thompson
c25b9747a1 [NTFS] - Expand support for resizing resident attributes and fix NtfsAllocateClusters().
-Modify SetAttributeDataLength() to allow a resident attribute to migrate to non-resident if the attribute grows too large to remain resident.
-Fix values returned by NtfsAllocateClusters() in case of error; return error codes, not 0.

svn path=/branches/GSoC_2016/NTFS/; revision=74524
2017-12-10 11:14:18 +01:00
Trevor Thompson
52b9f46776 [NTFS] - Commit early results of a small restructuring effort:
-Add a new member to the NTFS_ATTR_CONTEXT struct, a LARGE_MCB. This allows an attribute context to describe the cluster mapping of a non-resident file while allowing that mapping to change dynamically, without the context itself needing to be resized. This fixes problems which sometimes arose from resizing files.
-Remove hacky code from NtfsWriteFile() for dealing with "stale" contexts. This fixes that issue.
-Update SetDataAttributeLength(), PrepareAttributeContext(), ReleaseAttributeContext(), FreeClusters(), and AddRun() for the new member.
-Update ReadAttribute() and WriteAttribute() to work with the changed structure. A very-soon-to-come commit will overhaul these functions so they'll operate directly on the LARGE_MCB, instead of converting to and from a packed list of data runs. (Sparse files are broken until then.)
-Rename "RunBufferOffset" to "RunBufferSize" in several places where appropriate.
-Fix, improve, and add some comments.

svn path=/branches/GSoC_2016/NTFS/; revision=74523
2017-12-10 11:14:16 +01:00
Trevor Thompson
0409b3161e [NTFS] Add support for creating new MFT entries:
+AddStandardInformation(), +AddData(), +AddFileName() - Add attributes to a file record
+NtfsCreateFileRecord() - Creates a new file record and saves it to the MFT.
+AddNewMftEntry() - Adds a file record to the MFT.
NtfsCreateFile() - Modified to create a file record on a file-creation request (file creation is still unsupported; the created file needs to be added to the parent's directory index).
+SetFileRecordEnd() - Establishes a new file record size
UpdateFileRecord() - Improved documentation
InternalSetResidentAttributeLength() - Updated to use SetFileRecordEnd().

svn path=/branches/GSoC_2016/NTFS/; revision=74321
2017-12-10 11:14:14 +01:00
Trevor Thompson
7643831d56 [NTFS]
+NtfsDumpFileRecord() - Provides diagnostic information about a file record.

svn path=/branches/GSoC_2016/NTFS/; revision=72424
2017-12-10 11:14:13 +01:00
Trevor Thompson
6ab3072098 [NTFS]
*UpdateFileRecord() - Fix a DPRINT

svn path=/branches/GSoC_2016/NTFS/; revision=72423
2017-12-10 11:14:11 +01:00
Trevor Thompson
8b893c8e30 [NTFS]
Add some fixes to attrib.c, as suggested by Pierre Schweitzer:
*ConvertLargeMCBToDataRuns() - Use MS portable type, ULONG, for variable i.
*FreeClusters(), AddRun() - Check for invalid parameter before allocating memory, and confirm the memory is allocated.
*ConvertDataRunsToLargeMCB(), AddRun() - Avoid code duplication by using ExRaiseStatus() in try block, and return accurate status via _SEH2_GetExceptionCode().

svn path=/branches/GSoC_2016/NTFS/; revision=72422
2017-12-10 11:14:10 +01:00
Trevor Thompson
920e2f0216 [NTFS]
+FreeClusters(). Fix a DPRINT.

svn path=/branches/GSoC_2016/NTFS/; revision=71968
2017-12-10 11:14:08 +01:00
Trevor Thompson
ed1b4bf9bc [NTFS]
Address some minor issues with attrib.c: Fix gcc build. Fix formatting.

svn path=/branches/GSoC_2016/NTFS/; revision=71957
2017-12-10 11:14:07 +01:00
Trevor Thompson
d09e1398f8 [NTFS]
*AddRun() - Don't leak RunBuffer when encountering errors.
Handle exception from FsRtlAddLargeMcbEntry().

svn path=/branches/GSoC_2016/NTFS/; revision=71945
2017-12-10 11:14:05 +01:00
Trevor Thompson
afe40eb054 [NTFS]
Implement AddRun(). Add support functions and documentation.
+ConvertDataRunsToLargeMCB()
+ConvertLargeMCBToDataRuns()
*SetAttributeDataLength(), *NtfsWriteFile() - Update for AddRun() implementation. Add hack to SetAttributeDataLength() to allow notepad.exe to save files until freeing clusters is implemented.

svn path=/branches/GSoC_2016/NTFS/; revision=71942
2017-12-10 11:14:03 +01:00
Trevor Thompson
a135ef5864 [NTFS]
Various minor changes to fix GCC build.

svn path=/branches/GSoC_2016/NTFS/; revision=71922
2017-12-10 11:14:02 +01:00
Trevor Thompson
63e83c7ffc [NTFS]
Add support functions, fix warning from previous commit.
+NtfsDumpDataRuns(), +NtfsDumpDataRunData() - Provide diagnostic output.
+GetPackedByteCount() - Used to encode data runs.

svn path=/branches/GSoC_2016/NTFS/; revision=71921
2017-12-10 11:14:00 +01:00
Trevor Thompson
268a139e63 [NTFS]
UpdateFileRecord() - Remove fixup array before returning.

svn path=/branches/GSoC_2016/NTFS/; revision=71920
2017-12-10 11:13:58 +01:00
Trevor Thompson
7c576a836f [NTFS]
Add error-checking to InternalGetNextAttribute(); don't crash if CurrAttr->Length is invalid.

svn path=/branches/GSoC_2016/NTFS/; revision=71897
2017-12-10 11:13:57 +01:00
Trevor Thompson
de5cff4b37 [NTFS]
Fix broken check for free disk space in NtfsAllocateClusters().

svn path=/branches/GSoC_2016/NTFS/; revision=71858
2017-12-10 11:13:55 +01:00
Trevor Thompson
7a6e9bcdf6 [NTFS]
Simplify GetLastClusterInDataRun() and clean up NtfsAllocateClusters(). No functional changes.

svn path=/branches/GSoC_2016/NTFS/; revision=71857
2017-12-10 11:13:54 +01:00
Trevor Thompson
c08d37d182 [NTFS]
Simplify and optimize InternalSetResidentAttributeLength(), as suggested by Pierre.

svn path=/branches/GSoC_2016/NTFS/; revision=71837
2017-12-10 11:13:52 +01:00
Trevor Thompson
7eb1264f5f [NTFS]
Fix copy-paste error in SetAttributeDataLength()

svn path=/branches/GSoC_2016/NTFS/; revision=71832
2017-12-10 11:13:50 +01:00
Trevor Thompson
760cdfb5aa [NTFS]
Add ability to write to resident attributes.
SetAttributeDataLength() - Check if the file is memory mapped before truncating
+InternalSetResidentAttributeLength() - Used by SetAttributeDataLength()

svn path=/branches/GSoC_2016/NTFS/; revision=71820
2017-12-10 11:13:49 +01:00
Trevor Thompson
25fdabd8ca [NTFS]
Fix typo in NtfsAllocateClusters(), spotted by ThFabba.

svn path=/branches/GSoC_2016/NTFS/; revision=71697
2017-12-10 11:13:35 +01:00
Trevor Thompson
77fc65dc0e [NTFS]
Lay some groundwork for extending allocation size.
+AddRun() - Unimplemented
+GetLastClusterInDataRun()
+NtfsAllocateClusters()

svn path=/branches/GSoC_2016/NTFS/; revision=71696
2017-12-10 11:13:33 +01:00
Trevor Thompson
84a1280fd6 [NTFS]
Allow for an existing file to be opened with FILE_OVERWRITE, FILE_OVERWRITE_IF, or FILE_SUPERSEDE dispositions, and truncate that file. This allows for a file to be opened and saved in Notepad.exe [provided that file is non-resident and its allocation size doesn't need to change].

svn path=/branches/GSoC_2016/NTFS/; revision=71680
2017-12-10 11:13:31 +01:00
Trevor Thompson
f47efca89f [NTFS]
Remove unused parameter from SetAttributeDataLength.

svn path=/branches/GSoC_2016/NTFS/; revision=71677
2017-12-10 11:13:30 +01:00
Trevor Thompson
a7a2c0d734 [NTFS]
Update a file's size in the relevant $FILE_NAME attribute of the index entry in the parent directory.
+UpdateFileNameRecord() - Searches a parent directory for the proper index entry, then updates the file sizes in that entry.
+UpdateIndexEntryFileNameSize() - Recursively searches directory index and applies the size update.

svn path=/branches/GSoC_2016/NTFS/; revision=71664
2017-12-10 11:13:28 +01:00
Trevor Thompson
4f8133f44b [NTFS]
Fix Up AddFixupArray - It needs to accept a PNTFS_RECORD_HEADER for parameter 2, not a PFILE_RECORD_HEADER.

svn path=/branches/GSoC_2016/NTFS/; revision=71662
2017-12-10 11:13:26 +01:00
Trevor Thompson
ba33b9faac [NTFS]
When writing to a file, increase the file size if trying to write past the end.
*FindAttribute() has been given an optional pointer to a ULONG that will receive the offset of the found attribute from the beginning of the record. This is to allow for found attributes to be written back into their file records.
+SetAttributeDataLength()
+UpdateFileRecord() - Updates a file record in the master file table at a given index.
+AddFixupArray() - Prepares a file record or directory index for writing to the disk.

svn path=/branches/GSoC_2016/NTFS/; revision=71660
2017-12-10 11:13:25 +01:00
Trevor Thompson
ea6b9622c4 [NTFS]
Add fixes to WriteAttribute():
-Remove erroneous check for end of run (before writing to the last run returned)
-Properly dereference RealLengthWritten pointer, as reported in CR-90

svn path=/branches/GSoC_2016/NTFS/; revision=71616
2017-12-10 11:13:23 +01:00
Trevor Thompson
58a13831ef [NTFS]
Added minimal write support from CORE-10998 along with updates as suggested by CR-90.

svn path=/branches/GSoC_2016/NTFS/; revision=71224
2017-12-10 11:13:19 +01:00
Amine Khaldi
3449296f7b [USETUP] LanguageList => MUILanguageList. #179 2017-12-09 23:33:02 +01:00
Amine Khaldi
1c4f4818ea [ITSS] Get the stubs file out of the source files list. #179 2017-12-09 23:21:22 +01:00
Pierre Schweitzer
18d6584da4 [FASTFAT] Fix FastFAT not returning short name for FAT volumes in FileBothDirectoryInformation case
This is likely due to a copy paste error where long name was copied twice and short never.
Fun fact: this was not affecting FATX volumes
Fun fact2: this was defeating a buffer overflow check and thus was allowing buffer overflow!

CORE-14088
2017-12-09 21:22:55 +01:00
Pierre Schweitzer
48250aef6e [CHKDSK] Don't continue repair if volume is in use
This makes use of previous commit vfatlib improvements that allow
caller to stop chkdsk if locking fail, which will happen if volume is in use.
That way, ReactOS users won't be able any longer to f*** up their C:\ volume
by attempting to chkdsk -f it!

CORE-14087
2017-12-09 21:12:09 +01:00
Pierre Schweitzer
6a224a38a1 [VFATLIB] Make Chkdsk handle volume opening locking failures.
For instance, when repair is required, we can ask the caller whether we should
continue or not in case locking failed.
Also, introduced a hack for 1st stage where IopParseDevice() hack is in usage
so that broken NTSTATUS is diverted to appropriate status.
That way, usetup will properly continue even if locking failed (due to its
callback stub!)

CORE-14087
2017-12-09 21:12:09 +01:00
Amine Khaldi
287d7cd80a [SMDLL] Use precomp.h in dllmain.c. 2017-12-09 20:47:27 +01:00
Amine Khaldi
b3544fd00b [BROWSEUI/SHELLBARS] Add a PCH. 2017-12-09 20:46:40 +01:00
Amine Khaldi
eafa77f30a [GDI32_APITEST] Properly add CreateDIBPatternBrush.c to the source files list instead of relying on CMake to do so. 2017-12-09 20:03:08 +01:00
Amine Khaldi
d6cb9f60d1 [ACLEDIT][ATL][ATL80][FLTMGR] Get the def files out of the source files lists. #179 2017-12-09 19:59:02 +01:00
Pierre Schweitzer
bddb0db469 [FASTFAT] Finally drop the FileNameInformation class for directories.
It makes no sense for them and shouldn't be implemented.
It's an addendum to 9f3c801.
2017-12-09 14:37:07 +01:00
Amine Khaldi
9397f280c3 [FREELDR] The work done in r70692 overlooked the need to update the PCH lists of source files as well.
- We use this as a chance to also update the CMake file in terms of consistency.
- The clang-cl build applies the /Os flag on all the source files that are now using the PCH too.
2017-12-09 14:18:43 +01:00
Colin Finck
46b9165909 [WINSPOOL] Provide stubs with tracing and reasonable failure codes for even more popular Spooler APIs.
This may get more applications to work which previously called into the WINE-generated stubs (that throw an exception).
It also improves debug logs when the "winspool" debug channel is enabled. With such detailed debug logs, we may get an idea which winspool APIs need to be implemented sooner than others.
2017-12-09 14:14:05 +01:00
Colin Finck
1f6f08eca0 [WINSPOOL] Add tracing to all exported APIs. 2017-12-09 14:14:05 +01:00
Colin Finck
45b9b5c1ef [WINSPOOL] Convert the returned Unicode string back to ANSI in GetDefaultPrinterA.
Thanks to Mark for the hint in CORE-14072!
2017-12-09 14:14:05 +01:00
Amine Khaldi
de793ea5d6 [USER32_WINETEST] Add a PCH. 2017-12-09 13:58:55 +01:00
Amine Khaldi
c4a412a2b9 [ACPPAGE] Make use of the PCH. 2017-12-09 13:40:23 +01:00
Amine Khaldi
4db1f987f3 [MSPAINT] Add some header guards. 2017-12-09 13:36:45 +01:00
Amine Khaldi
44d57334de [LSASRV] Deduplicate SAMPR_ULONG_ARRAY. 2017-12-09 13:29:58 +01:00
Amine Khaldi
f6108f3187 [MSAFD] Move the default debug channel to msafd.h. 2017-12-09 13:24:35 +01:00
Amine Khaldi
0bae06fa5f [HAL] Add some header guards. 2017-12-09 13:20:22 +01:00
Amine Khaldi
a308735be6 [VGA] Correct VgaInterpretCmdStream() declaration. 2017-12-09 13:11:45 +01:00
Amine Khaldi
69005963fb [UUID] Add a PCH. 2017-12-09 13:04:23 +01:00
Pierre Schweitzer
28343c6c0c [FASTFAT] Fix size checking in VfatGetFileNameInformation() 2017-12-09 12:45:16 +01:00
Pierre Schweitzer
9f3c80193e [FASTFAT] Don't mix FileNameInformation and FileNamesInformation (and support the later).
This commit fixes weird behavior in our FastFAT implementation. It was mixing two classes:
FileNameInformation and FileNamesInformation. It was handling FileNameInformation like
FileNamesInformation and was filling buffer with FILE_NAMES_INFORMATION structure instead
of FILE_NAME_INFORMATION structure (how many things did that break?!).
Also, it wasn't implementing the FileNamesInformation class at all. This is required by
ntdll_winetest:directory which doesn't expect it to fail and thus, attempts to read
never filled in memory.

This commit fixes the winetest crash, and may fix other weird FS behavior.

CORE-13367
2017-12-09 12:37:34 +01:00
Amine Khaldi
d086a431cb [SAMLIB] Use precomp.h in dllmain.c. 2017-12-09 12:32:34 +01:00
Mark Jansen
4ac511405f [SHELL32_APITEST] Add test for SHCreateFileExtractIconW
CORE-14082
2017-12-09 11:56:42 +01:00
Pierre Schweitzer
4fcaf92ec3 [KERNEL32] Silent a noisy DPRINT1 2017-12-09 11:54:18 +01:00
Katayama Hirofumi MZ
ea4daf8b68 [WIN32K] Fix NtGdiGetTextFaceW to report face name correctly (#173)
Initialize TEXTOBJ.FaceName member in TextIntRealizeFont and use it in NtGdiGetTextFaceW 
CORE-14071
2017-12-09 12:06:51 +02:00
Pierre Schweitzer
e95751ab78 [FASTFAT] Calculate more accurately buffer length in VfatGetAllInformation(). 2017-12-09 10:59:37 +01:00
Pierre Schweitzer
52f0726817 [FASTFAT] Allow partial returns on directory info query for first entry.
This mimics what MS FastFAT does and fixes (a bit) ntdll_winetest:directory.
It still crashes, but go farther.

CORE-13367
2017-12-09 10:58:19 +01:00
Amine Khaldi
e15874b491 [STOBJECT] Improve the existing PCH and make use of it. 2017-12-08 23:15:31 +01:00
Amine Khaldi
6429bfcd8f [CONSRV] Deduplicate GetScreenBufferSizeUnits(), SmallRectToRect() and ConsoleInput. Rename ConsoleList and InsertConsole(). #179 2017-12-08 23:04:48 +01:00
Pierre Schweitzer
9d91a2e8ce [SERVICES] Fix querying the status of a registered but not started driver.
The current implementation was broken and some dead code was never called; always failing before.
This fix revives this dead code!
Extra fix: avoid derefencing potential null-ptr.
And also, as bonus, comment the function so that logic can be easily understood.

CORE-14062
2017-12-08 22:48:20 +01:00
Thomas Faber
81532227b6 [NTOS:MM] Implement and use MiAcquirePfnLockAtDpcLevel/MiReleasePfnLockFromDpcLevel. 2017-12-08 10:32:22 +01:00
Thomas Faber
da5949280c [NTOS:MM] Use inline functions to acquire/release the PFN lock. 2017-12-08 10:32:08 +01:00
Serge Gautherie
a11841c939 [NTDLL_APITEST] Create Test_NtFreeVirtualMemory_Parameters(). CORE-13126
- Test 4th parameter ("ULONG FreeType") invalid values.
2017-12-08 09:47:44 +01:00
Thomas Faber
4aabe88288 [NTDLL_APITEST] Add license header for NtFreeVirtualMemory.c 2017-12-08 09:47:42 +01:00
James Tabor
c45a6e15bf [User32|IMM32] Fix a recursion crash in IMM. See CORE-14041.
Required a sync port from wine. This is a hack fix with Win32SS until
proper IMM support is added to Win32SS.
2017-12-07 21:14:21 -06:00
Amine Khaldi
9b349f958c [ADVAPI32_APITEST][NTDLL_APITEST][WINDOWSCODECS] Comment out some unused functions and types. Silences some clang-cl warnings. 2017-12-08 00:22:05 +01:00
Amine Khaldi
ccd5377851 [COMCTL32][FLTLIB][NETAPI32][SNDVOL32][STOBJECT][WBEMPROX] Remove unused debug channels and comment out unused variables. Silences some clang-cl warnings. 2017-12-08 00:06:13 +01:00
Amine Khaldi
e83592920b [SHELL32] Remove unused debug channels and comment out unused variables. Silences some clang-cl warnings. 2017-12-07 23:54:22 +01:00
Amine Khaldi
7ed4c1dd03 [ADVAPI32] Remove unused debug channels and comment out unused variables. Silences some clang-cl warnings. 2017-12-07 23:34:28 +01:00
Amine Khaldi
5633423086 [FREETYPE][PORTCLS][RPCSS][SPOOLSV][STLPORT][USETUP][WLANSVC] Silence some clang-cl warnings. 2017-12-07 23:26:59 +01:00
Amine Khaldi
9f85ef6712 [CMAKE/CLANG-CL] Don't pass /TP twice when we're dealing with a clang-cl c++ PCH. Pass -nostdinc instead of /X on clang-cl builds. 2017-12-07 23:22:48 +01:00
CNAmira
43e1d6f177 [TRANSLATION] Update Simplified Chinese translations. (#170)
- Add Simplified Chinese translation for EVENTCREATE.
- Update translations for 'dxdiag', 'fontview', 'magnify', 'mmc', 'rapps' and 'wordpad'.
Patch by Li Keqing.
2017-12-07 22:53:48 +01:00
Amine Khaldi
917b74b0dc [USER32] We're still using this one. Fixes build. 2017-12-07 22:37:40 +01:00
Giannis Adamopoulos
d163627319 [BROWSEUI] Move _ILIsDesktop to a shared header to avoid having 3 instances of it 2017-12-07 23:26:30 +02:00
Amine Khaldi
9443165625 [USER32] Remove unused debug channels. Silences some clang-cl warnings. 2017-12-07 22:25:30 +01:00
Hermès Bélusca-Maïto
49db8dc2a2 [CMD] Fix resource string (unrecognized escape sequence); addendum to 9a59558. 2017-12-07 22:08:54 +01:00
Amine Khaldi
00124d1b1a [CMAKE/CLANG-CL] Silence some clang-cl warnings in consistency with our gcc build. 2017-12-07 21:53:45 +01:00
Serge Gautherie
6fe9441d32 [NTDLL_APITEST] Allow the test to load on Windows XP. ROSTESTS-293 2017-12-07 09:54:53 +01:00
Ged Murphy
d73a72c21d [SERVMAN] Fix return check on PropSheet_IsDialogMessage.
Should fix the regression introduced in the last commit.
CORE-14068
2017-12-06 22:08:46 +00:00
Luo Yufan
069546f5a4 Update Simplified Chinese translation. 2017-12-06 16:30:17 +01:00
Alexander Shaposhnikov
3ad4791796 [README] Update to 0.4.7 2017-12-06 11:23:49 +02:00
Pierre Schweitzer
c473b1a4d6 [NTOSKRNL] Only activate dumper in DBG builds 2017-12-05 23:28:04 +01:00
Pierre Schweitzer
149e1a2610 [NTOSKRNL] Add a non paged memory dumper in case of low memory situation.
Its purpose is to dump the non paged consumption, tag by tag,
to allow tracking potential faulting driver in case ReactOS starts lacking memory.
This will look like what !poolused outputs, even though it doesn't deal with paged pool.

Thanks to Thomas for his kind review and improvement suggestions.

CORE-14048
2017-12-05 23:19:11 +01:00
Ged Murphy
e36b89addb [SERVMAN]
- Avoid a potential race whereby the current service selection can change before the propsheet thread starts up
- Cleanup the depends data, it doesn't need to be passed around the propsheet
2017-12-05 22:13:02 +00:00
Pierre Schweitzer
4296826c58 [VCDCLI] Add support for UDF/Joliet hidding.
By providing /u or /j switch on mount, the virtual CD-ROM class driver
will break the associated signatures on read so that FSDs cannot recognize them any longer.
2017-12-05 21:41:05 +01:00
Ged Murphy
ceb1e0b9ff [Servman] Make the property sheets modeless so users can open multiple services at the same time (#166)
[SERVMAN]
- Make the property sheets modeless so users can open multiple services at the same time
- Untested in ros. In fact we have no code or tests cases to check that modeless property sheets work, so please raise a bug if you find any issues with the app.
- Dedicated to reactosfanboy
2017-12-05 12:25:14 +00:00
Stanislav Motylkov
df88fcf5cc [SHELL32_APITEST] SHParseDisplayName: More tests for relative paths 2017-12-05 10:48:37 +02:00
Stanislav Motylkov
53edadb8c0 [BROWSEUI] SHExplorerParseCmdLine: Improve relative path handling
CORE-12882, CORE-13847
2017-12-05 10:48:37 +02:00
Stanislav Motylkov
5dade73072 [BROWSEUI_APITEST] Improve tests for relative paths 2017-12-05 10:48:37 +02:00
Serge Gautherie
57aa1f1fc6 [SHELL32] shellpath.c: it is _WIN32_WINNT, not WIN32_WINNT. We even need to use __REACTOS__ instead here. CORE-12580 2017-12-03 21:52:37 +01:00
Amine Khaldi
b8309397b5 [AFD] Introduce and use pool tags. Thanks go to Arty for assisting me with this. CORE-14048 2017-12-03 21:52:15 +01:00
Stanislav Motylkov
a2cc76af84 [IPHLPAPI] Implement interface name resolving functions
Including:
- NhGetInterfaceNameFromDeviceGuid
- NhGetInterfaceNameFromGuid

CORE-13831, CORE-14033

Reference:
https://github.com/boundary/wireshark/blob/master/capture_win_ifnames.c#L275
2017-12-03 21:08:31 +01:00
Stanislav Motylkov
d6e0c422e1 [IPHLPAPI_APITEST] Add tests for interface resolving functions
CORE-13831, CORE-14033
2017-12-03 21:08:31 +01:00
Pierre Schweitzer
581f32b8c2 [VCDCLI] Implement a tool that allows managing vcdrom class driver.
It allows you managing virtual drives, mounting images, ejecting images, and so on.

It will load the driver when required.

It's less features complete that the MS GUI implementation.
I'll implement them later on, it can be quickly done.
What's missing: UDF/Joliet suppr and persistent mounts
2017-12-03 18:17:57 +01:00
Pierre Schweitzer
6906e184bb [VCDROM] Implement the virtual CD-ROM class driver.
It was provided by MS as a separate package to download for Windows (up to 7).
That class driver allows creating virtual drives on which we can later mount ISOs images.
It's rather basic, but does the job.

To use it, you can use the GUI app from Microsoft (Virtual CD-ROM Control Panel)
or the vcdcli in CLI. We're compatible :-).

Note that it's not loaded at boot, you need to manually start it, to lower memory footprint.
Both applications will handle this for you.
2017-12-03 18:17:45 +01:00
Pierre Schweitzer
63d46228b8 [PSDK] Define the IOCTL_CDROM_EJECT_MEDIA IOCTL 2017-12-03 18:17:28 +01:00
Hermès Bélusca-Maïto
f79d268ea1 [CMD] Fix the del /s command, reported by Pablo De Napoli. CORE-10460
The command should delete files in the specified directory and all of its
sub-directories, using any file pattern specified.

For example, the command:

    del /S .\my_directory

should delete all the files inside my_directory and its sub-directories,
and as such should also detect that "my_directory" is indeed a directory,
while doing:

    del /S .\my_file

should of course detect that "my_file" is indeed a file pattern, and thus,
delete all "my_file" files from the current directory and its sub-directories.

The command:

    del /S some_directory\file_pattern

should delete "file_pattern" files from some_directory and its sub-directories.
2017-12-03 16:01:44 +01:00
Hermès Bélusca-Maïto
9a59558307 [CMD] Fix the presentation of some confirmation prompts. 2017-12-03 15:58:53 +01:00
Amine Khaldi
c39b0fc667 [USER32_APITEST] Add a PCH. 2017-12-02 22:18:06 +01:00
Amine Khaldi
283bbe7346 [NTDLL_APITEST] Add a PCH. 2017-12-02 22:15:04 +01:00
Amine Khaldi
aee83c359c [GDI32_APITEST] Add a PCH. 2017-12-02 22:14:47 +01:00
Stanislav Motylkov
c2bdad2981 [SHELL32] Fix show properties with Alt+Enter 2017-12-02 18:10:43 +02:00
Alexander Shaposhnikov
8393412c42 [README] Clean up and finish styling
Unified the first badge row to use the same colors as reactos.org
Moved build related badges to 'Build' section
Fixed all links to use https and to be semantically correct
Replaced 'Tweet' badge with 'Follow', 'Flattr' with more general 'donate'
Added a sentence about donation
2017-12-02 17:31:07 +02:00
Thomas Faber
a22031dba6 [WINHTTP_WINETEST] Skip test_persistent_connection due to hang. CORE-14056 ROSTESTS-295 2017-12-02 14:18:26 +01:00
Thomas Faber
ec0b69ad40 [WININET_WINETEST] Skip test_redirect and test_persistent_connection due to hang. CORE-14055 ROSTESTS-294 2017-12-02 13:49:09 +01:00
Alexander Shaposhnikov
cc7f704ad4 [README] Changed the second badge row
Centered second badge row by using HTML code
Moved Coverity scan to the top, Flattr and Tweet - to the bottom
Linked "Download" and "Release" to reactos.org
2017-12-02 02:36:50 +02:00
Alexander Shaposhnikov
7cc9b51647 [README] Changed and moved badges around
- Added Flattr button
- Removed GitHub stats badges because they were useless
- Change SPDX.org license link to our COPYING for correctness
2017-12-02 02:12:48 +02:00
Amine Khaldi
44e36b616a [AFD] Zap unused TaCopyAddress() and TaCopyAddressInPlace(). 2017-12-02 00:15:27 +01:00
James Tabor
e1e79f248b [GDI] Fix metafile crashes and null driver issues.
Patch by Jérôme Gardou modified by me.
CORE-14023 : Fix SetWorldTransform for metafiles #137
Includes CORE-12832 and CORE-13627.
2017-11-26 14:48:06 -06:00
Amine Khaldi
53d3f00b2b [LIBTIRPC] Add a PCH. 2017-11-26 14:55:33 +01:00
Pierre Schweitzer
1feb8e627e [LIBTIRPC] Match rtime() propotype and implementation 2017-11-26 14:44:26 +01:00
Amine Khaldi
b28272c545 [SHELLBTRFS] Add a PCH. 2017-11-26 14:34:53 +01:00
Amine Khaldi
58428a6c29 [NFS41_NP] Add a PCH. 2017-11-26 14:29:35 +01:00
Amine Khaldi
af212ce508 [NFSD] Add a PCH. 2017-11-26 14:19:34 +01:00
Pierre Schweitzer
9ecbbe2a33 [NTOSKRNL] Use ExAllocatePoolWithQuotaTag() when allocating SystemBuffer for the IRP
That way, in case the system lacks memory, an exception is thrown and IRP isn't sent
to the device with NULL SystemBuffer.

CORE-14048
2017-11-26 14:03:30 +01:00
Pierre Schweitzer
d01184b164 [NTOSKRNL] Use cache aligned buffer for devioctrl 2017-11-26 14:03:30 +01:00
Amine Khaldi
2cbc32e5e4 [NTOBJSHEX] Improve the existing PCH and make use of it. 2017-11-26 13:26:39 +01:00
Amine Khaldi
2a3392b97d [GLU32] Add a PCH. 2017-11-26 13:24:50 +01:00
Amine Khaldi
d05c658dbd [LIBJPEG] Add a PCH. 2017-11-26 13:17:07 +01:00
Pierre Schweitzer
9d67a24799 [CDFS_NEW] Fix broken cast.
Spotted by Thomas
2017-11-25 20:15:28 +01:00
David Quintana
67a7e45e35 [CDFS_NEW] Address review comments:
- Don't define-out volatile.
- Cleanup the ros-specific hdd-backed device object on shutdown.
- Fix hdd-backed use. Required a rather ugly hack.
- Update README.FSD
2017-11-25 13:36:47 +01:00
David Quintana
6a3bbf24e0 Revert "[CDFS_NEW] Use CdAcquireForCreateSection from the old driver in place of the newer CdFilterCallbackAcquireForCreateSection."
This reverts commit 8410d03275.
2017-11-25 13:36:47 +01:00
David Quintana
ec26cde4a1 [CDFS_NEW] Accept STATUS_NOT_IMPLEMENTED for IOCTL_CDROM_READ_TOC_EX fallback to IOCTL_CDROM_READ_TOC. 2017-11-25 13:36:47 +01:00
David Quintana
bc2378a356 [CDFS_NEW] Use CdAcquireForCreateSection from the old driver in place of the newer CdFilterCallbackAcquireForCreateSection. 2017-11-25 13:36:47 +01:00
David Quintana
5429771b99 [CDFS_NEW] Re-apply many of the reactos-specific changes and fix build.
- Also, get rid of the old diff file.
2017-11-25 13:36:47 +01:00
David Quintana
fd34548263 [CDFS_NEW] Replace old driver with a Ms-PL licensed version straight out of the driver samples github repository. 2017-11-25 13:36:47 +01:00
Katayama Hirofumi MZ
87d276f05d [SHELL32] Don't show error when closing disk prop sheet (#144)
CORE-14035
2017-11-25 11:27:20 +02:00
jimtabor
d85023c9c9 [GDI] - Add type for setting world transform modification modes.
References:
https://msdn.microsoft.com/en-us/library/cc230538.aspx
https://github.com/KDE/krita/blob/master/libs/vectorimage/libemf/EmfEnums.h
2017-11-24 17:22:43 -06:00
11522 changed files with 885196 additions and 425948 deletions

2
.github/FUNDING.yml vendored Normal file
View File

@@ -0,0 +1,2 @@
custom: ['https://reactos.org/donating', 'https://paypal.me/ReactOS']
liberapay: ReactOS

11
.gitignore vendored
View File

@@ -1,2 +1,13 @@
output-*
modules/optional
modules/bootcd_extras
modules/livecd_extras
modules/hybridcd_extras
modules/3rdparty
modules/ahk_tests
modules/AHK_Tests
.cproject
.project
.settings
build
.vscode

22
.gitmessage Normal file
View File

@@ -0,0 +1,22 @@
# Commit message example
# ----------------------
# [MODULE] A short but descriptive summary (#pr-num)
#
# A comprehensible description of WHY you did this work. Do not limit
# yourself here.
# The width of the description is arbitary, but it is a good idea to
# wrap the text by 72 chars.
#
# CORE-XXXX CIDXXXXX
# ----------------------
# * [MODULE] should usually be the name of the CMake module, written
# in all caps.
# * Summary should be imperative (not past tense) and not end with a
# period.
# * Description of a commit should explain WHY a change was made.
# * JIRA, Coverity ID references should be placed at the bottom row.
# * There must be a newline between summary, description and bug IDs.
# * GitHub Pull Request ID should be referenced in the summary in
# parens. If the resulting summary is longer than 70 chars it may
# be placed last in the ID row to prevent hard wrapping on GitHub.

View File

@@ -6,7 +6,7 @@ git:
before_script:
- wget https://svn.reactos.org/amine/RosBEBinFull.tar.gz -O RosBE.tar.gz
- tar -xzf RosBE.tar.gz
- echo 'mkdir ../Build && cd ../Build && $TRAVIS_BUILD_DIR/configure.sh -DENABLE_ROSTESTS=1 && cd reactos && ninja -k 0 && ninja bootcd' > tmp_file
- echo 'mkdir ../Build && cd ../Build && $TRAVIS_BUILD_DIR/configure.sh -DENABLE_ROSTESTS=1 && ninja -k 0 && ninja bootcd' > tmp_file
script:
- ./RosBEBinFull/RosBE.sh < tmp_file

View File

@@ -1,19 +1,9 @@
cmake_minimum_required(VERSION 2.8.12)
cmake_minimum_required(VERSION 3.2.1)
cmake_policy(VERSION 3.2.1)
if(POLICY CMP0017)
# Shadow cmake provided modules
cmake_policy(SET CMP0017 OLD)
endif()
if(POLICY CMP0026)
# Allow use of the LOCATION property
cmake_policy(SET CMP0026 OLD)
endif()
if(POLICY CMP0051)
# List TARGET_OBJECTS in SOURCES target property
cmake_policy(SET CMP0051 NEW)
if(NOT CMAKE_VERSION MATCHES "ReactOS")
message(WARNING "Building with \"${CMAKE_COMMAND}\", which is not the custom CMake included in RosBE, might cause build issues...")
endif()
if(POLICY CMP0058)
@@ -21,30 +11,26 @@ if(POLICY CMP0058)
cmake_policy(SET CMP0058 OLD)
endif()
if(POLICY CMP0065)
# Do not add flags to export symbols from executables without the ENABLE_EXPORTS target property
cmake_policy(SET CMP0065 NEW)
endif()
project(REACTOS)
# Versioning
include(sdk/include/reactos/version.cmake)
# Don't escape preprocessor definition values added via add_definitions
cmake_policy(SET CMP0005 OLD)
cmake_policy(SET CMP0002 NEW)
if(POLICY CMP0018)
cmake_policy(SET CMP0018 OLD)
endif()
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(CMAKE_INCLUDE_DIRECTORIES_PROJECT_BEFORE ON)
set(CMAKE_SHARED_LIBRARY_PREFIX "")
set(CMAKE_SHARED_MODULE_PREFIX "")
set(CMAKE_SKIP_PREPROCESSED_SOURCE_RULES TRUE)
set(CMAKE_SKIP_ASSEMBLY_SOURCE_RULES TRUE)
set(CMAKE_COLOR_MAKEFILE OFF)
set(CMAKE_POSITION_INDEPENDENT_CODE OFF)
#set_property(GLOBAL PROPERTY RULE_MESSAGES OFF)
if(NOT DEFINED NEW_STYLE_BUILD)
set(NEW_STYLE_BUILD TRUE)
endif()
if(NOT ARCH)
set(ARCH i386)
endif()
@@ -69,30 +55,30 @@ include(sdk/cmake/compilerflags.cmake)
add_definitions(-D__REACTOS__)
# Double escape, since CMake unescapes before putting it on the command-line, where it's unescaped again by GCC/CL.
add_definitions(-DREACTOS_SOURCE_DIR="${REACTOS_SOURCE_DIR}")
add_definitions(-DREACTOS_BINARY_DIR="${REACTOS_BINARY_DIR}")
# There doesn't seem to be a standard for __FILE__ being relative or absolute, so detect it at runtime.
file(RELATIVE_PATH _PATH_PREFIX ${REACTOS_BINARY_DIR} ${REACTOS_SOURCE_DIR})
add_compile_flags(-D__RELFILE__="&__FILE__[__FILE__[0] == '.' ? sizeof \\\"${_PATH_PREFIX}\\\" - 1 : sizeof REACTOS_SOURCE_DIR]")
if(MSVC_IDE)
add_compile_flags("/MP")
endif()
# We don't need CMake importlib handling.
# FIXME: Remove the MSVC_IDE condition when the upcoming RosBE lands.
if(NOT MSVC_IDE)
unset(CMAKE_IMPORT_LIBRARY_SUFFIX)
endif()
# Bison and Flex support
# include(sdk/cmake/bison-flex.cmake)
if(NOT CMAKE_CROSSCOMPILING)
if(NEW_STYLE_BUILD)
set(TOOLS_FOLDER ${CMAKE_CURRENT_BINARY_DIR})
endif()
set(TOOLS_FOLDER ${CMAKE_CURRENT_BINARY_DIR})
add_definitions(-DTARGET_${ARCH})
if(MSVC)
if(ARCH STREQUAL "i386")
add_definitions(/D_X86_ /DWIN32 /D_WINDOWS)
add_definitions(/D_X86_ /D__i386__ /DWIN32 /D_WINDOWS)
elseif(ARCH STREQUAL "amd64")
add_definitions(-D_AMD64_ -D__x86_64__ /DWIN32 -D_WINDOWS)
endif()
if(MSVC_VERSION GREATER 1699)
add_definitions(/D_ALLOW_KEYWORD_MACROS)
@@ -111,19 +97,21 @@ if(NOT CMAKE_CROSSCOMPILING)
add_subdirectory(sdk/tools)
add_subdirectory(sdk/lib)
if(NOT NEW_STYLE_BUILD)
if(NOT MSVC)
export(TARGETS bin2c widl gendib cabman fatten hpp isohybrid mkhive mkisofs obj2bin spec2def geninc rsym mkshelllink utf16le xml2sdb FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
else()
export(TARGETS bin2c widl gendib cabman fatten hpp isohybrid mkhive mkisofs obj2bin spec2def geninc mkshelllink utf16le xml2sdb FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
endif()
set(NATIVE_TARGETS bin2c widl gendib cabman fatten hpp isohybrid mkhive mkisofs obj2bin spec2def geninc mkshelllink utf16le xml2sdb)
if(NOT MSVC)
list(APPEND NATIVE_TARGETS rsym)
endif()
export(TARGETS ${NATIVE_TARGETS} FILE ${CMAKE_BINARY_DIR}/ImportExecutables.cmake NAMESPACE native- )
configure_file(sdk/cmake/host-tools.in ${CMAKE_BINARY_DIR}/TargetList.cmake)
else()
# Add host tools target
include(sdk/cmake/host-tools.cmake)
setup_host_tools()
if(NEW_STYLE_BUILD)
include(sdk/cmake/host-tools.cmake)
endif()
# We don't need CMake importlib handling.
unset(CMAKE_IMPORT_LIBRARY_SUFFIX)
# Print build type
message("-- Build Type: ${CMAKE_BUILD_TYPE}")
@@ -138,24 +126,6 @@ else()
#useful stuff!
include(CMakeParseArguments)
# Do some cleanup
file(REMOVE
${REACTOS_BINARY_DIR}/dependencies.graphml
${REACTOS_BINARY_DIR}/boot/ros_livecd.txt
${REACTOS_BINARY_DIR}/boot/ros_livecd_target.txt
${REACTOS_BINARY_DIR}/boot/ros_minicd.txt
${REACTOS_BINARY_DIR}/boot/ros_minicd_target.txt
${REACTOS_BINARY_DIR}/boot/ros_cab.txt
${REACTOS_BINARY_DIR}/boot/ros_cab_target.txt)
if(NOT NEW_STYLE_BUILD)
if(NOT DEFINED REACTOS_BUILD_TOOLS_DIR)
set(REACTOS_BUILD_TOOLS_DIR ${REACTOS_SOURCE_DIR}/build)
endif()
set(IMPORT_EXECUTABLES "${REACTOS_BUILD_TOOLS_DIR}/ImportExecutables.cmake" CACHE FILEPATH "Host executables")
include(${IMPORT_EXECUTABLES})
endif()
if(DBG)
add_definitions(-DDBG=1 -D_SEH_ENABLE_TRACE)
else()
@@ -163,11 +133,11 @@ else()
endif()
if(KDBG)
add_definitions(-DKDBG=1)
add_definitions(-DKDBG)
endif()
if(_WINKD_)
add_definitions(-D_WINKD_=1)
add_definitions(-D_WINKD_)
endif()
if(CMAKE_VERSION MATCHES "ReactOS")
@@ -181,7 +151,8 @@ else()
-D_WIN32_IE=0x600
-D_WIN32_WINNT=0x502
-D_WIN32_WINDOWS=0x502
-D_SETUPAPI_VER=0x502)
-D_SETUPAPI_VER=0x502
-DMINGW_HAS_SECURE_API=1)
# Arch Options
if(ARCH STREQUAL "i386")
@@ -200,6 +171,7 @@ else()
endif()
# Other
add_definitions(-D_NEW_DELETE_OPERATORS_)
if(ARCH STREQUAL "i386")
add_definitions(-DUSE_COMPILER_EXCEPTIONS -D_USE_32BIT_TIME_T)
elseif(ARCH STREQUAL "amd64")

315
CODEOWNERS Normal file
View File

@@ -0,0 +1,315 @@
## List of maintainers for the ReactOS project
## This file purpose is to give newcomers to the project the responsible
## developers when submitting a pull request on GitHub, or opening a bug
## report on Jira.
## This file will notably establish who is responsible for a specific
## area of ReactOS. Being a maintainer means the following:
## - that person has good knownledge in the area
## - that person is able to enforce consistency in the area
## - that person may be available for giving help in the area
## - that person has push access on the repository
## Being a maintainer does not mean the following:
## - that person is dedicated to the area
## - that person is working full-time on the area/on ReactOS
## - that person is paid
## - that person is always available
## We have no supported (paid) areas in ReactOS.
## When submitting a pull request on GitHub and looking for reviewers,
## look at that file and ask for a review from some of the people (M, R
## - the most recently active in the area) listed in the matching area,
## also, assign the pull request to the M person. Don't ask for a review
## from all the listed reviewers.
## Also, when submitted a pull request on GitHub, rules defined in
## CONTRIBUTING.md apply. And if the maintainer is not available and
## reviewers approved the pull request, developers feeling confident
## can merge the pull request. Note that reviewers do not necessarily
## have push access to the repository.
## When submitting a bug report on Jira, if you want to be sure to have
## a developer with skills in that area, write @nick from M people.
## There should be one and only one primary maintainer per area.
## In case of 3rd party code (also refered as upstream), the maintainer
## is responsible of updating periodically the source code and of
## managing local patches. He is not here to upstream code on your behalf.
## As responsible, he may refuse a local patch if you did not try to
## upstream your changes.
## If you want to get listed in that file, either put yourself in the
## file and push it, or open a pull request. You can also ask a person
## who has push access to add yourself.
## This file uses GitHub's format for specifying code owners.
## - Lines starting with # are comment lines.
## - All other lines specify a path / file (wildcards allowed) followed
## by the GitHub user name(s) of the code owners.
## See https://help.github.com/en/articles/about-code-owners
## Additionally it tries to use a similar format to the Linux kernel
## MAINTAINERS file within comments.
## Descriptions of comment section entries used here:
## M: Primary maintainer. Assign them pull requests
## Use the GitHub, Jira, Real Name format for entry, squash if
## some are overlapping
## R: Reviewers. Ask them for review on pull requests
## S: Status, one of the following:
## Maintained: Someone is handling that area
## Upstream: This is 3rd party code, synced in our tree
## Abandoned: No one is handling that code anymore
## C: Comments
# 3rd Party File Format Libraries
# M: ThFabba, Thomas Faber
# S: Upstream
# C: See media/doc/3rd Party Files.txt
/dll/3rdparty/libjpeg/ @ThFabba
/dll/3rdparty/libpng/ @ThFabba
/dll/3rdparty/libtiff/ @ThFabba
/dll/3rdparty/libxslt/ @ThFabba
/sdk/include/reactos/libs/libjpeg/ @ThFabba
/sdk/include/reactos/libs/libmpg123/ @ThFabba
/sdk/include/reactos/libs/libpng/ @ThFabba
/sdk/include/reactos/libs/libtiff/ @ThFabba
/sdk/include/reactos/libs/libxml/ @ThFabba
/sdk/include/reactos/libs/libxslt/ @ThFabba
/sdk/lib/3rdparty/libmpg123/ @ThFabba
/sdk/lib/3rdparty/libsamplerate/ @ThFabba
/sdk/lib/3rdparty/libxml2/ @ThFabba
# ACPI
# M:
# R: ThFabba, Thomas Faber
# S: Maintained
/drivers/bus/acpi/ @ThFabba
/hal/halx86/acpi/ @ThFabba
# ACPICA Library
# M: ThFabba, Thomas Faber
# S: Upstream
/drivers/bus/acpi/acpica/ @ThFabba
# Apisets
# M: learn-more, learn_more, Mark Jansen
# S: Maintained
/dll/apisets/ @learn-more
# Application Compatibility subystem
# M: learn-more, learn_more, Mark Jansen
# S: Maintained
/dll/appcompat/ @learn-more
/dll/shellext/acppage/ @learn-more
/ntoskrnl/ps/apphelp.c @learn-more
/sdk/tools/xml2sdb/ @learn-more
# Cache Manager
# M: HeisSpiter, Pierre Schweitzer
# S: Maintained
/modules/rostests/kmtests/ntos_cc/ @HeisSpiter
/ntoskrnl/cc/ @HeisSpiter
# Cache Manager Rewrite
# S: Abandoned
/ntoskrnl/cache/
# CMake Build Scripts
# M:
# R: learn-more, learn_more, Mark Jansen
# R: ThFabba, Thomas Faber
# S: Maintained
/sdk/cmake/ @learn-more @ThFabba
*.cmake @learn-more @ThFabba
# File Patch API
# M: learn-more, learn_more, Mark Jansen
# S: Maintained
/dll/win32/mspatcha/ @learn-more
# File Systems
# M: HeisSpiter, Pierre Schweitzer
# S: Maintained
# C: Also see "Upstream File Systems"
/drivers/filesystems/ @HeisSpiter
/sdk/lib/fslib/ @HeisSpiter
# File Systems Run Time Library
# M: HeisSpiter, Pierre Schweitzer
# S: Maintained
/modules/rostests/kmtests/ntos_fsrtl/ @HeisSpiter
/modules/rostests/kmtests/novp_fsrtl/ @HeisSpiter
/ntoskrnl/fsrtl/ @HeisSpiter
/sdk/lib/drivers/ntoskrnl_vista/fsrtl.c @HeisSpiter
# Freeloader
# M:
# R: tkreuzer, ThePhysicist, Timo Kreuzer
# R: Extravert-ir, extravert34, Victor Perevertkin
# S: Maintained
/boot/freeldr/freeldr/ @tkreuzer @Extravert-ir
# HAL / APIC
# M: tkreuzer, ThePhysicist, Timo Kreuzer
# S: Maintained
/hal/halx86/apic/ @tkreuzer
# HID Drivers
# M:
# R: ThFabba, Thomas Faber
# S: Maintained
/drivers/hid/ @ThFabba
# Kernel
# M:
# R: HeisSpiter, Pierre Schweitzer
# R: ThFabba, Thomas Faber
# R: tkreuzer, ThePhysicist, Timo Kreuzer
# S: Maintained
/ntoskrnl/ @HeisSpiter @ThFabba @tkreuzer
# mbed TLS
# M: ThFabba, Thomas Faber
# S: Upstream
# C: See media/doc/3rd Party Files.txt
/dll/3rdparty/mbedtls/ @ThFabba
/sdk/include/reactos/libs/mbedtls/ @ThFabba
# Network Drivers
# M:
# R: ThFabba, Thomas Faber
# S: Maintained
/drivers/network/ @ThFabba
# Intel PRO/1000 NIC family driver
# M:
# R: ThFabba, Thomas Faber
# R: Extravert-ir, extravert34, Victor Perevertkin
# S: Maintained
/drivers/network/dd/e1000/ @ThFabba @Extravert-ir
# Network File Systems kernel libraries
# M: HeisSpiter, Pierre Schweitzer
# S: Maintained
/sdk/lib/drivers/rdbsslib/ @HeisSpiter
/sdk/lib/drivers/rxce/ @HeisSpiter
# NTDLL
# M:
# R: HeisSpiter, Pierre Schweitzer
# R: learn-more, learn_more, Mark Jansen
# R: ThFabba, Thomas Faber
# R: tkreuzer, ThePhysicist, Timo Kreuzer
# S: Maintained
/dll/ntdll/ @HeisSpiter @learn-more @ThFabba @tkreuzer
# ReactOS API Tests
# M:
# R: learn-more, learn_more, Mark Jansen
# R: ThFabba, Thomas Faber
# S: Maintained
/modules/rostests/apitests/ @learn-more @ThFabba
# ReactOS Kernel-Mode Tests
# M: ThFabba, Thomas Faber
# S: Maintained
/modules/rostests/kmtests/ @ThFabba
# ROS internals tools
# M: HeisSpiter, Pierre Schweitzer
# S: Maintained
/modules/rosapps/applications/rosinternals/ @HeisSpiter
# Run-Time Library (RTL)
# M:
# R: HeisSpiter, Pierre Schweitzer
# R: learn-more, learn_more, Mark Jansen
# R: ThFabba, Thomas Faber
# R: tkreuzer, ThePhysicist, Timo Kreuzer
# S: Maintained
/sdk/lib/rtl/ @HeisSpiter @learn-more @ThFabba @tkreuzer
# Shell Extensions
# M:
# R: learn-more, learn_more, Mark Jansen
# S: Maintained
/dll/shellext @learn-more
# UniATA
# M: ThFabba, Thomas Faber
# S: Upstream
/drivers/storage/ide/uniata/ @ThFabba
# Upstream File Systems
# M: HeisSpiter, Pierre Schweitzer
# S: Upstream
/base/services/nfsd/ @HeisSpiter
/dll/np/nfs/ @HeisSpiter
/dll/shellext/shellbtrfs/ @HeisSpiter
/drivers/filesystems/btrfs/ @HeisSpiter
/drivers/filesystems/cdfs/ @HeisSpiter
/drivers/filesystems/ext2/ @HeisSpiter
/drivers/filesystems/fastfat_new/ @HeisSpiter
/drivers/filesystems/ffs/ @HeisSpiter
/drivers/filesystems/nfs/ @HeisSpiter
/drivers/filesystems/reiserfs/ @HeisSpiter
/media/doc/README.FSD @HeisSpiter
/sdk/lib/fslib/btrfslib/ @HeisSpiter
/sdk/lib/fslib/ext2lib/ @HeisSpiter
/sdk/lib/fslib/vfatlib/check/ @HeisSpiter
# USB Drivers
# M: ThFabba, Thomas Faber
# R: Extravert-ir, extravert34, Victor Perevertkin
# S: Maintained
/drivers/usb/ @ThFabba @Extravert-ir
/sdk/lib/drivers/libusb/ @ThFabba @Extravert-ir
/sdk/include/reactos/drivers/usbport/ @ThFabba @Extravert-ir
# Virtual CD-ROM
# M: HeisSpiter, Pierre Schweitzer
# S: Maintained
/modules/rosapps/applications/cmdutils/vcdcli/ @HeisSpiter
/modules/rosapps/applications/vcdcontroltool/ @HeisSpiter
/modules/rosapps/drivers/vcdrom/ @HeisSpiter
# Virtual Floppy Disk
# M: HeisSpiter, Pierre Schweitzer
# S: Upstream
/modules/rosapps/applications/cmdutils/vfdcmd/ @HeisSpiter
/modules/rosapps/drivers/vfd/ @HeisSpiter
# Win32 file functions
# M: HeisSpiter, Pierre Schweitzer
# S: Maintained
/dll/win32/kernel32/client/file/ @HeisSpiter
# Windows Network File Systems functions
# M: HeisSpiter, Pierre Schweitzer
# S: Upstream
/dll/win32/mpr/wnet.c @HeisSpiter
# Wine Tests
# M:
# R: ThFabba, Thomas Faber
# S: Upstream
/modules/rostests/winetests/ @ThFabba
# zlib
# M: ThFabba, Thomas Faber
# S: Upstream
# C: See media/doc/3rd Party Files.txt
/sdk/include/reactos/libs/zlib/ @ThFabba
/sdk/lib/3rdparty/zlib/ @ThFabba
# x64 related code (keep this at the bottom)
# M: tkreuzer, ThePhysicist, Timo Kreuzer
# S: Maintained
amd64/ @tkreuzer
/boot/freeldr/freeldr/arch/realmode/amd64.S @tkreuzer
# Translations
de-DE.rc @reactos/lang-german
nl-NL.rc @reactos/lang-dutch

7
CODE_OF_CONDUCT.md Normal file
View File

@@ -0,0 +1,7 @@
# Code of Conduct
Be respectful toward other members of the community. Don't initiate or engage in discussions that are designed to insult, inflame, attack, or incite hate/discrimination/bullying against others. Don't feed the trolls. If we detect any kind of behaviour we consider unacceptable, we reserve the right to ban, block, or remove the involved members from any or all of our communities.
# See Also
- [Rules for managing Pull Requests](PULL_REQUEST_MANAGEMENT.md)

View File

@@ -49,7 +49,7 @@ Your contribution can be of numerous forms. We currently accept two ways to cont
### Pull Requests
Since our [migration to GitHub] we gladly accept __[Pull Requests]__. Pull requests let you tell others about changes you have pushed to a repository on GitHub. Once a pull request is opened, you can discuss and review the potential changes with collaborators and add follow-up commits before the changes are merged into the repository. __Pull request is a prefered way to submit your work__ - it makes reviewing and merging your contribution much easier.
Since our [migration to GitHub] we gladly accept __[Pull Requests]__. Pull requests let you tell others about changes you have pushed to a repository on GitHub. Once a pull request is opened, you can discuss and review the potential changes with collaborators and add follow-up commits before the changes are merged into the repository. __Pull request is a preferred way to submit your work__ - it makes reviewing and merging your contribution much easier.
### Patches
@@ -57,6 +57,10 @@ A __[patch]__ is a set of changes to existing source code. The changes in a patc
See [Submitting Patches] for details.
### Commit style
Our commit style is defined in a __[commit template]__. Use it as a reference or turn it on using `git config commit.template .gitmessage`. This will set this template as an initial commit message for the new commits in your local repository.
### Rules and Recommendations
- *Use your __real name__ and __real email__.* We do not accept anonymous contributions!
@@ -67,6 +71,8 @@ See [Submitting Patches] for details.
- *Respect our __[Coding Style]__ and __[Programming Guidelines]__.*
- *Do not be afraid to ask questions.* Ask our developers on JIRA or [IRC] channel.
To amend your commit with your name and e-mail (in any case you've forgot to set your name/e-mail) please take a look at this [guide](https://reactos.org/wiki/ReactOS_Git_For_Dummies#Amending_your_commit_with_name.2FE-mail). To set your name/e-mail globally for future commits that you push, [read this](https://reactos.org/wiki/ReactOS_Git_For_Dummies#Assign_commits_with_your_name_.26_E-mail_automatically).
## Where To Start?
Finding a good project to start with can be a challenge, because when starting out you are (usually) not aware of all the possibilities. To help you find a project, here are some ideas to try:
@@ -96,3 +102,8 @@ Finding a good project to start with can be a challenge, because when starting o
[README.FSD]: /media/doc/README.FSD
[Coverity]: https://scan.coverity.com/projects/reactos
[request-coverity]: https://scan.coverity.com/memberships/new?project_id=reactos
[commit template]: .gitmessage
# See Also
- [Rules for managing Pull Requests](PULL_REQUEST_MANAGEMENT.md)

15
CREDITS
View File

@@ -1,12 +1,15 @@
ReactOS is available thanks to the work of:
Aleksandar Andrejevic <aandrejevic@reactos.org>
Aleksey Bragin <aleksey at reactos org>
Alex Ionescu <alex.ionescu@reactos.org>
Alexander Shaposhnikov <sanchaez@reactos.org>
Amine Khaldi <amine.khaldi@reactos.org>
Andrew Greenwood <lists@silverblade.co.uk>
Andrew Munger <waxdragon@gmail.com>
Arindam Das
Art Yerkes <ayerkes@speakeasy.net>
Benedikt Freisen <b.freisen@gmx.net>
Boudewijn Dekker (Ariadne)
Brandon Turner <turnerb7@msu.edu>
Brian Palmer <brianp@sginet.com>
@@ -15,6 +18,7 @@ Casper S. Hornstrup <chorns@users.sourceforge.net>
Christoph von Wittich <christoph_vw@reactos.org>
Colin Finck <colin@reactos.org>
Daniel Reimer <reimer.daniel@freenet.de>
David Quintana <gigaherz@gmail.com>
David Welch <welch@cwcom.net>
Dmitry Chapyshev <dmitry@reactos.org>
Emanuele Aliberti <ea@iol.it>
@@ -24,12 +28,14 @@ Filip Navara <xnavara@volny.cz>
Frederik Leemans
Ge van Geldorp <ge@gse.nl>
Ged Murphy <gedmurphy@reactos.org>
Giannis Adamopoulos <gadamopoulos@reactos.org>
Gregor Brunmar <gregor brunmar at home se>
Gregor Schneider <grschneider@gmail.com>
Guido de Jong
Gunnar Andre' Dalsnes <hardon@online.no>
Hans Kremer
Hartmut Birr <hartmut.birr@gmx.de>
Hermes Belusca-Maito <hermes.belusca-maito@reactos.org>
Hernan Ochoa
Herve Poussineau <hpoussin@reactos.com>
Iwan Fatahi <i_fatahi@hotmail.com>
@@ -39,14 +45,19 @@ Jason Filby <jasonfilby@yahoo.com>
Jason Weiler
Jean Michault
Jeffrey Morlan <mrnobo1024@yahoo.com>
Jerome Gardou <jerome.gardou@reactos.org>
Jim Noeth
Joachim Henze <joachim.henze@reactos.org>
Johannes Anderwald <johannes.anderwald@reactos.org>
Jonathan Wilson <jonwil@tpgi.com.au>
Jurgen van Gael <jurgen.vangael@student.kuleuven.ac.be>
Katayama Hirofumi MZ <katayama.hirofumi.mz@gmail.com>
KJK::Hyperion <noog@libero.it>
Klemens R. Friedl <klemens_friedl@gmx.net>
Lauri Ojansivu <x@xet7.org>
Maarten Bosma <maarten.paul@bosma.de>
Magnus Olsen <magnus@greatlord.com>
Mark Jansen <mark.jansen@reactos.org>
Mark Tempel <mtempel@visi.com>
Mark Weaver <mark@npsl.co.uk>
Martin Fuchs <martin-fuchs@gmx.net>
@@ -57,6 +68,7 @@ Mike Nordell <"tamlin">
Nathan Woods <npwoods@mess.org>
Pablo Borobia <pborobia@gmail.com>
Paolo Pantaleo <paolopan@freemail.it>
Peter Hater <7element@mail.bg>
Peter Ward <dralnix@gmail.com>
Pierre Schweitzer <pschweitzer@reactos.org>
Phillip Susi <phreak@iag.net>
@@ -68,10 +80,13 @@ Robert Dickenson <robd@reactos.org>
Royce Mitchell III <royce3@ev1.net>
Samuel Serapi<70>n <samdwise51@gmail.com>
Saveliy Tretiakov <saveliyt@mail.ru>
Stanislav Motylkov <x86corez@gmail.com>
Stefan Ginsberg <stefan.ginsberg@reactos.org>
Steven Edwards <winehacker@gmail.com>
Thomas Faber <thomas.faber@reactos.org>
Thomas Weidenmueller <w3seek@users.sourceforge.net>
Timo Kreuzer <timo.kreuzer@reactos.org>
Vadim Galyant <vgal@rambler.ru>
Victor Kirhenshtein <sauros@iname.com>
Vizzini <vizzini@plasmic.com>

579
Doxyfile

File diff suppressed because it is too large Load Diff

10
INSTALL
View File

@@ -37,12 +37,16 @@ the top directory.
3. Installation
---------------
ReactOS can only be installed on a machine that has a FAT16 or FAT32 partition
as the active (bootable) partition. The partition on which ReactOS is to be
installed (which may or may not be the bootable partition) must also be
By default, ReactOS can only be installed on a machine that has a FAT16 or FAT32
partition as the active (bootable) partition. The partition on which ReactOS is
to be installed (which may or may not be the bootable partition) must also be
formatted as FAT16 or FAT32. ReactOS Setup can format the partitions if
needed.
Starting 0.4.10, ReactOS can be installed using the BtrFS file system. But
consider this as an experimental feature and thus regressions not triggered on
FAT setup may be observed.
ReactOS can be installed from the source distribution or from the bootable CD
distribution. The two ways to install ReactOS are explained below.

View File

@@ -0,0 +1,16 @@
# Rules for managing Pull Requests
For the sake of trying to maintain an acceptable number of open but idle PRs, the following rules should be considered:
- If a PR has at least one approval, it can be merged after 1 week of waiting for additional comments.
- If the change has at least 3 approvals or you consider it trivial enough, it may be merged right away.
- If a PR stays in "changes requested" for too long, and there is no indication from the author that they are working on it, it shall be closed.
- Rule of thumb: 2 weeks for a small PR. Can be longer if the PR is large.
- The PR can be reopened at any point, if you have additional comments, or new changes have been done.
- If you require a review from a particular person, assign the PR to that person. Don't just rely on the "review requested" feature of GitHub.
- Remember that PR labels exist. You can assign an appropriate label to a pull request to designate it's scope, grab additional attention or just for extra navigation possibilities.
- Don't feel obliged to comment everything you see, just for the sake of commenting. Be it on JIRA, GitHub, or even on IRC.
In addition, in order to avoid coming off as rude to helpful contributors, please refrain from:
- Asking the contributor to do unrelated work
- Closing without providing a reason
- Merging with the intention to rewrite that code soon after

101
README.md
View File

@@ -1,19 +1,41 @@
# ReactOS Project [![tweetme.badge]][tweetme.link] [![release.badge]][release.link] [![sfstats.badge]][sfstats.link] [![travis.badge]][travis.link] [![appveyor.badge]][appveyor.link]
<p align=center>
<img src="https://reactos.org/wiki/images/0/02/ReactOS_logo.png">
<a href="https://reactos.org">
<img alt="ReactOS" src="https://reactos.org/wiki/images/0/02/ReactOS_logo.png">
</a>
</p>
[![license.badge]][license.link] [![ghcontrib.badge]][ghcontrib.link] [![ghstats.badge]][ghstats.link] [![commits.badge]][commits.link] [![coverity.badge]][coverity.link]
---
## Quick Links
<p align=center>
<a href="https://reactos.org/project-news/reactos-0411-released">
<img alt="ReactOS 0.4.11 Release" src="https://img.shields.io/badge/release-0.4.11-0688CB.svg">
</a>
<a href="https://reactos.org/download">
<img alt="Download ReactOS" src="https://img.shields.io/badge/download-latest-0688CB.svg">
</a>
<a href="https://sourceforge.net/projects/reactos">
<img alt="SourceForge Download" src="https://img.shields.io/sourceforge/dm/reactos.svg?colorB=0688CB">
</a>
<a href="https://github.com/reactos/reactos/blob/master/COPYING">
<img alt="License" src="https://img.shields.io/badge/license-GNU_GPL_2.0-0688CB.svg">
</a>
<a href="https://reactos.org/donating">
<img alt="Donate" src="https://img.shields.io/badge/%24-donate-E44E4A.svg">
</a>
<a href="https://twitter.com/reactos">
<img alt="Follow on Twitter" src="https://img.shields.io/twitter/follow/reactos.svg?style=social&label=Follow%20%40reactos">
</a>
</p>
## Quick Links
[Website](https://reactos.org) &bull;
[Official chat](https://chat.reactos.org) &bull;
[Wiki](https://reactos.org/wiki) &bull;
[Forum](https://reactos.org/forum) &bull;
[JIRA Bug Tracker](https://jira.reactos.org/issues) &bull;
[ReactOS Git mirror](https://git.reactos.org) &bull;
[Testman](https://reactos.org/testman/)
- [Website](https://reactos.org)
- [Wiki](https://reactos.org/wiki)
- [Forum](https://reactos.org/forum)
- [JIRA Bug Tracker](https://jira.reactos.org/issues)
- [ReactOS Git mirror](https://git.reactos.org)
- [Testman](https://reactos.org/testman/)
## What is ReactOS?
@@ -21,14 +43,18 @@ ReactOS™ is an Open Source effort to develop a quality operating system that i
The ReactOS project, although currently focused on Windows Server 2003 compatibility, is always keeping an eye toward compatibility with Windows Vista and future Windows NT releases.
The code of ReactOS is licensed under [GNU GPL 2.0+](https://spdx.org/licenses/GPL-2.0+.html).
The code of ReactOS is licensed under [GNU GPL 2.0](https://github.com/reactos/reactos/blob/master/COPYING).
## Building [![rosbewin.badge]][rosbewin.link] [![rosbeunix.badge]][rosbeunix.link]
***ReactOS is currently an Alpha quality operating system. This means that ReactOS is under heavy development, things may not work well and it can corrupt the data present on your hard disk. It is recommended to test ReactOS on a virtual machine or on a computer with no sensitive or critical data!***
## Building
[![appveyor.badge]][appveyor.link] [![travis.badge]][travis.link] [![rosbewin.badge]][rosbewin.link] [![rosbeunix.badge]][rosbeunix.link] [![coverity.badge]][coverity.link]
To build the system it is strongly advised to use the _ReactOS Build Environment (RosBE)._
Up-to-date versions for Windows and for Unix/GNU-Linux are available from our download page at: http://www.reactos.org/wiki/Build_Environment.
Up-to-date versions for Windows and for Unix/GNU-Linux are available from our download page at: ["Build Environment"](http://www.reactos.org/wiki/Build_Environment).
Alternatively one can use Microsoft Visual C++ (MSVC) version 2010+. Building with MSVC is covered here: https://www.reactos.org/wiki/Building_with_MSVC.
Alternatively one can use Microsoft Visual C++ (MSVC) version 2010+. Building with MSVC is covered here: ["Visual Studio or Microsoft Visual C++"](https://www.reactos.org/wiki/CMake#Visual_Studio_or_Microsoft_Visual_C.2B.2B).
### Binaries
@@ -41,28 +67,36 @@ build directory. This will create a CD image with a filename `bootcd.iso`.
See ["Building ReactOS"](http://www.reactos.org/wiki/Building_ReactOS) for more details.
You can always download fresh binary builds of bootable images from the ["Daily builds"](https://www.reactos.org/getbuilds/) page.
## Installing
ReactOS currently can only be installed on a machine that has a FAT16 or FAT32 partition as the active (bootable) partition.
The partition on which ReactOS is to be installed (which may or may not be the bootable partition) must also be formatted as FAT16 or FAT32.
By default, ReactOS currently can only be installed on a machine that has a FAT16 or FAT32 partition as the active (bootable) partition.
The partition on which ReactOS is to be installed (which may or may not be the bootable partition) must also be formatted as FAT16 or FAT32.
ReactOS Setup can format the partitions if needed.
Starting 0.4.10, ReactOS can be installed using the BtrFS file system. But
consider this as an experimental feature and thus regressions not triggered on
FAT setup may be observed.
To install ReactOS from the bootable CD distribution, extract the archive contents. Then burn the CD image, boot from it, and follow the instructions.
See ["Installing ReactOS"](https://www.reactos.org/wiki/Installing_ReactOS) Wiki page or [INSTALL](INSTALL) for more details.
## Testing
If you discover a bug in ReactOS search on JIRA first - it might be reported already. If not report the bug providing logs and as many information as possible.
If you discover a bug in ReactOS search on JIRA first - it might be reported already. If not report the bug providing logs and as much information as possible.
See ["File Bugs"](https://www.reactos.org/wiki/File_Bugs) for a guide.
__NOTE:__ The bug tracker is _not_ for discussions. Please use `#reactos` Freenode IRC channel or our [forum](https://reactos.org/forum).
## Contributing
## Contributing ![prwelcome.badge]
We are always looking for developers! Check [how to contribute](CONTRIBUTING.md) if you are willing to participate.
You can also support ReactOS by [donating](https://reactos.org/donating)! We rely on our backers to maintain our servers and accelerate development by [hiring full-time devs](https://reactos.org/node/785).
## More information
ReactOS is a Free and Open Source operating system based on the Windows architecture,
@@ -72,43 +106,30 @@ It is not another wrapper built on Linux, like WINE. It does not attempt or plan
ReactOS is also not "yet another OS". It does not attempt to be a third player like any other alternative OS out there. People are not meant to uninstall Linux and use ReactOS instead; ReactOS is a replacement for Windows users who want a Windows replacement that behaves just like Windows.
More information is available at: https://www.reactos.org.
More information is available at: [reactos.org](https://www.reactos.org).
Also see the [media/doc](/media/doc/) subdirectory for some sparse notes.
## Who is responsible
Active devs are listed as members of [GitHub organization](https://github.com/orgs/reactos/people).
Active devs are listed as members of [GitHub organization](https://github.com/orgs/reactos/people).
See also the [CREDITS](CREDITS) file for others.
## Code mirrors
The main development is done on [GitHub](https://github.com/reactos/reactos). We have an [alternative mirror](https://git.reactos.org/) in case GitHub is down.
The main development is done on [GitHub](https://github.com/reactos/reactos). We have an [alternative mirror](https://git.reactos.org/?p=reactos.git) in case GitHub is down.
There is also an obsolete [SVN archive repository](https://svn.reactos.org/svn/reactos?view=revision) that is kept for historical purposes.
There is also an obsolete [SVN archive repository](https://svn.reactos.org/reactos/) that is kept for historical purposes.
[travis.badge]: https://travis-ci.org/reactos/reactos.svg?branch=master
[appveyor.badge]: https://ci.appveyor.com/api/projects/status/github/reactos/reactos?branch=master&svg=true
[coverity.badge]: https://scan.coverity.com/projects/205/badge.svg?flat=1
[commits.badge]: https://img.shields.io/github/commits-since/reactos/reactos/0.4.7-dev.svg
[release.badge]: https://img.shields.io/badge/release-0.4.6-brightgreen.svg
[license.badge]: https://img.shields.io/badge/license-GNU_GPL_2.0+-blue.svg
[sfstats.badge]: https://img.shields.io/sourceforge/dm/reactos.svg
[ghstats.badge]: https://img.shields.io/github/commit-activity/4w/reactos/reactos.svg
[ghcontrib.badge]: https://img.shields.io/github/contributors/reactos/reactos.svg
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.1.5-blue.svg
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.1.2-blue.svg
[tweetme.badge]: https://img.shields.io/twitter/url/http/shields.io.svg?style=social
[rosbewin.badge]: https://img.shields.io/badge/RosBE_Windows-2.1.6-0688CB.svg
[rosbeunix.badge]: https://img.shields.io/badge/RosBE_Unix-2.1.2-0688CB.svg
[prwelcome.badge]: https://img.shields.io/badge/PR-welcome-0688CB.svg
[travis.link]: https://travis-ci.org/reactos/reactos
[appveyor.link]: https://ci.appveyor.com/project/AmineKhaldi/reactos
[coverity.link]: https://scan.coverity.com/projects/205
[commits.link]: https://github.com/reactos/reactos/commits/master
[release.link]: https://sourceforge.net/projects/reactos/files/ReactOS/0.4.6
[license.link]: https://spdx.org/licenses/GPL-2.0+.html
[sfstats.link]: https://sourceforge.net/projects/reactos
[ghstats.link]: https://github.com/reactos/reactos/graphs/commit-activity
[ghcontrib.link]: https://github.com/reactos/reactos/graphs/contributors
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.1.5/
[rosbewin.link]: https://sourceforge.net/projects/reactos/files/RosBE-Windows/i386/2.1.6/
[rosbeunix.link]: https://sourceforge.net/projects/reactos/files/RosBE-Unix/2.1.2/
[tweetme.link]: https://twitter.com/intent/tweet?text=Check%20out%20ReactOS%20-%20Free%20and%20Open%20Source%20Windows%21&url=https%3A%2F%2Fgithub.com%2Freactos%2Freactos&hashtags=ReactOS,opensource,Windows

View File

@@ -1,12 +1,16 @@
environment:
matrix:
- BuildType: "clang-cl"
- BuildType: "msvc-x64"
- BuildType: "msvc"
# - BuildType: "clang-cl"
# - BuildType: vssolution
version: reactos.appveyor.{build}
skip_branch_with_pr: true
clone_depth: 5
clone_folder: c:\reactos-cov
matrix:
fast_finish: true
init:
- ps: (New-Object System.Net.WebClient).DownloadFile("https://svn.reactos.org/amine/RosCMakeNinja.zip","C:\RosCMakeNinja.zip")
@@ -22,13 +26,34 @@ init:
build_script:
- set PATH=C:\RosCMakeNinja\bin;%PATH%
- call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
- if "%BuildType%" == "msvc-x64" (
call "C:\PROGRA~2\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" amd64
) else (
call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
)
- cmake --version
- md c:\ros_build
- cd c:\ros_build
- call %APPVEYOR_BUILD_FOLDER%\configure.cmd %clang_configure_option% -DENABLE_ROSTESTS=1
- ninja -k0
- ninja bootcd
- ps: >-
& ninja -k0 2>&1 | select-string -pattern "\[\d+\/\d+\] " -NotMatch | %{$_.Line}
- ps: >-
& ninja bootcd 2>&1 | select-string -pattern "\[\d+\/\d+\] " -NotMatch | %{$_.Line}
test: off
deploy: off
for:
-
matrix:
only:
- BuildType: vssolution
build_script:
- set PATH=C:\RosCMakeNinja\bin;%PATH%
- call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
- cmake --version
- md C:\ros_build
- cd C:\ros_build
- call %APPVEYOR_BUILD_FOLDER%\configure.cmd VSSolution -DENABLE_ROSTESTS=1
- msbuild /verbosity:quiet /target:bootcd REACTOS.sln

View File

@@ -6,6 +6,7 @@ add_subdirectory(charmap)
add_subdirectory(clipbrd)
add_subdirectory(cmdutils)
add_subdirectory(control)
add_subdirectory(drwtsn32)
add_subdirectory(dxdiag)
add_subdirectory(extrac32)
add_subdirectory(findstr)
@@ -22,6 +23,7 @@ add_subdirectory(mplay32)
add_subdirectory(msconfig)
add_subdirectory(msconfig_new)
add_subdirectory(mscutils)
add_subdirectory(mshta)
add_subdirectory(mspaint)
add_subdirectory(mstsc)
add_subdirectory(network)
@@ -37,7 +39,9 @@ add_subdirectory(shutdown)
add_subdirectory(sndrec32)
add_subdirectory(sndvol32)
add_subdirectory(taskmgr)
add_subdirectory(utilman)
add_subdirectory(winhlp32)
add_subdirectory(winver)
add_subdirectory(wordpad)
add_subdirectory(write)
add_subdirectory(wusa)

View File

@@ -445,7 +445,7 @@ ata_str_to_mode(
)
{
int mode;
int len;
size_t len;
if(!_stricmp(str, "SATA600"))
return ATA_SA600;
@@ -1688,7 +1688,8 @@ main (
)
{
//ULONG Flags = 0;
int i, j;
intptr_t i;
uintptr_t j;
char a;
int bus_id = -1;
int dev_id = -1;

View File

@@ -1,4 +1,4 @@
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot md) */
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
STRINGTABLE

View File

@@ -47,7 +47,7 @@ Förkortningar:\n\
IDS_ABBR_WRITE "W"
IDS_ABBR_CHANGE "C"
IDS_ABBR_NONE "N"
IDS_ALLOW ""
IDS_ALLOW "(TILLÅT)"
IDS_DENY "(NEKA)"
IDS_SPECIAL_ACCESS "(speciell rättighet:)"
IDS_GENERIC_READ "GENERISK_LÄSNING"
@@ -73,7 +73,7 @@ Förkortningar:\n\
IDS_SYNCHRONIZE "SYNKRONISERA"
IDS_WRITE_OWNER "SKRIVA_ÄGARE"
IDS_WRITE_DAC "SKRIVA_DAC"
IDS_READ_CONTROL "LÄSE_KONTROLL"
IDS_READ_CONTROL "LÄSKONTROLL"
IDS_DELETE "RADERA"
IDS_STANDARD_RIGHTS_ALL "STANDARD_RÄTTIGHETER_ALLT"
END

View File

@@ -1,4 +1,4 @@
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT

View File

@@ -18,21 +18,21 @@ CACLS filename [/T] [/E] [/C] [/G user:perm [...]] [/R user [...]]\n\
指定文件的 ACL。\n\
/E 編輯 ACL 而不替換。\n\
/C 在出現拒絕訪問錯誤時繼續。\n\
/G user:perm 賦予指定用戶訪問權限。\n\
/G user:perm 賦予指定使用者訪問權限。\n\
Perm 可以是: R 讀取\n\
W 寫入\n\
C 更改(寫入)\n\
F 完全控制\n\
/R user 撤銷指定用戶的訪問權限(僅在与 /E 一起使用時合法)。\n\
/P user:perm 替換指定用戶的訪問權限。\n\
/R user 撤銷指定使用者的訪問權限(僅在与 /E 一起使用時合法)。\n\
/P user:perm 替換指定使用者的訪問權限。\n\
Perm 可以是: N 無\n\
R 讀取\n\
W 寫入\n\
C 更改(寫入) \n\
F 完全控制 \n\
/D user 拒絕指定用戶的訪問。\n\
/D user 拒絕指定使用者的訪問。\n\
在命令中可以使用通配符指定多個文件。\n\
您也可以在命令中指定多個用戶。\n\n\
您也可以在命令中指定多個使用者。\n\n\
縮寫: \n\
CI - 容器繼承。\n\
ACE會由目錄繼承。\n\

View File

@@ -1,12 +1,12 @@
add_definitions(-DDISABLE_HTMLHELP_SUPPORT=1)
list(APPEND SOURCE
convert.c
function.c
rpn.c
utl.c
fun_ieee.c
rpn_ieee.c
utl_ieee.c
winmain.c
htmlhelp.c
theme.c
calc.h)
file(GLOB calc_rc_deps res/*.*)

View File

@@ -1,16 +1,24 @@
#ifndef _CALC_H
#define _CALC_H
#ifndef __CALC_H__
#define __CALC_H__
#include <stdarg.h>
#include <windef.h>
#include <winuser.h>
#define WIN32_LEAN_AND_MEAN
#include <windows.h>
#include <tchar.h>
#include <commctrl.h>
#include <shellapi.h>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <float.h>
#include <malloc.h>
#ifndef DISABLE_HTMLHELP_SUPPORT
#include <htmlhelp.h>
#endif
#include <limits.h>
/* RESOURCES */
#include "resource.h"
/* Messages reserved for the main dialog */
#define WM_CLOSE_STATS (WM_APP+1)
@@ -21,8 +29,9 @@
#define WM_HANDLE_FROM (WM_APP+6)
#define WM_HANDLE_TO (WM_APP+7)
/* GNU MULTI-PRECISION LIBRARY support */
#ifdef ENABLE_MULTI_PRECISION
#include <mpfr.h>
#include "mpfr.h"
#ifndef MPFR_DEFAULT_RND
#define MPFR_DEFAULT_RND mpfr_get_default_rounding_mode ()
@@ -35,14 +44,54 @@
#endif
#include "resource.h"
#ifndef IDC_STATIC
#define IDC_STATIC ((DWORD)-1)
#endif
#define CALC_VERSION _T("1.12")
#define MAX_CALC_SIZE 256
/* HTMLHELP SUPPORT */
typedef HWND (WINAPI* type_HtmlHelpA)(HWND, LPCSTR, UINT, DWORD);
typedef HWND (WINAPI* type_HtmlHelpW)(HWND, LPCWSTR, UINT, DWORD);
extern type_HtmlHelpA calc_HtmlHelpA;
extern type_HtmlHelpW calc_HtmlHelpW;
#ifndef UNICODE
#define calc_HtmlHelp calc_HtmlHelpA
#else
#define calc_HtmlHelp calc_HtmlHelpW
#endif
void HtmlHelp_Start(HINSTANCE hInstance);
void HtmlHelp_Stop(void);
/* THEMING SUPPORT */
#if (_WIN32_WINNT >= 0x0600)
#include <vssym32.h>
#include <vsstyle.h>
#else
#include <tmschema.h>
#endif
#include <uxtheme.h>
void Theme_Start(HINSTANCE hInstance);
void Theme_Stop(void);
typedef HTHEME (WINAPI* type_OpenThemeData)(HWND,const WCHAR*);
typedef HRESULT (WINAPI* type_CloseThemeData)(HTHEME);
typedef HRESULT (WINAPI* type_DrawThemeBackground)(HTHEME,HDC,int,int,const RECT*,const RECT*);
typedef BOOL (WINAPI* type_IsAppThemed)(void);
typedef BOOL (WINAPI* type_IsThemeActive)(void);
typedef BOOL (WINAPI* type_IsThemeBackgroundPartiallyTransparent)(HTHEME, int, int);
typedef HRESULT (WINAPI* type_DrawThemeParentBackground)(HWND, HDC, RECT *);
extern type_OpenThemeData calc_OpenThemeData;
extern type_CloseThemeData calc_CloseThemeData;
extern type_DrawThemeBackground calc_DrawThemeBackground;
extern type_IsAppThemed calc_IsAppThemed;
extern type_IsThemeActive calc_IsThemeActive;
extern type_IsThemeBackgroundPartiallyTransparent calc_IsThemeBackgroundPartiallyTransparent;
extern type_DrawThemeParentBackground calc_DrawThemeParentBackground;
/*#define USE_KEYBOARD_HOOK*/
#define SIZEOF(_ar) (sizeof(_ar)/sizeof(_ar[1]))
@@ -120,6 +169,8 @@ typedef struct {
HHOOK hKeyboardHook;
#endif
HWND hWnd;
HICON hBgIcon;
HICON hSmIcon;
DWORD layout;
TCHAR buffer[MAX_CALC_SIZE];
TCHAR source[MAX_CALC_SIZE];
@@ -155,11 +206,11 @@ typedef struct {
extern calc_t calc;
#define CALC_E 2.7182818284590452354
#define CALC_PI_2 1.57079632679489661923
#define CALC_PI 3.14159265358979323846
#define CALC_3_PI_2 4.71238898038468985769
/* IEEE constants */
#define CALC_E 2.718281828459045235360
#define CALC_PI_2 1.570796326794896619231
#define CALC_PI 3.141592653589793238462
#define CALC_3_PI_2 4.712388980384689857694
#define CALC_2_PI 6.283185307179586476925
#define MODIFIER_INV 0x01
@@ -167,14 +218,9 @@ extern calc_t calc;
#define NO_CHAIN 0x04
void apply_int_mask(calc_number_t *a);
#ifdef ENABLE_MULTI_PRECISION
void validate_rad2angle(calc_number_t *c);
void validate_angle2rad(calc_number_t *c);
#else
#ifndef ENABLE_MULTI_PRECISION
__int64 logic_dbl2int(calc_number_t *a);
double logic_int2dbl(calc_number_t *a);
double validate_rad2angle(double a);
double validate_angle2rad(calc_number_t *c);
#endif
void rpn_sin(calc_number_t *c);
void rpn_cos(calc_number_t *c);
@@ -206,7 +252,9 @@ void rpn_exp10(calc_number_t *c);
void rpn_ln(calc_number_t *c);
void rpn_log(calc_number_t *c);
void rpn_ave(calc_number_t *c);
void rpn_ave2(calc_number_t *c);
void rpn_sum(calc_number_t *c);
void rpn_sum2(calc_number_t *c);
void rpn_s(calc_number_t *c);
void rpn_s_m1(calc_number_t *c);
void rpn_dms2dec(calc_number_t *c);
@@ -217,14 +265,20 @@ int rpn_is_zero(calc_number_t *c);
void rpn_alloc(calc_number_t *c);
void rpn_free(calc_number_t *c);
//
void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base);
void convert_text2number_2(calc_number_t *a);
void convert_real_integer(unsigned int base);
//
INT_PTR CALLBACK AboutDlgProc(HWND hWnd, UINT msg, WPARAM wp, LPARAM lp);
//
void ConvExecute(HWND hWnd);
void ConvAdjust(HWND hWnd, int n_cat);
void ConvInit(HWND hWnd);
#endif /* _CALC_H */
#endif /* __CALC_H__ */

View File

@@ -1,3 +1,23 @@
/*
* ReactOS Calc (Unit conversion engine)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
/*
@@ -44,13 +64,17 @@ typedef struct {
{ 0, NULL, NULL },
/*
1 gradian = 0.9 deg
1 radian = 57.29577951308233 deg
1 arcminute ....... = 1/60 deg
1 arcsecond ....... = 1/3600 deg
1 gradian ......... = 0.9 deg
1 radian .......... = 57.29577951308233 deg
*/
static const conv_t conv_ANGLE[] = {
DECLARE_CONV_UNIT(ANGLE, DEGREES, "$", "$")
DECLARE_CONV_UNIT(ANGLE, GRADIANS, "$*0.9", "$/0.9")
DECLARE_CONV_UNIT(ANGLE, RADIANS, "$/P*180", "$*P/180")
DECLARE_CONV_UNIT(ANGLE, ARCMINUTES, "$/60", "$*60")
DECLARE_CONV_UNIT(ANGLE, ARCSECONDS, "$/3600", "$*3600")
DECLARE_CONV_UNIT(ANGLE, DEGREES, "$", "$")
DECLARE_CONV_UNIT(ANGLE, GRADIANS, "$*0.9", "$/0.9")
DECLARE_CONV_UNIT(ANGLE, RADIANS, "$/P*180", "$*P/180")
DECLARE_CONV_END
};
@@ -62,13 +86,13 @@ static const conv_t conv_ANGLE[] = {
1 acre us ............. = 4840*(36/39.37)^2 m = 6272640/1549.9969 m
1 are ................. = 100 mq
1 chou ................ = 108000*(10/33)^2 mq
1 danbo ............... =
1 danbo ............... = 991.74 mq
1 ha .................. = 10000 mq
1 jeongbo ............. =
1 morgen hungary ...... =
1 jeongbo ............. = 9917.4 mq
1 morgen hungary ...... = 5754.642 mq
1 mu .................. = 2000/3 mq
1 ping ................ =
1 pyeong .............. =
1 pyeong .............. = 400/121 mq
1 pyeongbangja ........ =
1 rai ................. = 1600 mq
1 se .................. = 1080*(10/33)^2 mq
@@ -84,7 +108,7 @@ static const conv_t conv_ANGLE[] = {
1 square mm ........... = 0,000001 mq
1 square shaku ........ = (10/33)^2 mq
1 square tsuen ........ =
1 square va ........... =
1 square va ........... = 4 mq
1 square yard ......... = 0,83612736 mq
1 tan ................. = 10800*(10/33)^2 mq
1 tsubo ............... = 36*(10/33)^2 mq
@@ -97,15 +121,15 @@ static const conv_t conv_AREA[] = {
DECLARE_CONV_UNIT(AREA, ACRES_SCOTS, "$*5000", "$/5000")
DECLARE_CONV_UNIT(AREA, ARES, "$*100", "$/100")
DECLARE_CONV_UNIT(AREA, CHOU, "$*10800000/1089", "$*1089/10800000")
// DECLARE_CONV_UNIT(AREA, DANBO, "$", "$")
DECLARE_CONV_UNIT(AREA, DANBO, "$*991.74", "$/991.74")
DECLARE_CONV_UNIT(AREA, HECTARES, "$*10000", "$/10000")
// DECLARE_CONV_UNIT(AREA, JEONGBO, "$", "$")
DECLARE_CONV_UNIT(AREA, JEONGBO, "$*9917.4", "$/9917.4")
// DECLARE_CONV_UNIT(AREA, MORGEN_HUNGARY, "$", "$")
DECLARE_CONV_UNIT(AREA, MU, "$*(2000/3)", "$/(2000/3)")
DECLARE_CONV_UNIT(AREA, MU, "$*(2000/3)", "$/(2000/3)")
// DECLARE_CONV_UNIT(AREA, PING, "$", "$")
// DECLARE_CONV_UNIT(AREA, PYEONG, "$", "$")
DECLARE_CONV_UNIT(AREA, PYEONG, "$*400/121", "$*121/400")
// DECLARE_CONV_UNIT(AREA, PYEONGBANGJA, "$", "$")
DECLARE_CONV_UNIT(AREA, RAI, "$*1600", "$/1600")
DECLARE_CONV_UNIT(AREA, RAI, "$*1600", "$/1600")
DECLARE_CONV_UNIT(AREA, SE, "$*108000/1089", "$*1089/108000")
DECLARE_CONV_UNIT(AREA, SQUARE_CENTIMETERS, "$*0,0001", "$/0,0001")
// DECLARE_CONV_UNIT(AREA, SQUARE_CHR, "$", "$")
@@ -120,7 +144,7 @@ static const conv_t conv_AREA[] = {
DECLARE_CONV_UNIT(AREA, SQUARE_MILLIMETERS, "$*1000000", "$/1000000")
DECLARE_CONV_UNIT(AREA, SQUARE_SHAKU, "$*100/1089", "$/1089*100")
// DECLARE_CONV_UNIT(AREA, SQUARE_TSUEN, "$", "$")
// DECLARE_CONV_UNIT(AREA, SQUARE_VA, "$", "$")
DECLARE_CONV_UNIT(AREA, SQUARE_VA, "$*4", "$/4")
DECLARE_CONV_UNIT(AREA, SQUARE_YARD, "$*0,83612736", "$/0,83612736")
DECLARE_CONV_UNIT(AREA, TAN, "$*1080000/1089", "$*1089/1080000")
DECLARE_CONV_UNIT(AREA, TSUBO, "$*1188/1089", "$*1089/1188")
@@ -168,7 +192,7 @@ static const conv_t conv_CURRENCY[] = {
1 cal15 .... = 4.1855 J
1 BTU ...... = 1055.056 J
1 ERG ...... = 0.0000001 J
1 EV ....... = 0.000000000000000000160217653 J
1 eV ....... = 0.000000000000000000160217653 J
1 Foot-Pound = 1.3558179483314004 J
1 IT calorie = 4.1868 J
1 KCa ...... = 4186.8 J
@@ -181,7 +205,7 @@ static const conv_t conv_ENERGY[] = {
DECLARE_CONV_UNIT(ENERGY, 15_C_CALORIES, "$*4.1855", "$/4.1855")
DECLARE_CONV_UNIT(ENERGY, BTUS, "$*1055.056", "$/1055.056")
DECLARE_CONV_UNIT(ENERGY, ERGS, "$*.0000001", "$/.0000001")
DECLARE_CONV_UNIT(ENERGY, EVS, "$*.000000000000000000160217653", "$/.000000000000000000160217653")
DECLARE_CONV_UNIT(ENERGY, EVS, "$*1.60217653/1X19", "$/1.60217653*1X19")
DECLARE_CONV_UNIT(ENERGY, FOOT_POUNDS, "$*1.3558179483314004", "$/1.3558179483314004")
DECLARE_CONV_UNIT(ENERGY, IT_CALORIES, "$*4.1868", "$/4.1868")
DECLARE_CONV_UNIT(ENERGY, IT_KILOCALORIES, "$*4186.8", "$/4186.8")
@@ -209,13 +233,13 @@ static const conv_t conv_ENERGY[] = {
1 furlong ........ = 10 chains = 220*0.9144 m
1 gan ............ =
1 hand ........... = 4 inches = 0.9144/9 m
1 hunh ........... =
1 hunh ........... = 1/8 nieu = 9.144/3456 m
1 inch ........... = yard/36 = 0.9144/36 m
1 ja ............. =
1 jeong .......... =
1 kabiet ......... =
1 kabiet ......... = 1/4 nieu = 9.144/1728 m
1 ken ............ = 60/33 m
1 keub ........... =
1 keub ........... = 12 nieu = 10 inch = 9.144/36 m
1 km ............. = 1000 m
1 lar ............ =
1 light year ..... = 9460730472580800 m
@@ -224,25 +248,25 @@ static const conv_t conv_ENERGY[] = {
1 mile ........... = 1760 yards = 1609.344 m
1 millimeter ..... = 1/1000 m
1 nautical mile .. = 1852 m
1 nieu ........... =
1 nieu ........... = 10/12 inch = 9.144/432 m
1 parsec ......... = 30856800000000000 m
1 pica ........... = yard/216 = 0.9144/216 m
1 ri japan ....... =
1 ri korea ....... =
1 ri japan ....... = 129600/33 m
1 ri korea ....... = 12960/33 m
1 rod ............ = 5.0292 m
1 sawk ........... =
1 sen ............ =
1 sawk ........... = 2 keub = 20 inch = 9.144/18 m
1 sen ............ = 20 va = 40.64 m
1 shaku .......... = 10/33 m
1 span ........... = 9 inches = 0.9144/4 m
1 sun ............ = 1/33 m
1 tsuen .......... =
1 va ............. =
1 va ............. = 4 sawk = 80 inch = 2.032 m
1 yard ........... = 0.9144 m
1 yote ........... =
1 zhang .......... =
1 yote ........... = 400 sen = 16256 m
1 zhang .......... = 3+1/3 m = 10/3 m
*/
static const conv_t conv_LENGTH[] = {
DECLARE_CONV_UNIT(LENGTH, ANGSTROMS, "$*0.0000000001", "$/0.0000000001")
DECLARE_CONV_UNIT(LENGTH, ANGSTROMS, "$/1X10", "$*1X10")
DECLARE_CONV_UNIT(LENGTH, ASTRONOMICAL_UNITS, "$*149598000000", "$/149598000000")
DECLARE_CONV_UNIT(LENGTH, BARLEYCORNS, "$*0.9144/108", "$/0.9144*108")
DECLARE_CONV_UNIT(LENGTH, CENTIMETERS, "$/100", "$*100")
@@ -257,13 +281,13 @@ static const conv_t conv_LENGTH[] = {
DECLARE_CONV_UNIT(LENGTH, FURLONGS, "$*201.168", "$/201.168")
// DECLARE_CONV_UNIT(LENGTH, GAN, "$", "$")
DECLARE_CONV_UNIT(LENGTH, HANDS, "$*0,1016", "$/0,1016")
// DECLARE_CONV_UNIT(LENGTH, HUNH, "$", "$")
DECLARE_CONV_UNIT(LENGTH, HUNH, "$*9.144/3456", "$/9.144*3456")
DECLARE_CONV_UNIT(LENGTH, INCHES, "$*0.0254", "$/0.0254")
// DECLARE_CONV_UNIT(LENGTH, JA, "$", "$")
// DECLARE_CONV_UNIT(LENGTH, JEONG, "$", "$")
// DECLARE_CONV_UNIT(LENGTH, KABIET, "$", "$")
DECLARE_CONV_UNIT(LENGTH, KABIET, "$*9.144/1728", "$/9.144*1728")
DECLARE_CONV_UNIT(LENGTH, KEN, "$*60/33", "$*33/60")
// DECLARE_CONV_UNIT(LENGTH, KEUB, "$", "$")
DECLARE_CONV_UNIT(LENGTH, KEUB, "$*9.144/36", "$/9.144*36")
DECLARE_CONV_UNIT(LENGTH, KILOMETERS, "$*1000", "$/1000")
// DECLARE_CONV_UNIT(LENGTH, LAR, "$", "$")
DECLARE_CONV_UNIT(LENGTH, LIGHT_YEARS, "$*9460730472580800", "$/9460730472580800")
@@ -273,22 +297,22 @@ static const conv_t conv_LENGTH[] = {
DECLARE_CONV_UNIT(LENGTH, MILES, "$*1609.344", "$/1609.344")
DECLARE_CONV_UNIT(LENGTH, MILLIMETERS, "$/1000", "$*1000")
DECLARE_CONV_UNIT(LENGTH, NAUTICAL_MILES, "$*1852", "$/1852")
// DECLARE_CONV_UNIT(LENGTH, NIEU, "$", "$")
DECLARE_CONV_UNIT(LENGTH, PARSECS, "$*30856800000000000", "$/30856800000000000")
DECLARE_CONV_UNIT(LENGTH, NIEU, "$*9.144/432", "$/9.144*432")
DECLARE_CONV_UNIT(LENGTH, PARSECS, "$*3.085678X16", "$/3.085678X16")
DECLARE_CONV_UNIT(LENGTH, PICAS, "$*0.9144/216", "$/0.9144*216")
DECLARE_CONV_UNIT(LENGTH, RODS, "$*5.0292", "$/5.0292")
// DECLARE_CONV_UNIT(LENGTH, RI_JAPAN, "$", "$")
// DECLARE_CONV_UNIT(LENGTH, RI_KOREA, "$", "$")
// DECLARE_CONV_UNIT(LENGTH, SAWK, "$", "$")
// DECLARE_CONV_UNIT(LENGTH, SEN, "$", "$")
DECLARE_CONV_UNIT(LENGTH, RI_JAPAN, "$*129600/33", "$*33/129600")
DECLARE_CONV_UNIT(LENGTH, RI_KOREA, "$*12960/33", "$*33/12960")
DECLARE_CONV_UNIT(LENGTH, SAWK, "$*9.144/18", "$/9.144*18")
DECLARE_CONV_UNIT(LENGTH, SEN, "$*40.64", "$/40.64")
DECLARE_CONV_UNIT(LENGTH, SHAKU, "$*10/33", "$*33/10")
DECLARE_CONV_UNIT(LENGTH, SPAN, "$*0.9144/4", "$*4/0.9144")
DECLARE_CONV_UNIT(LENGTH, SUN, "$*1/33", "$*33")
// DECLARE_CONV_UNIT(LENGTH, TSUEN, "$", "$")
// DECLARE_CONV_UNIT(LENGTH, VA, "$", "$")
DECLARE_CONV_UNIT(LENGTH, VA, "$*2.032", "$/2.032")
DECLARE_CONV_UNIT(LENGTH, YARDS, "$*0.9144", "$/0.9144")
// DECLARE_CONV_UNIT(LENGTH, YOTE, "$", "$")
// DECLARE_CONV_UNIT(LENGTH, ZHANG, "$", "$")
DECLARE_CONV_UNIT(LENGTH, YOTE, "$*16256", "$/16256")
DECLARE_CONV_UNIT(LENGTH, ZHANG, "$/0.3", "$*0.3")
DECLARE_CONV_END
};
@@ -387,7 +411,7 @@ static const conv_t conv_VELOCITY[] = {
/*
1 barrel uk ...... = 163.65924 l
1 barrel oil ..... = 158.987295 l
1 bun ............ =
1 bun ............ = 1000 l
1 bushel uk ...... = 36.36872 l
1 bushel us ...... = 35.23907017 l
1 cubic cm ...... = 0.001 l
@@ -404,7 +428,7 @@ static const conv_t conv_VELOCITY[] = {
1 gou ............ = 0.1809 l
1 hop ............ =
1 icce ........... =
1 kwian .......... =
1 kwian .......... = 2000 l
1 mal ............ =
1 milliliter ..... = 0.001 l
1 pint uk ........ = 0.56826125 l
@@ -415,14 +439,14 @@ static const conv_t conv_VELOCITY[] = {
1 quart liquid us = 0.946352946 l
1 seki ........... =
1 syou ........... =
1 tananloung ..... =
1 tang ........... =
1 tananloung ..... = 1 l
1 tang ........... = 20 l
1 to ............. = 18040 l
*/
static const conv_t conv_VOLUME[] = {
DECLARE_CONV_UNIT(VOLUME, BARRELS_UK, "$*163.65924", "$/163.65924")
DECLARE_CONV_UNIT(VOLUME, BARRELS_OIL, "$*158.987295", "$/158.987295")
// DECLARE_CONV_UNIT(VOLUME, BUN, "$", "$")
DECLARE_CONV_UNIT(VOLUME, BUN, "$*1000", "$/1000")
DECLARE_CONV_UNIT(VOLUME, BUSHELS_UK, "$*36.36872", "$/36.36872")
DECLARE_CONV_UNIT(VOLUME, BUSHELS_US, "$*35.23907017", "$/35.23907017")
DECLARE_CONV_UNIT(VOLUME, CUBIC_CENTIMETERS, "$*0.001", "$/0.001")
@@ -439,7 +463,7 @@ static const conv_t conv_VOLUME[] = {
DECLARE_CONV_UNIT(VOLUME, GOU, "$*0.1809", "$/0.1809")
// DECLARE_CONV_UNIT(VOLUME, HOP, "$", "$")
// DECLARE_CONV_UNIT(VOLUME, ICCE, "$", "$")
// DECLARE_CONV_UNIT(VOLUME, KWIAN, "$", "$")
DECLARE_CONV_UNIT(VOLUME, KWIAN, "$*2000", "$/2000")
DECLARE_CONV_UNIT(VOLUME, LITERS, "$", "$")
// DECLARE_CONV_UNIT(VOLUME, MAL, "$", "$")
DECLARE_CONV_UNIT(VOLUME, MILLILITERS, "$*0.001", "$/0.001")
@@ -451,8 +475,8 @@ static const conv_t conv_VOLUME[] = {
DECLARE_CONV_UNIT(VOLUME, QUARTS_LIQUID_US, "$*0.946352946", "$/0.946352946")
// DECLARE_CONV_UNIT(VOLUME, SEKI, "$", "$")
// DECLARE_CONV_UNIT(VOLUME, SYOU, "$", "$")
// DECLARE_CONV_UNIT(VOLUME, TANANLOUNG, "$", "$")
// DECLARE_CONV_UNIT(VOLUME, TANG, "$", "$")
DECLARE_CONV_UNIT(VOLUME, TANANLOUNG, "$", "$")
DECLARE_CONV_UNIT(VOLUME, TANG, "$*20", "$/20")
DECLARE_CONV_UNIT(VOLUME, TO, "$*18040", "$/18040")
DECLARE_CONV_END
};
@@ -484,6 +508,17 @@ static const conv_t conv_VOLUME[] = {
1 ton uk .......... = 1016046.9088 g // long ton
1 ton us .......... = 907184.74 g // short ton
*/
/*
1 chang = 20 tamlung
1 tamlung = 4 baht
1 baht = 4 saloung
1 saloung =
1 chang = 6/5 kg = 1200 g
1 tamlung = 1/20 chang = 60 g
1 baht = 1/4 tamlung = 15 g
1 saloung = 1/4 bath = 15/4 g
*/
static const conv_t conv_WEIGHT[] = {
DECLARE_CONV_UNIT(WEIGHT, BAHT, "$*12.244", "$/12.244")
DECLARE_CONV_UNIT(WEIGHT, CARATS, "$*0.2", "$/0.2")

View File

@@ -0,0 +1,607 @@
/*
* ReactOS Calc (Math functions, IEEE-754 engine)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
static double validate_rad2angle(double a);
static double validate_angle2rad(calc_number_t *c);
void apply_int_mask(calc_number_t *r)
{
unsigned __int64 mask;
switch (calc.size) {
case IDC_RADIO_QWORD:
mask = _UI64_MAX;
break;
case IDC_RADIO_DWORD:
mask = ULONG_MAX;
break;
case IDC_RADIO_WORD:
mask = USHRT_MAX;
break;
case IDC_RADIO_BYTE:
mask = UCHAR_MAX;
break;
default:
mask = (unsigned __int64)-1;
}
r->i &= mask;
}
double asinh(double x)
{
return log(x+sqrt(x*x+1));
}
double acosh(double x)
{
// must be x>=1, if not return Nan (Not a Number)
if(!(x>=1.0)) return sqrt(-1.0);
// return only the positive result (as sqrt does).
return log(x+sqrt(x*x-1.0));
}
double atanh(double x)
{
// must be x>-1, x<1, if not return Nan (Not a Number)
if(!(x>-1.0 && x<1.0)) return sqrt(-1.0);
return log((1.0+x)/(1.0-x))/2.0;
}
static double validate_rad2angle(double a)
{
switch (calc.degr) {
case IDC_RADIO_DEG:
a = a * (180.0/CALC_PI);
break;
case IDC_RADIO_RAD:
break;
case IDC_RADIO_GRAD:
a = a * (200.0/CALC_PI);
break;
}
return a;
}
static double validate_angle2rad(calc_number_t *c)
{
switch (calc.degr) {
case IDC_RADIO_DEG:
c->f = c->f * (CALC_PI/180.0);
break;
case IDC_RADIO_RAD:
break;
case IDC_RADIO_GRAD:
c->f = c->f * (CALC_PI/200.0);
break;
}
return c->f;
}
void rpn_sin(calc_number_t *c)
{
double angle = validate_angle2rad(c);
if (angle == 0 || angle == CALC_PI)
c->f = 0;
else
if (angle == CALC_3_PI_2)
c->f = -1;
else
if (angle == CALC_2_PI)
c->f = 1;
else
c->f = sin(angle);
}
void rpn_cos(calc_number_t *c)
{
double angle = validate_angle2rad(c);
if (angle == CALC_PI_2 || angle == CALC_3_PI_2)
c->f = 0;
else
if (angle == CALC_PI)
c->f = -1;
else
if (angle == CALC_2_PI)
c->f = 1;
else
c->f = cos(angle);
}
void rpn_tan(calc_number_t *c)
{
double angle = validate_angle2rad(c);
if (angle == CALC_PI_2 || angle == CALC_3_PI_2)
calc.is_nan = TRUE;
else
if (angle == CALC_PI || angle == CALC_2_PI)
c->f = 0;
else
c->f = tan(angle);
}
void rpn_asin(calc_number_t *c)
{
c->f = validate_rad2angle(asin(c->f));
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_acos(calc_number_t *c)
{
c->f = validate_rad2angle(acos(c->f));
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_atan(calc_number_t *c)
{
c->f = validate_rad2angle(atan(c->f));
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_sinh(calc_number_t *c)
{
c->f = sinh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_cosh(calc_number_t *c)
{
c->f = cosh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_tanh(calc_number_t *c)
{
c->f = tanh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_asinh(calc_number_t *c)
{
c->f = asinh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_acosh(calc_number_t *c)
{
c->f = acosh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_atanh(calc_number_t *c)
{
c->f = atanh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_int(calc_number_t *c)
{
double int_part;
modf(calc.code.f, &int_part);
c->f = int_part;
}
void rpn_frac(calc_number_t *c)
{
double int_part;
c->f = modf(calc.code.f, &int_part);
}
void rpn_reci(calc_number_t *c)
{
if (c->f == 0)
calc.is_nan = TRUE;
else
c->f = 1./c->f;
}
void rpn_fact(calc_number_t *c)
{
double fact, mult, num;
if (calc.base == IDC_RADIO_DEC)
num = c->f;
else
num = (double)c->i;
if (num > 1000) {
calc.is_nan = TRUE;
return;
}
if (num < 0) {
calc.is_nan = TRUE;
return;
} else
if (num == 0)
fact = 1;
else {
rpn_int(c);
fact = 1;
mult = 2;
while (mult <= num) {
fact *= mult;
mult++;
}
c->f = fact;
}
if (_finite(fact) == 0)
calc.is_nan = TRUE;
else
if (calc.base == IDC_RADIO_DEC)
c->f = fact;
else
c->i = (__int64)fact;
}
__int64 logic_dbl2int(calc_number_t *a)
{
double int_part;
int width;
modf(a->f, &int_part);
width = (int_part==0) ? 1 : (int)log10(fabs(int_part))+1;
if (width > 63) {
calc.is_nan = TRUE;
return 0;
}
return (__int64)int_part;
}
double logic_int2dbl(calc_number_t *a)
{
return (double)a->i;
}
void rpn_not(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
calc_number_t n;
n.i = logic_dbl2int(c);
c->f = (long double)(~n.i);
} else
c->i = ~c->i;
}
void rpn_pi(calc_number_t *c)
{
c->f = CALC_PI;
}
void rpn_2pi(calc_number_t *c)
{
c->f = CALC_PI*2;
}
void rpn_sign(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC)
c->f = 0-c->f;
else
c->i = 0-c->i;
}
void rpn_exp2(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
c->f *= c->f;
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
} else
c->i *= c->i;
}
void rpn_exp3(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
c->f = pow(c->f, 3.);
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
} else
c->i *= (c->i*c->i);
}
static __int64 myabs64(__int64 number)
{
return (number < 0) ? 0-number : number;
}
static unsigned __int64 sqrti(unsigned __int64 number)
{
/* modified form of Newton's method for approximating roots */
#define NEXT(n, i) (((n) + (i)/(n)) >> 1)
unsigned __int64 n, n1;
#ifdef __GNUC__
if (number == 0xffffffffffffffffULL)
#else
if (number == 0xffffffffffffffffUI64)
#endif
return 0xffffffff;
n = 1;
n1 = NEXT(n, number);
while (myabs64(n1 - n) > 1) {
n = n1;
n1 = NEXT(n, number);
}
while((n1*n1) > number)
n1--;
return n1;
#undef NEXT
}
void rpn_sqrt(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
if (c->f < 0)
calc.is_nan = TRUE;
else
c->f = sqrt(c->f);
} else {
c->i = sqrti(c->i);
}
}
static __int64 cbrti(__int64 x) {
__int64 s, y, b;
s = 60;
y = 0;
while(s >= 0) {
y = 2*y;
b = (3*y*(y + 1) + 1) << s;
s = s - 3;
if (x >= b) {
x = x - b;
y = y + 1;
}
}
return y;
}
void rpn_cbrt(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC)
#if defined(__GNUC__) && !defined(__REACTOS__)
c->f = cbrt(c->f);
#else
c->f = pow(c->f,1./3.);
#endif
else {
c->i = cbrti(c->i);
}
}
void rpn_exp(calc_number_t *c)
{
c->f = exp(c->f);
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
}
void rpn_exp10(calc_number_t *c)
{
double int_part;
modf(c->f, &int_part);
if (fmod(int_part, 2.) == 0.)
calc.is_nan = TRUE;
else {
c->f = pow(10., c->f);
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
}
}
void rpn_ln(calc_number_t *c)
{
if (c->f <= 0)
calc.is_nan = TRUE;
else
c->f = log(c->f);
}
void rpn_log(calc_number_t *c)
{
if (c->f <= 0)
calc.is_nan = TRUE;
else
c->f = log10(c->f);
}
static double stat_sum(void)
{
double sum = 0;
statistic_t *p = calc.stat;
while (p != NULL) {
if (p->base == IDC_RADIO_DEC)
sum += p->num.f;
else
sum += p->num.i;
p = (statistic_t *)(p->next);
}
return sum;
}
static double stat_sum2(void)
{
double sum = 0;
statistic_t *p = calc.stat;
while (p != NULL) {
if (p->base == IDC_RADIO_DEC)
sum += p->num.f * p->num.f;
else
sum += (double)p->num.i * (double)p->num.i;
p = (statistic_t *)(p->next);
}
return sum;
}
void rpn_ave(calc_number_t *c)
{
double ave = 0;
int n;
ave = stat_sum();
n = SendDlgItemMessage(calc.hStatWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
if (n)
ave = ave / (double)n;
if (calc.base == IDC_RADIO_DEC)
c->f = ave;
else
c->i = (__int64)ave;
}
void rpn_ave2(calc_number_t *c)
{
double ave = 0;
int n;
ave = stat_sum2();
n = SendDlgItemMessage(calc.hStatWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
if (n)
ave = ave / (double)n;
if (calc.base == IDC_RADIO_DEC)
c->f = ave;
else
c->i = (__int64)ave;
}
void rpn_sum(calc_number_t *c)
{
double sum = stat_sum();
if (calc.base == IDC_RADIO_DEC)
c->f = sum;
else
c->i = (__int64)sum;
}
void rpn_sum2(calc_number_t *c)
{
double sum = stat_sum2();
if (calc.base == IDC_RADIO_DEC)
c->f = sum;
else
c->i = (__int64)sum;
}
static void rpn_s_ex(calc_number_t *c, int pop_type)
{
double ave = 0;
double n = 0;
double dev = 0;
double num = 0;
statistic_t *p = calc.stat;
ave = stat_sum();
n = (double)SendDlgItemMessage(calc.hStatWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
if (n == 0) {
c->f = 0;
return;
}
ave = ave / n;
dev = 0;
p = calc.stat;
while (p != NULL) {
if (p->base == IDC_RADIO_DEC)
num = p->num.f;
else
num = (double)p->num.i;
dev += pow(num-ave, 2.);
p = (statistic_t *)(p->next);
}
dev = sqrt(dev/(pop_type ? n-1 : n));
if (calc.base == IDC_RADIO_DEC)
c->f = dev;
else
c->i = (__int64)dev;
}
void rpn_s(calc_number_t *c)
{
rpn_s_ex(c, 0);
}
void rpn_s_m1(calc_number_t *c)
{
rpn_s_ex(c, 1);
}
void rpn_dms2dec(calc_number_t *c)
{
double d, m, s;
m = modf(c->f, &d) * 100;
s = (modf(m, &m) * 100)+.5;
modf(s, &s);
m = m/60;
s = s/3600;
c->f = d + m + s;
}
void rpn_dec2dms(calc_number_t *c)
{
double d, m, s;
m = modf(c->f, &d) * 60;
s = ceil(modf(m, &m) * 60);
c->f = d + m/100. + s/10000.;
}
void rpn_zero(calc_number_t *c)
{
c->f = 0;
}
void rpn_copy(calc_number_t *dst, calc_number_t *src)
{
*dst = *src;
}
int rpn_is_zero(calc_number_t *c)
{
return (c->f == 0);
}
void rpn_alloc(calc_number_t *c)
{
}
void rpn_free(calc_number_t *c)
{
}

View File

@@ -1,5 +1,28 @@
/*
* ReactOS Calc (Math functions, GMP/MPFR engine)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
static void validate_rad2angle(calc_number_t *c);
static void validate_angle2rad(calc_number_t *c);
void apply_int_mask(calc_number_t *r)
{
mpz_t a, mask;
@@ -28,7 +51,7 @@ void apply_int_mask(calc_number_t *r)
mpz_clear(mask);
}
void validate_rad2angle(calc_number_t *r)
static void validate_rad2angle(calc_number_t *r)
{
mpfr_t mult, divs;
@@ -55,7 +78,7 @@ void validate_rad2angle(calc_number_t *r)
mpfr_clear(divs);
}
void validate_angle2rad(calc_number_t *r)
static void validate_angle2rad(calc_number_t *r)
{
mpfr_t mult, divs;
@@ -341,6 +364,21 @@ static void stat_sum(mpfr_t sum)
}
}
static void stat_sum2(mpfr_t sum)
{
statistic_t *p = calc.stat;
mpfr_t sqr;
mpfr_init(sqr);
mpfr_set_ui(sum, 0, MPFR_DEFAULT_RND);
while (p != NULL) {
mpfr_mul(sqr, p->num.mf, p->num.mf, MPFR_DEFAULT_RND);
mpfr_add(sum, sum, sqr, MPFR_DEFAULT_RND);
p = (statistic_t *)(p->next);
}
mpfr_clear(sqr);
}
void rpn_ave(calc_number_t *c)
{
int n;
@@ -355,6 +393,20 @@ void rpn_ave(calc_number_t *c)
mpfr_trunc(c->mf, c->mf);
}
void rpn_ave2(calc_number_t *c)
{
int n;
stat_sum2(c->mf);
n = SendDlgItemMessage(calc.hStatWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
if (n)
mpfr_div_ui(c->mf, c->mf, n, MPFR_DEFAULT_RND);
if (calc.base != IDC_RADIO_DEC)
mpfr_trunc(c->mf, c->mf);
}
void rpn_sum(calc_number_t *c)
{
stat_sum(c->mf);
@@ -363,6 +415,14 @@ void rpn_sum(calc_number_t *c)
mpfr_trunc(c->mf, c->mf);
}
void rpn_sum2(calc_number_t *c)
{
stat_sum2(c->mf);
if (calc.base != IDC_RADIO_DEC)
mpfr_trunc(c->mf, c->mf);
}
static void rpn_s_ex(calc_number_t *c, int pop_type)
{
mpfr_t dev;

View File

@@ -1,544 +0,0 @@
#include "calc.h"
#include <limits.h>
void apply_int_mask(calc_number_t *r)
{
unsigned __int64 mask;
switch (calc.size) {
case IDC_RADIO_QWORD:
mask = _UI64_MAX;
break;
case IDC_RADIO_DWORD:
mask = ULONG_MAX;
break;
case IDC_RADIO_WORD:
mask = USHRT_MAX;
break;
case IDC_RADIO_BYTE:
mask = UCHAR_MAX;
break;
default:
mask = (unsigned __int64)-1;
}
r->i &= mask;
}
double asinh(double x)
{
return log(x+sqrt(x*x+1));
}
double acosh(double x)
{
// must be x>=1, if not return Nan (Not a Number)
if(!(x>=1.0)) return sqrt(-1.0);
// return only the positive result (as sqrt does).
return log(x+sqrt(x*x-1.0));
}
double atanh(double x)
{
// must be x>-1, x<1, if not return Nan (Not a Number)
if(!(x>-1.0 && x<1.0)) return sqrt(-1.0);
return log((1.0+x)/(1.0-x))/2.0;
}
double validate_rad2angle(double a)
{
switch (calc.degr) {
case IDC_RADIO_DEG:
a = a * (180.0/CALC_PI);
break;
case IDC_RADIO_RAD:
break;
case IDC_RADIO_GRAD:
a = a * (200.0/CALC_PI);
break;
}
return a;
}
double validate_angle2rad(calc_number_t *c)
{
switch (calc.degr) {
case IDC_RADIO_DEG:
c->f = c->f * (CALC_PI/180.0);
break;
case IDC_RADIO_RAD:
break;
case IDC_RADIO_GRAD:
c->f = c->f * (CALC_PI/200.0);
break;
}
return c->f;
}
void rpn_sin(calc_number_t *c)
{
double angle = validate_angle2rad(c);
if (angle == 0 || angle == CALC_PI)
c->f = 0;
else
if (angle == CALC_3_PI_2)
c->f = -1;
else
if (angle == CALC_2_PI)
c->f = 1;
else
c->f = sin(angle);
}
void rpn_cos(calc_number_t *c)
{
double angle = validate_angle2rad(c);
if (angle == CALC_PI_2 || angle == CALC_3_PI_2)
c->f = 0;
else
if (angle == CALC_PI)
c->f = -1;
else
if (angle == CALC_2_PI)
c->f = 1;
else
c->f = cos(angle);
}
void rpn_tan(calc_number_t *c)
{
double angle = validate_angle2rad(c);
if (angle == CALC_PI_2 || angle == CALC_3_PI_2)
calc.is_nan = TRUE;
else
if (angle == CALC_PI || angle == CALC_2_PI)
c->f = 0;
else
c->f = tan(angle);
}
void rpn_asin(calc_number_t *c)
{
c->f = validate_rad2angle(asin(c->f));
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_acos(calc_number_t *c)
{
c->f = validate_rad2angle(acos(c->f));
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_atan(calc_number_t *c)
{
c->f = validate_rad2angle(atan(c->f));
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_sinh(calc_number_t *c)
{
c->f = sinh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_cosh(calc_number_t *c)
{
c->f = cosh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_tanh(calc_number_t *c)
{
c->f = tanh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_asinh(calc_number_t *c)
{
c->f = asinh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_acosh(calc_number_t *c)
{
c->f = acosh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_atanh(calc_number_t *c)
{
c->f = atanh(c->f);
if (_isnan(c->f))
calc.is_nan = TRUE;
}
void rpn_int(calc_number_t *c)
{
double int_part;
modf(calc.code.f, &int_part);
c->f = int_part;
}
void rpn_frac(calc_number_t *c)
{
double int_part;
c->f = modf(calc.code.f, &int_part);
}
void rpn_reci(calc_number_t *c)
{
if (c->f == 0)
calc.is_nan = TRUE;
else
c->f = 1./c->f;
}
void rpn_fact(calc_number_t *c)
{
double fact, mult, num;
if (calc.base == IDC_RADIO_DEC)
num = c->f;
else
num = (double)c->i;
if (num > 1000) {
calc.is_nan = TRUE;
return;
}
if (num < 0) {
calc.is_nan = TRUE;
return;
} else
if (num == 0)
fact = 1;
else {
rpn_int(c);
fact = 1;
mult = 2;
while (mult <= num) {
fact *= mult;
mult++;
}
c->f = fact;
}
if (_finite(fact) == 0)
calc.is_nan = TRUE;
else
if (calc.base == IDC_RADIO_DEC)
c->f = fact;
else
c->i = (__int64)fact;
}
__int64 logic_dbl2int(calc_number_t *a)
{
double int_part;
int width;
modf(a->f, &int_part);
width = (int_part==0) ? 1 : (int)log10(fabs(int_part))+1;
if (width > 63) {
calc.is_nan = TRUE;
return 0;
}
return (__int64)int_part;
}
double logic_int2dbl(calc_number_t *a)
{
return (double)a->i;
}
void rpn_not(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
calc_number_t n;
n.i = logic_dbl2int(c);
c->f = (long double)(~n.i);
} else
c->i = ~c->i;
}
void rpn_pi(calc_number_t *c)
{
c->f = CALC_PI;
}
void rpn_2pi(calc_number_t *c)
{
c->f = CALC_PI*2;
}
void rpn_sign(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC)
c->f = 0-c->f;
else
c->i = 0-c->i;
}
void rpn_exp2(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
c->f *= c->f;
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
} else
c->i *= c->i;
}
void rpn_exp3(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
c->f = pow(c->f, 3.);
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
} else
c->i *= (c->i*c->i);
}
static __int64 myabs64(__int64 number)
{
return (number < 0) ? 0-number : number;
}
static unsigned __int64 sqrti(unsigned __int64 number)
{
/* modified form of Newton's method for approximating roots */
#define NEXT(n, i) (((n) + (i)/(n)) >> 1)
unsigned __int64 n, n1;
#ifdef __GNUC__
if (number == 0xffffffffffffffffLL)
#else
if (number == 0xffffffffffffffff)
#endif
return 0xffffffff;
n = 1;
n1 = NEXT(n, number);
while (myabs64(n1 - n) > 1) {
n = n1;
n1 = NEXT(n, number);
}
while((n1*n1) > number)
n1--;
return n1;
#undef NEXT
}
void rpn_sqrt(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC) {
if (c->f < 0)
calc.is_nan = TRUE;
else
c->f = sqrt(c->f);
} else {
c->i = sqrti(c->i);
}
}
static __int64 cbrti(__int64 x) {
__int64 s, y, b;
s = 60;
y = 0;
while(s >= 0) {
y = 2*y;
b = (3*y*(y + 1) + 1) << s;
s = s - 3;
if (x >= b) {
x = x - b;
y = y + 1;
}
}
return y;
}
void rpn_cbrt(calc_number_t *c)
{
if (calc.base == IDC_RADIO_DEC)
#if defined(__GNUC__) && !defined(__REACTOS__)
c->f = cbrt(c->f);
#else
c->f = pow(c->f,1./3.);
#endif
else {
c->i = cbrti(c->i);
}
}
void rpn_exp(calc_number_t *c)
{
c->f = exp(c->f);
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
}
void rpn_exp10(calc_number_t *c)
{
double int_part;
modf(c->f, &int_part);
if (fmod(int_part, 2.) == 0.)
calc.is_nan = TRUE;
else {
c->f = pow(10., c->f);
if (_finite(c->f) == 0)
calc.is_nan = TRUE;
}
}
void rpn_ln(calc_number_t *c)
{
if (c->f <= 0)
calc.is_nan = TRUE;
else
c->f = log(c->f);
}
void rpn_log(calc_number_t *c)
{
if (c->f <= 0)
calc.is_nan = TRUE;
else
c->f = log10(c->f);
}
static double stat_sum(void)
{
double sum = 0;
statistic_t *p = calc.stat;
while (p != NULL) {
if (p->base == IDC_RADIO_DEC)
sum += p->num.f;
else
sum += p->num.i;
p = (statistic_t *)(p->next);
}
return sum;
}
void rpn_ave(calc_number_t *c)
{
double ave = 0;
int n;
ave = stat_sum();
n = SendDlgItemMessage(calc.hStatWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
if (n)
ave = ave / (double)n;
if (calc.base == IDC_RADIO_DEC)
c->f = ave;
else
c->i = (__int64)ave;
}
void rpn_sum(calc_number_t *c)
{
double sum = stat_sum();
if (calc.base == IDC_RADIO_DEC)
c->f = sum;
else
c->i = (__int64)sum;
}
static void rpn_s_ex(calc_number_t *c, int pop_type)
{
double ave = 0;
double n = 0;
double dev = 0;
double num = 0;
statistic_t *p = calc.stat;
ave = stat_sum();
n = (double)SendDlgItemMessage(calc.hStatWnd, IDC_LIST_STAT, LB_GETCOUNT, 0, 0);
if (n == 0) {
c->f = 0;
return;
}
ave = ave / n;
dev = 0;
p = calc.stat;
while (p != NULL) {
if (p->base == IDC_RADIO_DEC)
num = p->num.f;
else
num = (double)p->num.i;
dev += pow(num-ave, 2.);
p = (statistic_t *)(p->next);
}
dev = sqrt(dev/(pop_type ? n-1 : n));
if (calc.base == IDC_RADIO_DEC)
c->f = dev;
else
c->i = (__int64)dev;
}
void rpn_s(calc_number_t *c)
{
rpn_s_ex(c, 0);
}
void rpn_s_m1(calc_number_t *c)
{
rpn_s_ex(c, 1);
}
void rpn_dms2dec(calc_number_t *c)
{
double d, m, s;
m = modf(c->f, &d) * 100;
s = (modf(m, &m) * 100)+.5;
modf(s, &s);
m = m/60;
s = s/3600;
c->f = d + m + s;
}
void rpn_dec2dms(calc_number_t *c)
{
double d, m, s;
m = modf(c->f, &d) * 60;
s = ceil(modf(m, &m) * 60);
c->f = d + m/100. + s/10000.;
}
void rpn_zero(calc_number_t *c)
{
c->f = 0;
}
void rpn_copy(calc_number_t *dst, calc_number_t *src)
{
*dst = *src;
}
int rpn_is_zero(calc_number_t *c)
{
return (c->f == 0);
}
void rpn_alloc(calc_number_t *c)
{
}
void rpn_free(calc_number_t *c)
{
}

View File

@@ -204,10 +204,16 @@ It deletes all numbers currently stored into the list.
While the statistical window is shown, four additional buttons are enabled:
[Ave]
It calculates the arithmetic average of the numbers stored into the list.
[Ave] + [Inv]
It calculates the arithmetic average of the squares of the numbers stored into the list.
[Sum]
It calculates the sum of all numbers stored into the list.
[Sum] + [Inv]
It calculates the sum of the squares of all numbers stored into the list.
[s]
It calculates the population standard deviations of the numbers stored into the list.
It calculates the population standard deviations with base 'n-1' of the numbers stored into the list.
[s] + [Inv]
It calculates the population standard deviations with base 'n' of the numbers stored into the list.
[Dat]
It inserts the number shown into the output display into the list.
@@ -483,10 +489,12 @@ Shortcut from keyboard: CTRL-S
Ave
It calculates the arithmetic average of the numbers stored into the statistical box.
When used with [Inv] modifier it calculates the average of squares.
Shortcut from keyboard: CTRL-A
Sum
It calculates the sum of the numbers stored into the statistical box.
When used with [Inv] modifier it calculates the summation of squares.
Shortcut from keyboard: CTRL-T
s

View File

@@ -0,0 +1,67 @@
/*
* ReactOS Calc (HtmlHelp support)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
#define GET_CB(name) \
calc_##name = (type_##name)GetProcAddress(hHtmlHelp, #name); \
if (calc_##name == NULL) calc_##name = dummy_##name;
static HWND WINAPI
dummy_HtmlHelpA(HWND hWnd, LPCSTR pszFile, UINT uCommand, DWORD dwData);
static HWND WINAPI
dummy_HtmlHelpW(HWND hWnd, LPCWSTR pszFile, UINT uCommand, DWORD dwData);
type_HtmlHelpA calc_HtmlHelpA = dummy_HtmlHelpA;
type_HtmlHelpW calc_HtmlHelpW = dummy_HtmlHelpW;
static HMODULE hHtmlHelp;
static HWND WINAPI
dummy_HtmlHelpA(HWND hWnd, LPCSTR pszFile, UINT uCommand, DWORD dwData)
{
return NULL;
}
static HWND WINAPI
dummy_HtmlHelpW(HWND hWnd, LPCWSTR pszFile, UINT uCommand, DWORD dwData)
{
return NULL;
}
void HtmlHelp_Start(HINSTANCE hInstance)
{
hHtmlHelp = LoadLibrary(_T("HHCTRL.OCX"));
if (hHtmlHelp == NULL)
return;
GET_CB(HtmlHelpW)
GET_CB(HtmlHelpA)
}
void HtmlHelp_Stop(void)
{
if(hHtmlHelp == NULL)
return;
FreeLibrary(hHtmlHelp);
hHtmlHelp = NULL;
}

View File

@@ -435,6 +435,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Градуси"
IDS_ANGLE_GRADIANS "Гради"
IDS_ANGLE_RADIANS "Радиани"

View File

@@ -434,6 +434,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Stupně"
IDS_ANGLE_GRADIANS "Grady"
IDS_ANGLE_RADIANS "Radiány"

View File

@@ -429,6 +429,8 @@ END
/* Winkeltypen */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Grad"
IDS_ANGLE_GRADIANS "Gon"
IDS_ANGLE_RADIANS "Radiant"

View File

@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Βαθμοί"
IDS_ANGLE_GRADIANS "Ακτίνια"
IDS_ANGLE_RADIANS "Μοίρες"

View File

@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Degrees"
IDS_ANGLE_GRADIANS "Gradians"
IDS_ANGLE_RADIANS "Radians"

View File

@@ -435,6 +435,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Grados"
IDS_ANGLE_GRADIANS "Gradianes"
IDS_ANGLE_RADIANS "Radianes"

View File

@@ -144,7 +144,7 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Retour arrière", IDC_BUTTON_BACK, 177, 38, 43, 18, BS_CENTER |
PUSHBUTTON "Retour arrière", IDC_BUTTON_BACK, 166, 38, 54, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 305, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
DEFPUSHBUTTON "", IDC_BUTTON_FOCUS, 0, 0, 5, 5, NOT WS_VISIBLE
@@ -156,11 +156,11 @@ CAPTION "Calculatrice ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "C", IDC_BUTTON_CANC, 128, 23, 36, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "CE", IDC_BUTTON_CE, 90, 23, 36, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Retour arrière", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Retour arrière", IDC_BUTTON_BACK, 36, 23, 52, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
@@ -232,11 +232,11 @@ BEGIN
WS_TABSTOP | CBS_SORT
LTEXT "Convertir en :", IDC_STATIC, 5, 76, 56, 8
CONTROL "C", IDC_BUTTON_CANC, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 280, 24, 36, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 242, 24, 36, 17
CONTROL "Retour arrière", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 52, 17
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 48, 24, 18
@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Degrés"
IDS_ANGLE_GRADIANS "Grades"
IDS_ANGLE_RADIANS "Radians"

View File

@@ -6,29 +6,30 @@ LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "מחשבון ReactOS"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "הקסהדסימלי", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
CONTROL "עשרוני", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 41, 21, 30, 10
CONTROL "אוקטלי", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 74, 21, 30, 10
CONTROL "בינארי", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 107, 21, 30, 10
GROUPBOX "", IDC_STATIC, 5, 34, 84, 20
GROUPBOX "", IDC_STATIC, 4 ,14, 141, 20
CONTROL "הקס", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 6, 21, 30, 10
CONTROL "עשרוני", IDC_RADIO_DEC, "Button", BS_AUTORADIOBUTTON, 36, 21, 34, 10
CONTROL "אוקטלי", IDC_RADIO_OCT, "Button", BS_AUTORADIOBUTTON, 73, 21, 37, 10
CONTROL "בינרי", IDC_RADIO_BIN, "Button", BS_AUTORADIOBUTTON, 113, 21, 30, 10
GROUPBOX "", IDC_STATIC, 4, 34, 84, 20
CONTROL "Inv", IDC_CHECK_INV, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 8, 41, 26, 10
CONTROL "Hyp", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "Sta", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Sta", IDC_BUTTON_STA, 4, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Ave", IDC_BUTTON_AVE, 4, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 5, 100, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Sum", IDC_BUTTON_SUM, 4, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "s", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "s", IDC_BUTTON_S, 4, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Dat", IDC_BUTTON_DAT, 4, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F-E", IDC_BUTTON_FE, 38, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -70,15 +71,15 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "pi", IDC_BUTTON_PI, 123, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "7", IDC_BUTTON_7, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "9", IDC_BUTTON_9, 156, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "6", IDC_BUTTON_6, 156, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "3", IDC_BUTTON_3, 156, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 156, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "A", IDC_BUTTON_A, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "F", IDC_BUTTON_F, 156, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "8", IDC_BUTTON_8, 182, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -88,17 +89,17 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 182, 120, 24, 18,BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "B", IDC_BUTTON_B, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "E", IDC_BUTTON_E, 182, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "7", IDC_BUTTON_7, 208, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "4", IDC_BUTTON_4, 208, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "1", IDC_BUTTON_1, 208, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 208, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "C", IDC_BUTTON_C, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "D", IDC_BUTTON_D, 208, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "/", IDC_BUTTON_DIV, 234, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -108,7 +109,7 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+", IDC_BUTTON_ADD, 234, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "D", IDC_BUTTON_D, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "C", IDC_BUTTON_C, 234, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -118,7 +119,7 @@ BEGIN
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "=", IDC_BUTTON_EQU, 260, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "E", IDC_BUTTON_E, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "B", IDC_BUTTON_B, 260, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "And", IDC_BUTTON_AND, 286, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -128,7 +129,7 @@ BEGIN
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Int", IDC_BUTTON_INT, 286, 120, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "F", IDC_BUTTON_F, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "A", IDC_BUTTON_A, 286, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
GROUPBOX "", IDC_STATIC, 147, 14, 163, 20
CONTROL "Qword", IDC_RADIO_QWORD, "Button", BS_AUTORADIOBUTTON |
@@ -141,7 +142,7 @@ BEGIN
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "מעלות", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "רדיאנים", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
CONTROL "Gradians", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
CONTROL "גרדיאנים", IDC_RADIO_GRAD, "Button", BS_AUTORADIOBUTTON, 258, 21, 45, 10
PUSHBUTTON "C", IDC_BUTTON_CANC, 267, 38, 43, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 222, 38, 43, 18, BS_CENTER | BS_VCENTER |
@@ -154,6 +155,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "מחשבון ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
@@ -162,14 +164,14 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "CE", IDC_BUTTON_CE, 80, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Back", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "מחק", IDC_BUTTON_BACK, 36, 23, 42, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 159, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "7", IDC_BUTTON_7, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "9", IDC_BUTTON_9, 36, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "4", IDC_BUTTON_4, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "6", IDC_BUTTON_6, 36, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "1", IDC_BUTTON_1, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "3", IDC_BUTTON_3, 36, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "0", IDC_BUTTON_0, 36, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -181,11 +183,11 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "+/-", IDC_BUTTON_SIGN, 62, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "9", IDC_BUTTON_9, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "7", IDC_BUTTON_7, 88, 45, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "6", IDC_BUTTON_6, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "4", IDC_BUTTON_4, 88, 65, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "3", IDC_BUTTON_3, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "1", IDC_BUTTON_1, 88, 85, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON ",", IDC_BUTTON_DOT, 88, 105, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -219,6 +221,7 @@ END
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "מחשבון ReactOS"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
@@ -237,14 +240,14 @@ BEGIN
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 276, 24, 40, 17
CONTROL "CE", IDC_BUTTON_CE, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 232, 24, 40, 17
CONTROL "Back", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "חזרה", IDC_BUTTON_BACK, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 24, 40,17
RTEXT "", IDC_TEXT_OUTPUT, 5, 1, 312, 14, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 48, 24, 18
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 67, 24, 18
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 86, 24, 18
CONTROL "0", IDC_BUTTON_0, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 188, 105, 24, 18
@@ -256,11 +259,11 @@ BEGIN
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 86, 24, 18
CONTROL "+/-", IDC_BUTTON_SIGN, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 214, 105, 24, 18
CONTROL "9", IDC_BUTTON_9, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "7", IDC_BUTTON_7, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 48, 24, 18
CONTROL "6", IDC_BUTTON_6, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "4", IDC_BUTTON_4, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 67, 24, 18
CONTROL "3", IDC_BUTTON_3, "Button", BS_OWNERDRAW | BS_CENTER |
CONTROL "1", IDC_BUTTON_1, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 86, 24, 18
CONTROL ",", IDC_BUTTON_DOT, "Button", BS_OWNERDRAW | BS_CENTER |
BS_VCENTER | BS_NOTIFY | WS_TABSTOP, 240, 105, 24, 18
@@ -294,6 +297,7 @@ END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
EXSTYLE WS_EX_LAYOUTRTL
CAPTION "תיבת סטטיסטיקה"
FONT 8, "MS Shell Dlg"
BEGIN
@@ -323,11 +327,11 @@ BEGIN
MENUITEM "הקס\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "עשרוני\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "אוקטלי\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "בינארי\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM "בינרי\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "מעלות\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "רדיאנים\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "Gradians\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM "גרדיאנים\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "קיבוץ ספרות", IDM_VIEW_GROUP, CHECKED
END
@@ -335,7 +339,7 @@ BEGIN
BEGIN
MENUITEM "נושאי עזרה", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "אודות המחשבון ReactOS", IDM_HELP_ABOUT
MENUITEM "אודות מחשבון ReactOS", IDM_HELP_ABOUT
END
END
@@ -355,7 +359,7 @@ BEGIN
MENUITEM "הקס\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "עשרוני\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "אוקטלי\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "בינארי\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM "בינרי\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Qword\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "Dword\tF2", IDM_VIEW_DWORD, CHECKED
@@ -407,7 +411,7 @@ END
STRINGTABLE
BEGIN
IDS_CALC_NAME "מחשבון ReactOS"
IDS_AUTHOR "נכתבה על ידי Carlo Bramini"
IDS_AUTHOR "נכתב על ידי Carlo Bramini"
END
/* Types of conversion */
@@ -431,8 +435,10 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "מעלות"
IDS_ANGLE_GRADIANS "Gradians"
IDS_ANGLE_GRADIANS "גרדיאנים"
IDS_ANGLE_RADIANS "רדיאנים"
END
@@ -493,14 +499,14 @@ BEGIN
IDS_CURRENCY_CZECH_KORUNA "קורונה צ'כי"
IDS_CURRENCY_DEUTSCHE_MARK "מארק גרמני"
IDS_CURRENCY_DUTCH_GUILDER "גילדר הולנדי"
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
IDS_CURRENCY_ESTONIAN_KROON "קרון אסטוני"
IDS_CURRENCY_EURO "אירו"
IDS_CURRENCY_FINNISH_MARKKA "מארקה פינית"
IDS_CURRENCY_FRENCH_FRANC "פרנק צרפתי"
IDS_CURRENCY_GREEK_DRACHMA "דרכמה יוונית"
IDS_CURRENCY_IRISH_POUND "לירה אירית"
IDS_CURRENCY_ITALIAN_LIRA "לירה איטלקית"
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
IDS_CURRENCY_LATVIAN_LATS "לטים לטבים"
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "פרנק לוקסמבורגי"
IDS_CURRENCY_MALTESE_LIRA "לירה מלטזי"
@@ -704,6 +710,6 @@ BEGIN
IDS_WEIGHT_STONES "Stones"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "טונות"
IDS_WEIGHT_TONS_UK "טון (ארצות הברית)"
IDS_WEIGHT_TONS_US "טון (בריטניה)"
IDS_WEIGHT_TONS_UK "טון (בריטניה)"
IDS_WEIGHT_TONS_US "טון (ארצות הברית)"
END

View File

@@ -437,6 +437,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Fok"
IDS_ANGLE_GRADIANS "Gradián"
IDS_ANGLE_RADIANS "Radián"

View File

@@ -429,6 +429,8 @@ END
/* Tipi di angoli */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minuti d'arco"
IDS_ANGLE_ARCSECONDS "Secondi d'arco"
IDS_ANGLE_DEGREES "Sessagesimali"
IDS_ANGLE_GRADIANS "Centesimali (Gradienti)"
IDS_ANGLE_RADIANS "Radianti"

View File

@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Degrees"
IDS_ANGLE_GRADIANS "Gradians"
IDS_ANGLE_RADIANS "Radians"

View File

@@ -8,7 +8,7 @@ IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 계산기"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "MS Shell Dlg", 0, 0, 0x1
FONT 9, "굴림", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
@@ -156,7 +156,7 @@ IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 계산기"
MENU IDR_MENU_STANDARD
FONT 9, "MS Shell Dlg", 0, 0, 0x1
FONT 9, "굴림", 0, 0, 0x1
BEGIN
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -221,7 +221,7 @@ IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 계산기 정보"
MENU IDR_MENU_STANDARD
FONT 9, "MS Shell Dlg"
FONT 9, "굴림"
BEGIN
PUSHBUTTON "Convert", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
@@ -295,7 +295,7 @@ END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Statistics box"
FONT 9, "MS Shell Dlg"
FONT 9, "굴림"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "RET", IDC_BUTTON_RET, 4, 48, 36, 16
@@ -431,6 +431,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Degrees"
IDS_ANGLE_GRADIANS "Gradians"
IDS_ANGLE_RADIANS "Radians"

View File

@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Graden"
IDS_ANGLE_GRADIANS "Gradiënten"
IDS_ANGLE_RADIANS "Radialen"

View File

@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Grader"
IDS_ANGLE_GRADIANS "Gradianer"
IDS_ANGLE_RADIANS "Radianer"

View File

@@ -438,6 +438,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minuty kątowe"
IDS_ANGLE_ARCSECONDS "Sekundy kątowe"
IDS_ANGLE_DEGREES "Stopnie"
IDS_ANGLE_GRADIANS "Gradiany"
IDS_ANGLE_RADIANS "Radiany"
@@ -500,15 +502,15 @@ BEGIN
IDS_CURRENCY_CZECH_KORUNA "Czeska korona"
IDS_CURRENCY_DEUTSCHE_MARK "Niemiecka marka"
IDS_CURRENCY_DUTCH_GUILDER "Holenderki gulden"
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
IDS_CURRENCY_ESTONIAN_KROON "Estońska korona"
IDS_CURRENCY_EURO "Euro"
IDS_CURRENCY_FINNISH_MARKKA "Fińska marka"
IDS_CURRENCY_FRENCH_FRANC "Francuski frank"
IDS_CURRENCY_GREEK_DRACHMA "Grecka drachma"
IDS_CURRENCY_IRISH_POUND "Irlandzki funt"
IDS_CURRENCY_ITALIAN_LIRA "Włoskie liry"
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LATVIAN_LATS "Łotewski łat"
IDS_CURRENCY_LITHUANIAN_LITAS "Litewski lit"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luksemburski frank"
IDS_CURRENCY_MALTESE_LIRA "Maltańskie liry"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugalskie escudo"
@@ -521,7 +523,7 @@ END
STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "15 °C kalorie"
IDS_ENERGY_BTUS "British Thermal Unit"
IDS_ENERGY_BTUS "Jednostki BTU"
IDS_ENERGY_ERGS "Ergi"
IDS_ENERGY_EVS "Elektronowolty"
IDS_ENERGY_FOOT_POUNDS "Stopo-funty"
@@ -541,7 +543,7 @@ BEGIN
IDS_LENGTH_ASTRONOMICAL_UNITS "Jednostki Astronomiczne"
IDS_LENGTH_BARLEYCORNS "Palce"
IDS_LENGTH_CENTIMETERS "Centymetry"
IDS_LENGTH_CHAINS_UK "Chains (UK)"
IDS_LENGTH_CHAINS_UK "Łańcuchy (UK)"
IDS_LENGTH_CHI "Chi"
IDS_LENGTH_CHOU "Chou"
IDS_LENGTH_CHR "Chr"
@@ -549,7 +551,7 @@ BEGIN
IDS_LENGTH_FATHOMS "Sążnie"
IDS_LENGTH_FATHOMS_HUNGARY "Sążnie (Węgry)"
IDS_LENGTH_FEET "Stopy"
IDS_LENGTH_FURLONGS "Furlongs"
IDS_LENGTH_FURLONGS "Furlongi"
IDS_LENGTH_GAN "Gan"
IDS_LENGTH_HANDS "Dłonie"
IDS_LENGTH_HUNH "Hunh"
@@ -562,7 +564,7 @@ BEGIN
IDS_LENGTH_KILOMETERS "Kilometry"
IDS_LENGTH_LAR "Lar"
IDS_LENGTH_LIGHT_YEARS "Lata świetlne"
IDS_LENGTH_LINKS_UK "Links (UK)"
IDS_LENGTH_LINKS_UK "Linki (UK)"
IDS_LENGTH_METERS "Metry"
IDS_LENGTH_MICRONS "Mikrometry"
IDS_LENGTH_MILES "Mile"
@@ -571,13 +573,13 @@ BEGIN
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "Parseki"
IDS_LENGTH_PICAS "Picas"
IDS_LENGTH_RI_JAPAN "Ri (Japan)"
IDS_LENGTH_RI_JAPAN "Ri (Japonia)"
IDS_LENGTH_RI_KOREA "Ri (Korea)"
IDS_LENGTH_RODS "Rods"
IDS_LENGTH_RODS "Pręty"
IDS_LENGTH_SAWK "Sawk"
IDS_LENGTH_SEN "Sen"
IDS_LENGTH_SHAKU "Shaku"
IDS_LENGTH_SPAN "Span"
IDS_LENGTH_SPAN "Piędź"
IDS_LENGTH_SUN "Sun"
IDS_LENGTH_TSUEN "Tsuen"
IDS_LENGTH_VA "Va"
@@ -695,22 +697,22 @@ BEGIN
IDS_WEIGHT_GRAMS "Gramy"
IDS_WEIGHT_GWAN "Gwan"
IDS_WEIGHT_HARB "Harb"
IDS_WEIGHT_JIN_CHINA "Jin (China)"
IDS_WEIGHT_JIN_TAIWAN "Jin (Taiwan)"
IDS_WEIGHT_JIN_CHINA "Jin (Chiny)"
IDS_WEIGHT_JIN_TAIWAN "Jin (Tajwan)"
IDS_WEIGHT_KAN "Kan"
IDS_WEIGHT_KILOGRAMS "Kilogramy"
IDS_WEIGHT_KIN "Kin"
IDS_WEIGHT_LIANG_CHINA "Liang (China)"
IDS_WEIGHT_LIANG_TAIWAN "Liang (Taiwan)"
IDS_WEIGHT_LIANG_CHINA "Liang (Chiny)"
IDS_WEIGHT_LIANG_TAIWAN "Liang (Tajwan)"
IDS_WEIGHT_MONME "Monme"
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "Uncje, avoirdupois"
IDS_WEIGHT_OUNCES_TROY "Uncje, aptekarskie"
IDS_WEIGHT_POUNDS "Funty"
IDS_WEIGHT_QUINTAL_METRIC "Kwintale"
IDS_WEIGHT_SALOUNG "Saloung"
IDS_WEIGHT_STONES "Kamieni"
IDS_WEIGHT_STONES "Kamienie"
IDS_WEIGHT_TAMLUNG "Tamlung"
IDS_WEIGHT_TONNES "Ton"
IDS_WEIGHT_TONS_UK "Ton (UK)"
IDS_WEIGHT_TONS_US "Ton (US)"
IDS_WEIGHT_TONNES "Tony"
IDS_WEIGHT_TONS_UK "Tony (UK)"
IDS_WEIGHT_TONS_US "Tony (US)"
END

View File

@@ -431,6 +431,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Graus"
IDS_ANGLE_GRADIANS "Grados"
IDS_ANGLE_RADIANS "Radianos"

View File

@@ -1,6 +1,6 @@
/*
* Translators: Petru Dimitriu (petrimetri at gmail dot com)
* Ștefan Fulea (stefan dot fulea at mail dot md)
* Ștefan Fulea (stefan dot fulea at mail dot com)
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -434,6 +434,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Grade"
IDS_ANGLE_GRADIANS "Gradiani"
IDS_ANGLE_RADIANS "Radiani"

View File

@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "градус"
IDS_ANGLE_GRADIANS "град"
IDS_ANGLE_RADIANS "радиан"

View File

@@ -436,6 +436,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Stupne"
IDS_ANGLE_GRADIANS "Grady"
IDS_ANGLE_RADIANS "Radiány"

View File

@@ -433,6 +433,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Gradë"
IDS_ANGLE_GRADIANS "Gradian"
IDS_ANGLE_RADIANS "Radians"

View File

@@ -299,7 +299,7 @@ END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Statistik box"
CAPTION "Statistikbox"
FONT 8, "MS Shell Dlg"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
@@ -436,6 +436,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Grader"
IDS_ANGLE_GRADIANS "Gradianer"
IDS_ANGLE_RADIANS "Radianer"
@@ -445,37 +447,37 @@ END
STRINGTABLE
BEGIN
IDS_AREA_ACRES "Tunnland"
IDS_AREA_ACRES_BRAZIL "Tunnland (Brasil)"
IDS_AREA_ACRES_FRANCE "Tunnland (France)"
IDS_AREA_ACRES_SCOTS "Tunnland (Scots)"
IDS_AREA_ACRES_BRAZIL "Tunnland (Brasilien)"
IDS_AREA_ACRES_FRANCE "Tunnland (Frankrike)"
IDS_AREA_ACRES_SCOTS "Tunnland (Skottland)"
IDS_AREA_ACRES_US "Tunnland (US)"
IDS_AREA_ARES "Tunnland"
IDS_AREA_CHOU "Chou"
IDS_AREA_DANBO "Danbo"
IDS_AREA_HECTARES "Hektar"
IDS_AREA_JEONGBO "Jeongbo"
IDS_AREA_MORGEN_HUNGARY "Morgen (Hungary)"
IDS_AREA_MORGEN_HUNGARY "Morgen (Ungern)"
IDS_AREA_MU "Mu"
IDS_AREA_PING "Ping"
IDS_AREA_PYEONG "Pyeong"
IDS_AREA_PYEONGBANGJA "Pyeongbangja"
IDS_AREA_RAI "Rai"
IDS_AREA_SE "Se"
IDS_AREA_SQUARE_CENTIMETERS "Kvadrat centimeter"
IDS_AREA_SQUARE_CHR "Kvadrat chr"
IDS_AREA_SQUARE_FATHOMS "Kvadrat fathoms"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Kvadrat fathoms (Hungary)"
IDS_AREA_SQUARE_FEET "Kvadrat fot"
IDS_AREA_SQUARE_INCHES "Kvadrat tum"
IDS_AREA_SQUARE_KILOMETERS "Kvadrat kilometer"
IDS_AREA_SQUARE_CENTIMETERS "Kvadratcentimeter"
IDS_AREA_SQUARE_CHR "Kvadrat-chr"
IDS_AREA_SQUARE_FATHOMS "Kvadrat-fathoms"
IDS_AREA_SQUARE_FATHOMS_HUNGARY "Kvadrat-fathoms (Ungern)"
IDS_AREA_SQUARE_FEET "Kvadratfot"
IDS_AREA_SQUARE_INCHES "Kvadrattum"
IDS_AREA_SQUARE_KILOMETERS "Kvadratkilometer"
IDS_AREA_SQUARE_LAR "kvadrat lar"
IDS_AREA_SQUARE_METER "Kvadrat meter"
IDS_AREA_SQUARE_MILES "Kvadrat mil"
IDS_AREA_SQUARE_MILLIMETERS "Kvadrat millimeter"
IDS_AREA_SQUARE_SHAKU "Kvadrat shaku"
IDS_AREA_SQUARE_TSUEN "Kvadrat tsuen"
IDS_AREA_SQUARE_VA "Kvadrat va"
IDS_AREA_SQUARE_YARD "Kvadrat yard"
IDS_AREA_SQUARE_METER "Kvadratmeter"
IDS_AREA_SQUARE_MILES "Kvadratmil"
IDS_AREA_SQUARE_MILLIMETERS "Kvadratmillimeter"
IDS_AREA_SQUARE_SHAKU "Kvadrat-shaku"
IDS_AREA_SQUARE_TSUEN "Kvadrat-tsuen"
IDS_AREA_SQUARE_VA "Kvadrat-va"
IDS_AREA_SQUARE_YARD "Kvadratisk imperieyard"
IDS_AREA_TAN "Tan"
IDS_AREA_TSUBO "Tsubo"
END
@@ -492,37 +494,37 @@ END
/* Currencies */
STRINGTABLE
BEGIN
IDS_CURRENCY_AUSTRIAN_SCHILLING "Österriksk schilling"
IDS_CURRENCY_AUSTRIAN_SCHILLING "Österrikisk schilling"
IDS_CURRENCY_BELGIAN_FRANC "Belgisk franc"
IDS_CURRENCY_CYPRIOT_POUND "Cypriotisk pound"
IDS_CURRENCY_CYPRIOT_POUND "Cypriotisk pund"
IDS_CURRENCY_CZECH_KORUNA "Tjeckisk koruna"
IDS_CURRENCY_DEUTSCHE_MARK "Tysk Mark"
IDS_CURRENCY_DUTCH_GUILDER "Nederlänsk guilder"
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
IDS_CURRENCY_DEUTSCHE_MARK "Tysk mark"
IDS_CURRENCY_DUTCH_GUILDER "Nederlänsk gulden"
IDS_CURRENCY_ESTONIAN_KROON "Estländsk kroon"
IDS_CURRENCY_EURO "Euro"
IDS_CURRENCY_FINNISH_MARKKA "Finisk mark"
IDS_CURRENCY_FINNISH_MARKKA "Finsk mark"
IDS_CURRENCY_FRENCH_FRANC "Fransk franc"
IDS_CURRENCY_GREEK_DRACHMA "Gresk Drachma"
IDS_CURRENCY_IRISH_POUND "Irisk pound"
IDS_CURRENCY_ITALIAN_LIRA "Italiask lire"
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_GREEK_DRACHMA "Grekisk Drachma"
IDS_CURRENCY_IRISH_POUND "Irländskt pund"
IDS_CURRENCY_ITALIAN_LIRA "Italiensk lire"
IDS_CURRENCY_LATVIAN_LATS "Lettisk lats"
IDS_CURRENCY_LITHUANIAN_LITAS "Litauenisk litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Luxembourg franc"
IDS_CURRENCY_MALTESE_LIRA "Maltesisk lire"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portogisisk escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovansk koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovenansk tolar"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portugisisk escudo"
IDS_CURRENCY_SLOVAK_KORUNA "Slovakisk koruna"
IDS_CURRENCY_SLOVENIAN_TOLAR "Slovensk tolar"
IDS_CURRENCY_SPANISH_PESETA "Spansk peseta"
END
/* Energies */
STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "15 °C calories"
IDS_ENERGY_BTUS "Britisk värme-enhet"
IDS_ENERGY_15_C_CALORIES "15 °C kalorier"
IDS_ENERGY_BTUS "Brittisk värme-enhet"
IDS_ENERGY_ERGS "Ergs"
IDS_ENERGY_EVS "Electron-Volt"
IDS_ENERGY_FOOT_POUNDS "Fot-Pound"
IDS_ENERGY_EVS "Elektron-Volt"
IDS_ENERGY_FOOT_POUNDS "Fot-Pund"
IDS_ENERGY_IT_CALORIES "International Table calories"
IDS_ENERGY_IT_KILOCALORIES "International Table kilocalories"
IDS_ENERGY_JOULES "Joule"
@@ -536,7 +538,7 @@ END
STRINGTABLE
BEGIN
IDS_LENGTH_ANGSTROMS "Ångström"
IDS_LENGTH_ASTRONOMICAL_UNITS "Astronomical units"
IDS_LENGTH_ASTRONOMICAL_UNITS "Astronomiska enheter"
IDS_LENGTH_BARLEYCORNS "Barleycorns"
IDS_LENGTH_CENTIMETERS "Centimeter"
IDS_LENGTH_CHAINS_UK "Chains (UK)"
@@ -545,7 +547,7 @@ BEGIN
IDS_LENGTH_CHR "Chr"
IDS_LENGTH_CUN "Cun"
IDS_LENGTH_FATHOMS "Fathoms"
IDS_LENGTH_FATHOMS_HUNGARY "Fathoms (Ungarn)"
IDS_LENGTH_FATHOMS_HUNGARY "Fathoms (Ungern)"
IDS_LENGTH_FEET "Fot"
IDS_LENGTH_FURLONGS "Furlongs"
IDS_LENGTH_GAN "Gan"
@@ -559,13 +561,13 @@ BEGIN
IDS_LENGTH_KEUB "Keub"
IDS_LENGTH_KILOMETERS "Kilometer"
IDS_LENGTH_LAR "Lar"
IDS_LENGTH_LIGHT_YEARS "Ljus år"
IDS_LENGTH_LIGHT_YEARS "Ljusår"
IDS_LENGTH_LINKS_UK "Linker (UK)"
IDS_LENGTH_METERS "Meter"
IDS_LENGTH_MICRONS "Micron"
IDS_LENGTH_MILES "Mil"
IDS_LENGTH_MILLIMETERS "Millimeter"
IDS_LENGTH_NAUTICAL_MILES "Nautisk mil"
IDS_LENGTH_NAUTICAL_MILES "Nautiska mil"
IDS_LENGTH_NIEU "Nieu"
IDS_LENGTH_PARSECS "Parsecs"
IDS_LENGTH_PICAS "Picas"
@@ -587,9 +589,9 @@ END
/* Powers */
STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "Britisk värme-enhet per minut"
IDS_POWER_BTUS_PER_MINUTE "Brittisk värme-enhet per minut"
IDS_POWER_FPS_PER_MINUTE "Fot-pund per minut"
IDS_POWER_HORSEPOWER "Hästekrafter"
IDS_POWER_HORSEPOWER "Hästkrafter"
IDS_POWER_KILOWATTS "Kilowatt"
IDS_POWER_MEGAWATTS "Megawatt"
IDS_POWER_WATTS "Watt"
@@ -600,11 +602,11 @@ STRINGTABLE
BEGIN
IDS_PRESSURE_ATMOSPHERES "Atmosfär"
IDS_PRESSURE_BARS "Bar"
IDS_PRESSURE_HECTOPASCALS "Hectopascal"
IDS_PRESSURE_HECTOPASCALS "Hektopascal"
IDS_PRESSURE_KILOPASCALS "Kilopascal"
IDS_PRESSURE_MM_OF_MERCURY "Millimeters kvicksilver"
IDS_PRESSURE_MM_OF_MERCURY "Millimeter kvicksilver"
IDS_PRESSURE_PASCALS "Pascal"
IDS_PRESSURE_PSI "Pond per kvadrattum"
IDS_PRESSURE_PSI "Pund per kvadrattum"
END
/* Temperatures */
@@ -619,26 +621,26 @@ END
/* Time */
STRINGTABLE
BEGIN
IDS_TIME_DAYS "Days"
IDS_TIME_HOURS "Hours"
IDS_TIME_NANOSECONDS "Nanoseconds"
IDS_TIME_MICROSECONDS "Microseconds"
IDS_TIME_MILLISECONDS "Milliseconds"
IDS_TIME_MINUTES "Minutes"
IDS_TIME_SECONDS "Seconds"
IDS_TIME_WEEKS "Weeks"
IDS_TIME_YEARS "Years"
IDS_TIME_DAYS "Dagar"
IDS_TIME_HOURS "Timmar"
IDS_TIME_NANOSECONDS "Nanosekunder"
IDS_TIME_MICROSECONDS "Microsekunder"
IDS_TIME_MILLISECONDS "Millisekunder"
IDS_TIME_MINUTES "Minuter"
IDS_TIME_SECONDS "Sekunder"
IDS_TIME_WEEKS "Veckor"
IDS_TIME_YEARS "År"
END
/* Velocities */
STRINGTABLE
BEGIN
IDS_VELOCITY_CMS_SECOND "Centimeter/time"
IDS_VELOCITY_CMS_SECOND "Centimeter/timme"
IDS_VELOCITY_FEET_HOUR "Fot/timme"
IDS_VELOCITY_FEET_SECOND "Fot/sekund"
IDS_VELOCITY_KILOMETERS_HOUR "Kilometer/timme"
IDS_VELOCITY_KNOTS "Knop"
IDS_VELOCITY_MACH "Mach"
IDS_VELOCITY_MACH "Machtal"
IDS_VELOCITY_METERS_SECOND "Meter/sekund"
IDS_VELOCITY_MILES_HOUR "Mil/timme"
END
@@ -646,8 +648,8 @@ END
/* Volumes */
STRINGTABLE
BEGIN
IDS_VOLUME_BARRELS_UK "Barrels (UK)"
IDS_VOLUME_BARRELS_OIL "Barrels oil"
IDS_VOLUME_BARRELS_UK "Fat (UK)"
IDS_VOLUME_BARRELS_OIL "Fat (olja)"
IDS_VOLUME_BUN "Bun"
IDS_VOLUME_BUSHELS_UK "Bushels (UK)"
IDS_VOLUME_BUSHELS_US "Bushels (US)"
@@ -655,7 +657,7 @@ BEGIN
IDS_VOLUME_CUBIC_FEET "Kubikfot"
IDS_VOLUME_CUBIC_INCHES "Kubiktumm"
IDS_VOLUME_CUBIC_METERS "Kubikmeter"
IDS_VOLUME_CUBIC_YARDS "Kubikyards"
IDS_VOLUME_CUBIC_YARDS "Kubikyard"
IDS_VOLUME_DOE "Doe"
IDS_VOLUME_FLUID_OUNCES_UK "Fluid ounces (UK)"
IDS_VOLUME_FLUID_OUNCES_US "Fluid ounces (US)"
@@ -686,7 +688,7 @@ END
STRINGTABLE
BEGIN
IDS_WEIGHT_BAHT "Baht"
IDS_WEIGHT_CARATS "Carats"
IDS_WEIGHT_CARATS "Karat"
IDS_WEIGHT_CHUNG "Chung"
IDS_WEIGHT_DON "Don"
IDS_WEIGHT_GEUN "Geun"
@@ -694,17 +696,17 @@ BEGIN
IDS_WEIGHT_GWAN "Gwan"
IDS_WEIGHT_HARB "Harb"
IDS_WEIGHT_JIN_CHINA "Jin (Kina)"
IDS_WEIGHT_JIN_TAIWAN "Jin (Taiwaner)"
IDS_WEIGHT_JIN_TAIWAN "Jin (Taiwan)"
IDS_WEIGHT_KAN "Kan"
IDS_WEIGHT_KILOGRAMS "Kilogram"
IDS_WEIGHT_KIN "Kin"
IDS_WEIGHT_LIANG_CHINA "Liang (Kina)"
IDS_WEIGHT_LIANG_TAIWAN "Liang (Taiwaner)"
IDS_WEIGHT_LIANG_TAIWAN "Liang (Taiwan)"
IDS_WEIGHT_MONME "Monme"
IDS_WEIGHT_OUNCES_AVOIRDUPOIS "Ounces, avoirdupois"
IDS_WEIGHT_OUNCES_TROY "Ounces, troy"
IDS_WEIGHT_POUNDS "Pund"
IDS_WEIGHT_QUINTAL_METRIC "Quintal (metric)"
IDS_WEIGHT_QUINTAL_METRIC "Quintal (metrisk)"
IDS_WEIGHT_SALOUNG "Saloung"
IDS_WEIGHT_STONES "Sten"
IDS_WEIGHT_TAMLUNG "Tamlung"

View File

@@ -429,6 +429,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "องศา"
IDS_ANGLE_GRADIANS "เกรเดียน"
IDS_ANGLE_RADIANS "เรเดียน"

View File

@@ -1,4 +1,4 @@
/* TRANSLATOR: 2013, 2014, 2016 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
/* TRANSLATOR: 2013-2014, 2016, 2019 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@@ -6,7 +6,7 @@ LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Hesap Makinesi"
CAPTION "ReactOS Hesap Makinesi"
MENU IDR_MENU_SCIENTIFIC_1
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -20,13 +20,13 @@ BEGIN
CONTROL "Aşırı", IDC_CHECK_HYP, "Button", BS_AUTOCHECKBOX | WS_TABSTOP, 49, 41, 29, 10
CTEXT "", IDC_TEXT_PARENT, 93, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
CTEXT "", IDC_TEXT_MEMORY, 126, 38, 18, 16, SS_CENTERIMAGE, WS_EX_CLIENTEDGE
PUSHBUTTON "Say", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "İst", IDC_BUTTON_STA, 5, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ort", IDC_BUTTON_AVE, 5, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Top", IDC_BUTTON_SUM, 5, 100, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "ÖS", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "s", IDC_BUTTON_S, 5, 120, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Ekle", IDC_BUTTON_DAT, 5, 140, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | WS_DISABLED | BS_OWNERDRAW | WS_TABSTOP
@@ -112,7 +112,7 @@ BEGIN
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Mod", IDC_BUTTON_MOD, 260, 60, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Veyâ", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
PUSHBUTTON "Veya", IDC_BUTTON_OR, 260, 80, 24, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
PUSHBUTTON "Sola", IDC_BUTTON_LSH, 260, 100, 24, 18, BS_CENTER |
BS_VCENTER | BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -137,7 +137,7 @@ BEGIN
NOT WS_VISIBLE, 190, 21, 38, 10
CONTROL "Sözcük", IDC_RADIO_WORD, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 230, 21, 38, 10
CONTROL "Çoklu", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
CONTROL "Bayt", IDC_RADIO_BYTE, "Button", BS_AUTORADIOBUTTON |
NOT WS_VISIBLE, 270, 21, 38, 10
CONTROL "Derece", IDC_RADIO_DEG, "Button", BS_AUTORADIOBUTTON, 150, 21, 45, 10
CONTROL "Radyan", IDC_RADIO_RAD, "Button", BS_AUTORADIOBUTTON, 204, 21, 45, 10
@@ -154,7 +154,7 @@ END
IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Hesap Makinesi"
CAPTION "ReactOS Hesap Makinesi"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg", 0, 0, 0x1
BEGIN
@@ -219,14 +219,14 @@ END
IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Hesap Makinesi"
CAPTION "ReactOS Hesap Makinesi"
MENU IDR_MENU_STANDARD
FONT 8, "MS Shell Dlg"
BEGIN
PUSHBUTTON "Dönüştür:", IDC_BUTTON_CONVERT, 35, 105, 76, 17
PUSHBUTTON "Dönüştür", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Ulam:", IDC_STATIC, 5, 20, 56, 8
LTEXT "Kategori:", IDC_STATIC, 5, 20, 56, 8
COMBOBOX IDC_COMBO_FROM, 5, 60, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
WS_TABSTOP | CBS_SORT
LTEXT "Şundan Dönüştür:", IDC_STATIC, 5, 49, 56, 8
@@ -294,7 +294,7 @@ END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "Sayımlama Penceresi"
CAPTION "İstatistik Kutusu"
FONT 8, "MS Shell Dlg"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
@@ -311,31 +311,31 @@ IDR_MENU_SCIENTIFIC_1 MENU
BEGIN
POPUP "&Düzen"
BEGIN
MENUITEM "&Çoğalt\tDenetim+C", IDM_EDIT_COPY
MENUITEM "&Yapıştır\tDenetim+V", IDM_EDIT_PASTE
MENUITEM "&Kopyala\tCtrl+C", IDM_EDIT_COPY
MENUITEM "&Yapıştır\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "&Görünüm"
BEGIN
MENUITEM "&Ölçünlü", IDM_VIEW_STANDARD
MENUITEM "&Bilimlik", IDM_VIEW_SCIENTIFIC
MENUITEM "&Standart", IDM_VIEW_STANDARD
MENUITEM "&Bilimsel", IDM_VIEW_SCIENTIFIC
MENUITEM "&Dönüştürme", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "&Onaltılık\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "O&nluk\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "&Sekizlik\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "S&ekizlik\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "&İkilik\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "D&erece\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "&Radyan\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "De&rece\tF2", IDM_VIEW_DEG, CHECKED
MENUITEM "R&adyan\tF3", IDM_VIEW_RAD, CHECKED
MENUITEM "&Gradyan\tF4", IDM_VIEW_GRAD, CHECKED
MENUITEM SEPARATOR
MENUITEM "B&asamakları Takımla", IDM_VIEW_GROUP, CHECKED
MENUITEM "Basa&makları Grupla", IDM_VIEW_GROUP, CHECKED
END
POPUP "&Yardım"
BEGIN
MENUITEM "&Yardım Konuları", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&ReactOS Hesap Makinesi Üzerine...", IDM_HELP_ABOUT
MENUITEM "&ReactOS Hesap Makinesi Hakkında", IDM_HELP_ABOUT
END
END
@@ -343,32 +343,32 @@ IDR_MENU_SCIENTIFIC_2 MENU
BEGIN
POPUP "&Düzen"
BEGIN
MENUITEM "&Çoğalt\tDenetim+C", IDM_EDIT_COPY
MENUITEM "&Yapıştır\tDenetim+V", IDM_EDIT_PASTE
MENUITEM "&Kopyala\tCtrl+C", IDM_EDIT_COPY
MENUITEM "&Yapıştır\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "&Görünüm"
BEGIN
MENUITEM "&Ölçünlü", IDM_VIEW_STANDARD
MENUITEM "&Bilimlik", IDM_VIEW_SCIENTIFIC
MENUITEM "&Standart", IDM_VIEW_STANDARD
MENUITEM "&Bilimsel", IDM_VIEW_SCIENTIFIC
MENUITEM "&Dönüştürme", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "&Onaltılık\tF5", IDM_VIEW_HEX, CHECKED
MENUITEM "O&nluk\tF6", IDM_VIEW_DEC, CHECKED
MENUITEM "&Sekizlik\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "S&ekizlik\tF7", IDM_VIEW_OCT, CHECKED
MENUITEM "&İkilik\tF8", IDM_VIEW_BIN, CHECKED
MENUITEM SEPARATOR
MENUITEM "Dö&rtlü Sözcük\tF12", IDM_VIEW_QWORD, CHECKED
MENUITEM "İ&kili Sözcük\tF2", IDM_VIEW_DWORD, CHECKED
MENUITEM "Sö&zcük\tF3", IDM_VIEW_WORD, CHECKED
MENUITEM "&Çoklu\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM "Çok&lu\tF4", IDM_VIEW_BYTE, CHECKED
MENUITEM SEPARATOR
MENUITEM "B&asamakları Takımla", IDM_VIEW_GROUP, CHECKED
MENUITEM "B&asamakları Grupla", IDM_VIEW_GROUP, CHECKED
END
POPUP "&Yardım"
BEGIN
MENUITEM "&Yardım Konuları", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&ReactOS Hesap Makinesi Üzerine...", IDM_HELP_ABOUT
MENUITEM "&ReactOS Hesap Makinesi Hakkında", IDM_HELP_ABOUT
END
END
@@ -376,22 +376,22 @@ IDR_MENU_STANDARD MENU
BEGIN
POPUP "&Düzen"
BEGIN
MENUITEM "&Çoğalt\tDenetim+C", IDM_EDIT_COPY
MENUITEM "&Yapıştır\tDenetim+V", IDM_EDIT_PASTE
MENUITEM "&Kopyala\tCtrl+C", IDM_EDIT_COPY
MENUITEM "&Yapıştır\tCtrl+V", IDM_EDIT_PASTE
END
POPUP "&Görünüm"
BEGIN
MENUITEM "&Ölçünlü", IDM_VIEW_STANDARD
MENUITEM "&Bilimlik", IDM_VIEW_SCIENTIFIC
MENUITEM "&Standart", IDM_VIEW_STANDARD
MENUITEM "&Bilimsel", IDM_VIEW_SCIENTIFIC
MENUITEM "&Dönüştürme", IDM_VIEW_CONVERSION
MENUITEM SEPARATOR
MENUITEM "B&asamakları Takımla", IDM_VIEW_GROUP, CHECKED
MENUITEM "B&asamakları Grupla", IDM_VIEW_GROUP, CHECKED
END
POPUP "&Yardım"
BEGIN
MENUITEM "&Yardım Konuları", IDM_HELP_HELP
MENUITEM SEPARATOR
MENUITEM "&ReactOS Hesap Makinesi Üzerine...", IDM_HELP_ABOUT
MENUITEM "&ReactOS Hesap Makinesi Hakkında", IDM_HELP_ABOUT
END
END
@@ -399,7 +399,7 @@ END
STRINGTABLE
BEGIN
IDS_MATH_ERROR "Yanlışlık"
IDS_MATH_ERROR "Hata"
IDS_QUICKHELP "Hızlı Yardım"
END
@@ -407,7 +407,7 @@ END
STRINGTABLE
BEGIN
IDS_CALC_NAME "Hesap Makinesi"
IDS_AUTHOR "Carlo Bramini eliyle yapılmıştır."
IDS_AUTHOR "Carlo Bramini tarafından yazılmıştır."
END
/* Types of conversion */
@@ -415,22 +415,24 @@ STRINGTABLE
BEGIN
IDS_CONV_ANGLE "Açı"
IDS_CONV_AREA "Alan"
IDS_CONV_CONSUMPTION "Makine Tüketimi"
IDS_CONV_CURRENCY "Nakit Birimi"
IDS_CONV_ENERGY "Erke"
IDS_CONV_CONSUMPTION "Tüketim (motor)"
IDS_CONV_CURRENCY "Para Birimleri"
IDS_CONV_ENERGY "Enerji"
IDS_CONV_LENGTH "Uzunluk"
IDS_CONV_POWER "Güç"
IDS_CONV_PRESSURE "Basınç"
IDS_CONV_TEMPERATURE "Sıcaklık"
IDS_CONV_TIME "Zaman"
IDS_CONV_VELOCITY "Hız"
IDS_CONV_VOLUME "Oylum"
IDS_CONV_VOLUME "Hacim"
IDS_CONV_WEIGHT "Ağırlık"
END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Yay Dakikası"
IDS_ANGLE_ARCSECONDS "Yay Saniyesi"
IDS_ANGLE_DEGREES "Derece"
IDS_ANGLE_GRADIANS "Gradyan"
IDS_ANGLE_RADIANS "Radyan"
@@ -493,15 +495,15 @@ BEGIN
IDS_CURRENCY_CZECH_KORUNA "Çek Korunası"
IDS_CURRENCY_DEUTSCHE_MARK "Alman Markı"
IDS_CURRENCY_DUTCH_GUILDER "Hollanda Guilderi"
IDS_CURRENCY_ESTONIAN_KROON "Estonian kroon"
IDS_CURRENCY_ESTONIAN_KROON "Estonya Kronu"
IDS_CURRENCY_EURO "Avro"
IDS_CURRENCY_FINNISH_MARKKA "Fin Markkası"
IDS_CURRENCY_FRENCH_FRANC "Fransız Frangı"
IDS_CURRENCY_GREEK_DRACHMA "Yunan Drahmisi"
IDS_CURRENCY_IRISH_POUND "İrlanda Pondu"
IDS_CURRENCY_ITALIAN_LIRA "İtalyan Lirası"
IDS_CURRENCY_LATVIAN_LATS "Latvian lats"
IDS_CURRENCY_LITHUANIAN_LITAS "Lithuanian litas"
IDS_CURRENCY_LATVIAN_LATS "Letonya Latı"
IDS_CURRENCY_LITHUANIAN_LITAS "Litvanya litas"
IDS_CURRENCY_LUXEMBOURG_FRANC "Lüksemburg Frangı"
IDS_CURRENCY_MALTESE_LIRA "Malta Lirası"
IDS_CURRENCY_PORTOGUESE_ESCUDO "Portekiz Esküdosu"
@@ -513,7 +515,7 @@ END
/* Energies */
STRINGTABLE
BEGIN
IDS_ENERGY_15_C_CALORIES "Kalori (15°C'luk)"
IDS_ENERGY_15_C_CALORIES "15°C'luk Kalori"
IDS_ENERGY_BTUS "İngiliz Isı Birimi"
IDS_ENERGY_ERGS "Erg"
IDS_ENERGY_EVS "Elektronvolt"
@@ -524,7 +526,7 @@ BEGIN
IDS_ENERGY_KILOJOULES "Kilojul"
IDS_ENERGY_KILOWATT_HOURS "Kilovat-saat"
IDS_ENERGY_NUTRITION_CALORIES "Besin kalorisi"
IDS_ENERGY_TH_CALORIES "Termokimyevî kalori"
IDS_ENERGY_TH_CALORIES "Termokimyasal kalori"
END
/* Lengths */
@@ -532,7 +534,7 @@ STRINGTABLE
BEGIN
IDS_LENGTH_ANGSTROMS "Angström"
IDS_LENGTH_ASTRONOMICAL_UNITS "Astronomi birimi"
IDS_LENGTH_BARLEYCORNS "Arpa tânesi"
IDS_LENGTH_BARLEYCORNS "Arpa tanesi"
IDS_LENGTH_CENTIMETERS "Santimetre"
IDS_LENGTH_CHAINS_UK "Zincir (BK)"
IDS_LENGTH_CHI "Çi"
@@ -559,7 +561,7 @@ BEGIN
IDS_LENGTH_METERS "Metre"
IDS_LENGTH_MICRONS "Mikron"
IDS_LENGTH_MILES "Mil"
IDS_LENGTH_MILLIMETERS "Millimetre"
IDS_LENGTH_MILLIMETERS "Milimetre"
IDS_LENGTH_NAUTICAL_MILES "Deniz mili"
IDS_LENGTH_NIEU "Niu"
IDS_LENGTH_PARSECS "Parsek"
@@ -582,8 +584,8 @@ END
/* Powers */
STRINGTABLE
BEGIN
IDS_POWER_BTUS_PER_MINUTE "Dakîkadaki İngiliz Isı Birimi"
IDS_POWER_FPS_PER_MINUTE "Dakîkadaki ayak pond kuvveti"
IDS_POWER_BTUS_PER_MINUTE "Dakikadaki İngiliz Isı Birimi"
IDS_POWER_FPS_PER_MINUTE "Dakikadaki ayak pond kuvveti"
IDS_POWER_HORSEPOWER "At gücü"
IDS_POWER_KILOWATTS "Kilovat"
IDS_POWER_MEGAWATTS "Megavat"
@@ -593,7 +595,7 @@ END
/* Pressures */
STRINGTABLE
BEGIN
IDS_PRESSURE_ATMOSPHERES "Hava yuvarı"
IDS_PRESSURE_ATMOSPHERES "Atmosfer"
IDS_PRESSURE_BARS "Bar"
IDS_PRESSURE_HECTOPASCALS "Hektopaskal"
IDS_PRESSURE_KILOPASCALS "Kilopaskal"
@@ -616,11 +618,11 @@ STRINGTABLE
BEGIN
IDS_TIME_DAYS "Gün"
IDS_TIME_HOURS "Saat"
IDS_TIME_NANOSECONDS "Nanosâniye"
IDS_TIME_MICROSECONDS "Mikrosâniye"
IDS_TIME_MILLISECONDS "Milisâniye"
IDS_TIME_MINUTES "Dakîka"
IDS_TIME_SECONDS "Sâniye"
IDS_TIME_NANOSECONDS "Nanosaniye"
IDS_TIME_MICROSECONDS "Mikrosaniye"
IDS_TIME_MILLISECONDS "Milisaniye"
IDS_TIME_MINUTES "Dakika"
IDS_TIME_SECONDS "Saniye"
IDS_TIME_WEEKS "Hafta"
IDS_TIME_YEARS "Yıl"
END
@@ -630,7 +632,7 @@ STRINGTABLE
BEGIN
IDS_VELOCITY_CMS_SECOND "Santimetre/Saat"
IDS_VELOCITY_FEET_HOUR "Ayak/Saat"
IDS_VELOCITY_FEET_SECOND "Ayak/Sâniye"
IDS_VELOCITY_FEET_SECOND "Ayak/Saniye"
IDS_VELOCITY_KILOMETERS_HOUR "Kilometre/Saat"
IDS_VELOCITY_KNOTS "Deniz mili"
IDS_VELOCITY_MACH "Maç"

View File

@@ -437,6 +437,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "Градус"
IDS_ANGLE_GRADIANS "Град"
IDS_ANGLE_RADIANS "Радіан"

View File

@@ -8,7 +8,7 @@ IDD_DIALOG_SCIENTIFIC DIALOGEX 0, 0, 316, 163
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 计算器"
MENU IDR_MENU_SCIENTIFIC_1
FONT 9, "MS Shell Dlg", 0, 0, 0x1
FONT 9, "宋体", 0, 0, 0x1
BEGIN
GROUPBOX "", IDC_STATIC, 5 ,14, 141, 20
CONTROL "Hex", IDC_RADIO_HEX, "Button", BS_AUTORADIOBUTTON, 8, 21, 30, 10
@@ -156,7 +156,7 @@ IDD_DIALOG_STANDARD DIALOGEX 0, 0, 169, 128
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 计算器"
MENU IDR_MENU_STANDARD
FONT 9, "MS Shell Dlg", 0, 0, 0x1
FONT 9, "宋体", 0, 0, 0x1
BEGIN
PUSHBUTTON "C", IDC_BUTTON_CANC, 123, 23, 41, 18, BS_CENTER | BS_VCENTER |
BS_NOTIFY | BS_OWNERDRAW | WS_TABSTOP
@@ -221,7 +221,7 @@ IDD_DIALOG_CONVERSION DIALOGEX 0, 0, 320, 130
STYLE DS_SHELLFONT | WS_MINIMIZEBOX | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "ReactOS 计算器"
MENU IDR_MENU_STANDARD
FONT 9, "MS Shell Dlg"
FONT 9, "宋体"
BEGIN
PUSHBUTTON "转换", IDC_BUTTON_CONVERT, 35, 105, 76, 17
COMBOBOX IDC_COMBO_CATEGORY, 5, 31, 140, 168, CBS_DROPDOWNLIST | WS_VSCROLL |
@@ -295,7 +295,7 @@ END
IDD_DIALOG_STAT DIALOGEX 0, 0, 163, 85
STYLE DS_SHELLFONT | WS_POPUP | WS_VISIBLE | WS_CAPTION | WS_SYSMENU
CAPTION "统计框"
FONT 9, "MS Shell Dlg"
FONT 9, "宋体"
BEGIN
LISTBOX IDC_LIST_STAT, 4, 4, 156, 40, LBS_NOINTEGRALHEIGHT | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "返回", IDC_BUTTON_RET, 4, 48, 36, 16
@@ -431,6 +431,8 @@ END
/* Angles */
STRINGTABLE
BEGIN
IDS_ANGLE_ARCMINUTES "Minute of arc"
IDS_ANGLE_ARCSECONDS "Second of arc"
IDS_ANGLE_DEGREES "角度"
IDS_ANGLE_GRADIANS "梯度"
IDS_ANGLE_RADIANS "弧度"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.5 KiB

View File

@@ -1,126 +1,136 @@
#pragma once
#define IDS_CALC_NAME 1
#define IDS_MATH_ERROR 2
#define IDS_QUICKHELP 3
#define IDS_AUTHOR 4
#define IDD_DIALOG_SCIENTIFIC 101
#define IDD_DIALOG_STANDARD 102
#define IDD_DIALOG_STAT 104
#define IDD_DIALOG_CONVERSION 105
#define IDR_MENU_SCIENTIFIC_1 106
#define IDR_MENU_SCIENTIFIC_2 107
#define IDR_MENU_STANDARD 108
#define IDI_CALC_BIG 110
#define IDI_CALC_SMALL 111
#define IDC_RADIO_HEX 1002
#define IDC_RADIO_DEC 1003
#define IDC_RADIO_OCT 1004
#define IDC_RADIO_BIN 1005
#define IDC_CHECK_INV 1006
#define IDC_CHECK_HYP 1007
#define IDC_BUTTON_STA 1009
#define IDC_BUTTON_AVE 1010
#define IDC_BUTTON_SUM 1011
#define IDC_BUTTON_S 1012
#define IDC_BUTTON_DAT 1013
#define IDC_BUTTON_FE 1014
#define IDC_BUTTON_DMS 1015
#define IDC_BUTTON_SIN 1016
#define IDC_BUTTON_COS 1017
#define IDC_BUTTON_TAN 1018
#define IDC_BUTTON_LEFTPAR 1019
#define IDC_BUTTON_EXP 1020
#define IDC_BUTTON_XeY 1021
#define IDC_BUTTON_Xe2 1022
#define IDC_BUTTON_Xe3 1023
#define IDC_BUTTON_RIGHTPAR 1024
#define IDC_BUTTON_LN 1025
#define IDC_BUTTON_LOG 1026
#define IDC_BUTTON_NF 1027
#define IDC_BUTTON_RX 1028
#define IDC_BUTTON_MC 1029
#define IDC_BUTTON_MR 1030
#define IDC_BUTTON_MS 1031
#define IDC_BUTTON_MP 1032
#define IDC_BUTTON_PI 1033
#define IDC_BUTTON_7 1034
#define IDC_BUTTON_4 1035
#define IDC_BUTTON_1 1036
#define IDC_BUTTON_0 1037
#define IDC_BUTTON_A 1038
#define IDC_BUTTON_8 1039
#define IDC_BUTTON_5 1040
#define IDC_BUTTON_2 1041
#define IDC_BUTTON_SIGN 1042
#define IDC_BUTTON_B 1043
#define IDC_BUTTON_9 1044
#define IDC_BUTTON_6 1045
#define IDC_BUTTON_3 1046
#define IDC_BUTTON_DOT 1047
#define IDC_BUTTON_C 1048
#define IDC_BUTTON_DIV 1049
#define IDC_BUTTON_MULT 1050
#define IDC_BUTTON_SUB 1051
#define IDC_BUTTON_ADD 1052
#define IDC_BUTTON_D 1053
#define IDC_BUTTON_MOD 1054
#define IDC_BUTTON_OR 1055
#define IDC_BUTTON_LSH 1056
#define IDC_BUTTON_EQU 1057
#define IDC_BUTTON_E 1058
#define IDC_BUTTON_AND 1059
#define IDC_BUTTON_XOR 1060
#define IDC_BUTTON_NOT 1061
#define IDC_BUTTON_INT 1062
#define IDC_BUTTON_F 1063
#define IDC_RADIO_QWORD 1064
#define IDC_RADIO_DWORD 1065
#define IDC_RADIO_WORD 1066
#define IDC_RADIO_BYTE 1067
#define IDC_RADIO_DEG 1068
#define IDC_RADIO_RAD 1069
#define IDC_RADIO_GRAD 1070
#define IDC_BUTTON_CANC 1071
#define IDC_BUTTON_CE 1072
#define IDC_BUTTON_BACK 1073
#define IDC_TEXT_OUTPUT 1074
#define IDC_TEXT_PARENT 1075
#define IDC_TEXT_MEMORY 1076
#define IDC_LIST_STAT 1079
#define IDC_BUTTON_RET 1080
#define IDC_BUTTON_LOAD 1081
#define IDC_BUTTON_CD 1082
#define IDC_BUTTON_CAD 1083
#define IDC_TEXT_NITEMS 1084
#define IDC_BUTTON_SQRT 1085
#define IDC_BUTTON_PERCENT 1086
#define IDC_BUTTON_CONVERT 1087
#define IDC_BUTTON_FOCUS 1089
#define IDC_COMBO_CATEGORY 1090
#define IDC_COMBO_FROM 1091
#define IDC_COMBO_TO 1092
#define IDC_BUTTON_RSH 1093
#ifndef IDC_STATIC
#define IDC_STATIC -1
#endif
#define IDS_CALC_NAME 1
#define IDS_MATH_ERROR 2
#define IDS_QUICKHELP 3
#define IDS_AUTHOR 4
#define IDD_DIALOG_SCIENTIFIC 101
#define IDD_DIALOG_STANDARD 102
// #define IDD_DIALOG_ABOUT 103
#define IDD_DIALOG_STAT 104
#define IDD_DIALOG_CONVERSION 105
#define IDR_MENU_SCIENTIFIC_1 106
#define IDR_MENU_SCIENTIFIC_2 107
#define IDR_MENU_STANDARD 108
// #define IDB_BITMAP_ROS 109
#define IDI_CALC 110
#define IDC_RADIO_HEX 1002
#define IDC_RADIO_DEC 1003
#define IDC_RADIO_OCT 1004
#define IDC_RADIO_BIN 1005
#define IDC_CHECK_INV 1006
#define IDC_CHECK_HYP 1007
#define IDC_BUTTON_STA 1009
#define IDC_BUTTON_AVE 1010
#define IDC_BUTTON_SUM 1011
#define IDC_BUTTON_S 1012
#define IDC_BUTTON_DAT 1013
#define IDC_BUTTON_FE 1014
#define IDC_BUTTON_DMS 1015
#define IDC_BUTTON_SIN 1016
#define IDC_BUTTON_COS 1017
#define IDC_BUTTON_TAN 1018
#define IDC_BUTTON_LEFTPAR 1019
#define IDC_BUTTON_EXP 1020
#define IDC_BUTTON_XeY 1021
#define IDC_BUTTON_Xe2 1022
#define IDC_BUTTON_Xe3 1023
#define IDC_BUTTON_RIGHTPAR 1024
#define IDC_BUTTON_LN 1025
#define IDC_BUTTON_LOG 1026
#define IDC_BUTTON_NF 1027
#define IDC_BUTTON_RX 1028
#define IDC_BUTTON_MC 1029
#define IDC_BUTTON_MR 1030
#define IDC_BUTTON_MS 1031
#define IDC_BUTTON_MP 1032
#define IDC_BUTTON_PI 1033
#define IDC_BUTTON_7 1034
#define IDC_BUTTON_4 1035
#define IDC_BUTTON_1 1036
#define IDC_BUTTON_0 1037
#define IDC_BUTTON_A 1038
#define IDC_BUTTON_8 1039
#define IDC_BUTTON_5 1040
#define IDC_BUTTON_2 1041
#define IDC_BUTTON_SIGN 1042
#define IDC_BUTTON_B 1043
#define IDC_BUTTON_9 1044
#define IDC_BUTTON_6 1045
#define IDC_BUTTON_3 1046
#define IDC_BUTTON_DOT 1047
#define IDC_BUTTON_C 1048
#define IDC_BUTTON_DIV 1049
#define IDC_BUTTON_MULT 1050
#define IDC_BUTTON_SUB 1051
#define IDC_BUTTON_ADD 1052
#define IDC_BUTTON_D 1053
#define IDC_BUTTON_MOD 1054
#define IDC_BUTTON_OR 1055
#define IDC_BUTTON_LSH 1056
#define IDC_BUTTON_EQU 1057
#define IDC_BUTTON_E 1058
#define IDC_BUTTON_AND 1059
#define IDC_BUTTON_XOR 1060
#define IDC_BUTTON_NOT 1061
#define IDC_BUTTON_INT 1062
#define IDC_BUTTON_F 1063
#define IDC_RADIO_QWORD 1064
#define IDC_RADIO_DWORD 1065
#define IDC_RADIO_WORD 1066
#define IDC_RADIO_BYTE 1067
#define IDC_RADIO_DEG 1068
#define IDC_RADIO_RAD 1069
#define IDC_RADIO_GRAD 1070
#define IDC_BUTTON_CANC 1071
#define IDC_BUTTON_CE 1072
#define IDC_BUTTON_BACK 1073
#define IDC_TEXT_OUTPUT 1074
#define IDC_TEXT_PARENT 1075
#define IDC_TEXT_MEMORY 1076
// #define IDC_EDIT_LICENSE 1078
#define IDC_LIST_STAT 1079
#define IDC_BUTTON_RET 1080
#define IDC_BUTTON_LOAD 1081
#define IDC_BUTTON_CD 1082
#define IDC_BUTTON_CAD 1083
#define IDC_TEXT_NITEMS 1084
#define IDC_BUTTON_SQRT 1085
#define IDC_BUTTON_PERCENT 1086
#define IDC_BUTTON_CONVERT 1087
// #define IDC_TEXT_VERSION 1088
#define IDC_BUTTON_FOCUS 1089
#define IDC_COMBO_CATEGORY 1090
#define IDC_COMBO_FROM 1091
#define IDC_COMBO_TO 1092
#define IDC_BUTTON_RSH 1093
#define IDC_BUTTON_XrY 1094
/* TYPES OF CONVERSIONS */
#define IDS_CONV_ANGLE 2000
#define IDS_CONV_AREA 2001
#define IDS_CONV_CONSUMPTION 2002
#define IDS_CONV_CURRENCY 2003
#define IDS_CONV_ENERGY 2004
#define IDS_CONV_LENGTH 2005
#define IDS_CONV_POWER 2006
#define IDS_CONV_PRESSURE 2007
#define IDS_CONV_TEMPERATURE 2008
#define IDS_CONV_TIME 2009
#define IDS_CONV_VELOCITY 2010
#define IDS_CONV_VOLUME 2011
#define IDS_CONV_WEIGHT 2012
#define IDS_CONV_ANGLE 2000
#define IDS_CONV_AREA 2001
#define IDS_CONV_CONSUMPTION 2002
#define IDS_CONV_CURRENCY 2003
#define IDS_CONV_ENERGY 2004
#define IDS_CONV_LENGTH 2005
#define IDS_CONV_POWER 2006
#define IDS_CONV_PRESSURE 2007
#define IDS_CONV_TEMPERATURE 2008
#define IDS_CONV_TIME 2009
#define IDS_CONV_VELOCITY 2010
#define IDS_CONV_VOLUME 2011
#define IDS_CONV_WEIGHT 2012
/* TYPES OF ANGLES */
#define IDS_ANGLE_DEGREES 2100
#define IDS_ANGLE_GRADIANS 2101
#define IDS_ANGLE_RADIANS 2102
#define IDS_ANGLE_ARCMINUTES 2100
#define IDS_ANGLE_ARCSECONDS 2101
#define IDS_ANGLE_DEGREES 2102
#define IDS_ANGLE_GRADIANS 2103
#define IDS_ANGLE_RADIANS 2104
/* TYPES OF AREAS */
#define IDS_AREA_ACRES 2200
@@ -188,193 +198,193 @@
#define IDS_CURRENCY_SPANISH_PESETA 2420
/* TYPES OF ENERGIES */
#define IDS_ENERGY_15_C_CALORIES 2500
#define IDS_ENERGY_BTUS 2501
#define IDS_ENERGY_ERGS 2502
#define IDS_ENERGY_EVS 2503
#define IDS_ENERGY_FOOT_POUNDS 2504
#define IDS_ENERGY_IT_CALORIES 2505
#define IDS_ENERGY_IT_KILOCALORIES 2506
#define IDS_ENERGY_JOULES 2507
#define IDS_ENERGY_KILOJOULES 2508
#define IDS_ENERGY_KILOWATT_HOURS 2509
#define IDS_ENERGY_NUTRITION_CALORIES 2510
#define IDS_ENERGY_TH_CALORIES 2511
#define IDS_ENERGY_15_C_CALORIES 2500
#define IDS_ENERGY_BTUS 2501
#define IDS_ENERGY_ERGS 2502
#define IDS_ENERGY_EVS 2503
#define IDS_ENERGY_FOOT_POUNDS 2504
#define IDS_ENERGY_IT_CALORIES 2505
#define IDS_ENERGY_IT_KILOCALORIES 2506
#define IDS_ENERGY_JOULES 2507
#define IDS_ENERGY_KILOJOULES 2508
#define IDS_ENERGY_KILOWATT_HOURS 2509
#define IDS_ENERGY_NUTRITION_CALORIES 2510
#define IDS_ENERGY_TH_CALORIES 2511
/* TYPES OF LENGTHS */
#define IDS_LENGTH_ANGSTROMS 2600
#define IDS_LENGTH_ASTRONOMICAL_UNITS 2601
#define IDS_LENGTH_BARLEYCORNS 2602
#define IDS_LENGTH_CENTIMETERS 2603
#define IDS_LENGTH_CHAINS_UK 2604
#define IDS_LENGTH_CHI 2605
#define IDS_LENGTH_CHOU 2606
#define IDS_LENGTH_CHR 2607
#define IDS_LENGTH_CUN 2608
#define IDS_LENGTH_FATHOMS 2609
#define IDS_LENGTH_FATHOMS_HUNGARY 2610
#define IDS_LENGTH_FEET 2611
#define IDS_LENGTH_FURLONGS 2612
#define IDS_LENGTH_GAN 2613
#define IDS_LENGTH_HANDS 2614
#define IDS_LENGTH_HUNH 2615
#define IDS_LENGTH_INCHES 2616
#define IDS_LENGTH_JA 2617
#define IDS_LENGTH_JEONG 2618
#define IDS_LENGTH_KABIET 2619
#define IDS_LENGTH_KEN 2620
#define IDS_LENGTH_KEUB 2621
#define IDS_LENGTH_KILOMETERS 2622
#define IDS_LENGTH_LAR 2623
#define IDS_LENGTH_LIGHT_YEARS 2624
#define IDS_LENGTH_LINKS_UK 2625
#define IDS_LENGTH_METERS 2626
#define IDS_LENGTH_MICRONS 2627
#define IDS_LENGTH_MILES 2628
#define IDS_LENGTH_MILLIMETERS 2629
#define IDS_LENGTH_NAUTICAL_MILES 2630
#define IDS_LENGTH_NIEU 2631
#define IDS_LENGTH_PARSECS 2632
#define IDS_LENGTH_PICAS 2633
#define IDS_LENGTH_RODS 2634
#define IDS_LENGTH_RI_JAPAN 2635
#define IDS_LENGTH_RI_KOREA 2636
#define IDS_LENGTH_SAWK 2637
#define IDS_LENGTH_SEN 2638
#define IDS_LENGTH_SHAKU 2639
#define IDS_LENGTH_SPAN 2640
#define IDS_LENGTH_SUN 2641
#define IDS_LENGTH_TSUEN 2642
#define IDS_LENGTH_VA 2643
#define IDS_LENGTH_YARDS 2644
#define IDS_LENGTH_YOTE 2645
#define IDS_LENGTH_ZHANG 2646
#define IDS_LENGTH_ANGSTROMS 2600
#define IDS_LENGTH_ASTRONOMICAL_UNITS 2601
#define IDS_LENGTH_BARLEYCORNS 2602
#define IDS_LENGTH_CENTIMETERS 2603
#define IDS_LENGTH_CHAINS_UK 2604
#define IDS_LENGTH_CHI 2605
#define IDS_LENGTH_CHOU 2606
#define IDS_LENGTH_CHR 2607
#define IDS_LENGTH_CUN 2608
#define IDS_LENGTH_FATHOMS 2609
#define IDS_LENGTH_FATHOMS_HUNGARY 2610
#define IDS_LENGTH_FEET 2611
#define IDS_LENGTH_FURLONGS 2612
#define IDS_LENGTH_GAN 2613
#define IDS_LENGTH_HANDS 2614
#define IDS_LENGTH_HUNH 2615
#define IDS_LENGTH_INCHES 2616
#define IDS_LENGTH_JA 2617
#define IDS_LENGTH_JEONG 2618
#define IDS_LENGTH_KABIET 2619
#define IDS_LENGTH_KEN 2620
#define IDS_LENGTH_KEUB 2621
#define IDS_LENGTH_KILOMETERS 2622
#define IDS_LENGTH_LAR 2623
#define IDS_LENGTH_LIGHT_YEARS 2624
#define IDS_LENGTH_LINKS_UK 2625
#define IDS_LENGTH_METERS 2626
#define IDS_LENGTH_MICRONS 2627
#define IDS_LENGTH_MILES 2628
#define IDS_LENGTH_MILLIMETERS 2629
#define IDS_LENGTH_NAUTICAL_MILES 2630
#define IDS_LENGTH_NIEU 2631
#define IDS_LENGTH_PARSECS 2632
#define IDS_LENGTH_PICAS 2633
#define IDS_LENGTH_RODS 2634
#define IDS_LENGTH_RI_JAPAN 2635
#define IDS_LENGTH_RI_KOREA 2636
#define IDS_LENGTH_SAWK 2637
#define IDS_LENGTH_SEN 2638
#define IDS_LENGTH_SHAKU 2639
#define IDS_LENGTH_SPAN 2640
#define IDS_LENGTH_SUN 2641
#define IDS_LENGTH_TSUEN 2642
#define IDS_LENGTH_VA 2643
#define IDS_LENGTH_YARDS 2644
#define IDS_LENGTH_YOTE 2645
#define IDS_LENGTH_ZHANG 2646
/* TYPES OF POWERS */
#define IDS_POWER_BTUS_PER_MINUTE 2700
#define IDS_POWER_FPS_PER_MINUTE 2701
#define IDS_POWER_HORSEPOWER 2702
#define IDS_POWER_KILOWATTS 2703
#define IDS_POWER_MEGAWATTS 2704
#define IDS_POWER_WATTS 2705
#define IDS_POWER_BTUS_PER_MINUTE 2700
#define IDS_POWER_FPS_PER_MINUTE 2701
#define IDS_POWER_HORSEPOWER 2702
#define IDS_POWER_KILOWATTS 2703
#define IDS_POWER_MEGAWATTS 2704
#define IDS_POWER_WATTS 2705
/* TYPE OF PRESSURES */
#define IDS_PRESSURE_ATMOSPHERES 2800
#define IDS_PRESSURE_BARS 2801
#define IDS_PRESSURE_HECTOPASCALS 2802
#define IDS_PRESSURE_KILOPASCALS 2803
#define IDS_PRESSURE_MM_OF_MERCURY 2804
#define IDS_PRESSURE_PASCALS 2805
#define IDS_PRESSURE_PSI 2806
#define IDS_PRESSURE_ATMOSPHERES 2800
#define IDS_PRESSURE_BARS 2801
#define IDS_PRESSURE_HECTOPASCALS 2802
#define IDS_PRESSURE_KILOPASCALS 2803
#define IDS_PRESSURE_MM_OF_MERCURY 2804
#define IDS_PRESSURE_PASCALS 2805
#define IDS_PRESSURE_PSI 2806
/* TYPES OF TEMPERATURES */
#define IDS_TEMPERATURE_CELSIUS 2900
#define IDS_TEMPERATURE_FAHRENHEIT 2901
#define IDS_TEMPERATURE_KELVIN 2902
#define IDS_TEMPERATURE_RANKINE 2903
#define IDS_TEMPERATURE_CELSIUS 2900
#define IDS_TEMPERATURE_FAHRENHEIT 2901
#define IDS_TEMPERATURE_KELVIN 2902
#define IDS_TEMPERATURE_RANKINE 2903
/* TYPE OF TIME */
#define IDS_TIME_DAYS 3001
#define IDS_TIME_HOURS 3002
#define IDS_TIME_MICROSECONDS 3003
#define IDS_TIME_MILLISECONDS 3004
#define IDS_TIME_NANOSECONDS 3005
#define IDS_TIME_MINUTES 3006
#define IDS_TIME_SECONDS 3007
#define IDS_TIME_WEEKS 3008
#define IDS_TIME_YEARS 3009
#define IDS_TIME_DAYS 3001
#define IDS_TIME_HOURS 3002
#define IDS_TIME_MICROSECONDS 3003
#define IDS_TIME_MILLISECONDS 3004
#define IDS_TIME_NANOSECONDS 3005
#define IDS_TIME_MINUTES 3006
#define IDS_TIME_SECONDS 3007
#define IDS_TIME_WEEKS 3008
#define IDS_TIME_YEARS 3009
/* TYPES OF VELOCITIES */
#define IDS_VELOCITY_CMS_SECOND 3100
#define IDS_VELOCITY_FEET_SECOND 3101
#define IDS_VELOCITY_FEET_HOUR 3102
#define IDS_VELOCITY_KILOMETERS_HOUR 3103
#define IDS_VELOCITY_KNOTS 3104
#define IDS_VELOCITY_MACH 3105
#define IDS_VELOCITY_METERS_SECOND 3106
#define IDS_VELOCITY_MILES_HOUR 3107
#define IDS_VELOCITY_CMS_SECOND 3100
#define IDS_VELOCITY_FEET_SECOND 3101
#define IDS_VELOCITY_FEET_HOUR 3102
#define IDS_VELOCITY_KILOMETERS_HOUR 3103
#define IDS_VELOCITY_KNOTS 3104
#define IDS_VELOCITY_MACH 3105
#define IDS_VELOCITY_METERS_SECOND 3106
#define IDS_VELOCITY_MILES_HOUR 3107
/* TYPES OF VOLUMES */
#define IDS_VOLUME_BARRELS_UK 3200
#define IDS_VOLUME_BARRELS_OIL 3201
#define IDS_VOLUME_BUN 3202
#define IDS_VOLUME_BUSHELS_UK 3203
#define IDS_VOLUME_BUSHELS_US 3204
#define IDS_VOLUME_CUBIC_CENTIMETERS 3205
#define IDS_VOLUME_CUBIC_FEET 3206
#define IDS_VOLUME_CUBIC_INCHES 3207
#define IDS_VOLUME_CUBIC_METERS 3208
#define IDS_VOLUME_CUBIC_YARDS 3209
#define IDS_VOLUME_DOE 3210
#define IDS_VOLUME_FLUID_OUNCES_UK 3211
#define IDS_VOLUME_FLUID_OUNCES_US 3212
#define IDS_VOLUME_GALLONS_UK 3213
#define IDS_VOLUME_GALLONS_DRY_US 3214
#define IDS_VOLUME_GALLONS_LIQUID_US 3215
#define IDS_VOLUME_GOU 3216
#define IDS_VOLUME_HOP 3217
#define IDS_VOLUME_ICCE 3218
#define IDS_VOLUME_KWIAN 3219
#define IDS_VOLUME_LITERS 3220
#define IDS_VOLUME_MAL 3221
#define IDS_VOLUME_MILLILITERS 3222
#define IDS_VOLUME_PINTS_UK 3223
#define IDS_VOLUME_PINTS_DRY_US 3224
#define IDS_VOLUME_PINTS_LIQUID_US 3225
#define IDS_VOLUME_QUARTS_UK 3226
#define IDS_VOLUME_QUARTS_DRY_US 3227
#define IDS_VOLUME_QUARTS_LIQUID_US 3228
#define IDS_VOLUME_SEKI 3229
#define IDS_VOLUME_SYOU 3230
#define IDS_VOLUME_TANANLOUNG 3231
#define IDS_VOLUME_TANG 3232
#define IDS_VOLUME_TO 3233
#define IDS_VOLUME_BARRELS_UK 3200
#define IDS_VOLUME_BARRELS_OIL 3201
#define IDS_VOLUME_BUN 3202
#define IDS_VOLUME_BUSHELS_UK 3203
#define IDS_VOLUME_BUSHELS_US 3204
#define IDS_VOLUME_CUBIC_CENTIMETERS 3205
#define IDS_VOLUME_CUBIC_FEET 3206
#define IDS_VOLUME_CUBIC_INCHES 3207
#define IDS_VOLUME_CUBIC_METERS 3208
#define IDS_VOLUME_CUBIC_YARDS 3209
#define IDS_VOLUME_DOE 3210
#define IDS_VOLUME_FLUID_OUNCES_UK 3211
#define IDS_VOLUME_FLUID_OUNCES_US 3212
#define IDS_VOLUME_GALLONS_UK 3213
#define IDS_VOLUME_GALLONS_DRY_US 3214
#define IDS_VOLUME_GALLONS_LIQUID_US 3215
#define IDS_VOLUME_GOU 3216
#define IDS_VOLUME_HOP 3217
#define IDS_VOLUME_ICCE 3218
#define IDS_VOLUME_KWIAN 3219
#define IDS_VOLUME_LITERS 3220
#define IDS_VOLUME_MAL 3221
#define IDS_VOLUME_MILLILITERS 3222
#define IDS_VOLUME_PINTS_UK 3223
#define IDS_VOLUME_PINTS_DRY_US 3224
#define IDS_VOLUME_PINTS_LIQUID_US 3225
#define IDS_VOLUME_QUARTS_UK 3226
#define IDS_VOLUME_QUARTS_DRY_US 3227
#define IDS_VOLUME_QUARTS_LIQUID_US 3228
#define IDS_VOLUME_SEKI 3229
#define IDS_VOLUME_SYOU 3230
#define IDS_VOLUME_TANANLOUNG 3231
#define IDS_VOLUME_TANG 3232
#define IDS_VOLUME_TO 3233
/* TYPES OF WEIGHTS */
#define IDS_WEIGHT_BAHT 3300
#define IDS_WEIGHT_CARATS 3301
#define IDS_WEIGHT_CHUNG 3302
#define IDS_WEIGHT_DON 3303
#define IDS_WEIGHT_GEUN 3304
#define IDS_WEIGHT_GRAMS 3305
#define IDS_WEIGHT_GWAN 3306
#define IDS_WEIGHT_HARB 3307
#define IDS_WEIGHT_JIN_CHINA 3308
#define IDS_WEIGHT_JIN_TAIWAN 3309
#define IDS_WEIGHT_KAN 3310
#define IDS_WEIGHT_KILOGRAMS 3311
#define IDS_WEIGHT_KIN 3312
#define IDS_WEIGHT_LIANG_CHINA 3313
#define IDS_WEIGHT_LIANG_TAIWAN 3314
#define IDS_WEIGHT_MONME 3315
#define IDS_WEIGHT_OUNCES_AVOIRDUPOIS 3316
#define IDS_WEIGHT_OUNCES_TROY 3317
#define IDS_WEIGHT_POUNDS 3318
#define IDS_WEIGHT_QUINTAL_METRIC 3319
#define IDS_WEIGHT_SALOUNG 3320
#define IDS_WEIGHT_STONES 3321
#define IDS_WEIGHT_TAMLUNG 3322
#define IDS_WEIGHT_TONNES 3323
#define IDS_WEIGHT_TONS_UK 3324
#define IDS_WEIGHT_TONS_US 3325
#define IDS_WEIGHT_BAHT 3300
#define IDS_WEIGHT_CARATS 3301
#define IDS_WEIGHT_CHUNG 3302
#define IDS_WEIGHT_DON 3303
#define IDS_WEIGHT_GEUN 3304
#define IDS_WEIGHT_GRAMS 3305
#define IDS_WEIGHT_GWAN 3306
#define IDS_WEIGHT_HARB 3307
#define IDS_WEIGHT_JIN_CHINA 3308
#define IDS_WEIGHT_JIN_TAIWAN 3309
#define IDS_WEIGHT_KAN 3310
#define IDS_WEIGHT_KILOGRAMS 3311
#define IDS_WEIGHT_KIN 3312
#define IDS_WEIGHT_LIANG_CHINA 3313
#define IDS_WEIGHT_LIANG_TAIWAN 3314
#define IDS_WEIGHT_MONME 3315
#define IDS_WEIGHT_OUNCES_AVOIRDUPOIS 3316
#define IDS_WEIGHT_OUNCES_TROY 3317
#define IDS_WEIGHT_POUNDS 3318
#define IDS_WEIGHT_QUINTAL_METRIC 3319
#define IDS_WEIGHT_SALOUNG 3320
#define IDS_WEIGHT_STONES 3321
#define IDS_WEIGHT_TAMLUNG 3322
#define IDS_WEIGHT_TONNES 3323
#define IDS_WEIGHT_TONS_UK 3324
#define IDS_WEIGHT_TONS_US 3325
/* MENU */
#define IDM_EDIT_COPY 40002
#define IDM_EDIT_PASTE 40003
#define IDM_VIEW_STANDARD 40004
#define IDM_VIEW_SCIENTIFIC 40005
#define IDM_VIEW_HEX 40006
#define IDM_VIEW_DEC 40007
#define IDM_VIEW_OCT 40008
#define IDM_VIEW_BIN 40009
#define IDM_VIEW_DEG 40010
#define IDM_VIEW_RAD 40011
#define IDM_VIEW_GRAD 40012
#define IDM_VIEW_GROUP 40013
#define IDM_HELP_HELP 40014
#define IDM_HELP_ABOUT 40015
#define IDM_VIEW_QWORD 40016
#define IDM_VIEW_WORD 40017
#define IDM_VIEW_BYTE 40018
#define IDM_VIEW_DWORD 40019
#define IDM_VIEW_CONVERSION 40020
#define IDM_EDIT_COPY 40002
#define IDM_EDIT_PASTE 40003
#define IDM_VIEW_STANDARD 40004
#define IDM_VIEW_SCIENTIFIC 40005
#define IDM_VIEW_HEX 40006
#define IDM_VIEW_DEC 40007
#define IDM_VIEW_OCT 40008
#define IDM_VIEW_BIN 40009
#define IDM_VIEW_DEG 40010
#define IDM_VIEW_RAD 40011
#define IDM_VIEW_GRAD 40012
#define IDM_VIEW_GROUP 40013
#define IDM_HELP_HELP 40014
#define IDM_HELP_ABOUT 40015
#define IDM_VIEW_QWORD 40016
#define IDM_VIEW_WORD 40017
#define IDM_VIEW_BYTE 40018
#define IDM_VIEW_DWORD 40019
#define IDM_VIEW_CONVERSION 40020

View File

@@ -1,8 +1,21 @@
/*
* PROJECT: ReactOS Calc
* LICENSE: LGPL - See COPYING.LIB in the top level directory
* FILE: base/applications/calc/resource.rc
* PURPOSE: Global resource file
* ReactOS Calc (global resource file)
*
* Copyright 2007, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include <windef.h>
@@ -10,18 +23,14 @@
#include "resource.h"
#ifndef IDC_STATIC
#define IDC_STATIC -1
#endif
/* Common resources */
LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL
/* Icons */
IDI_CALC_BIG ICON "res/calc.ico"
IDI_CALC_SMALL ICON "res/calc_sm.ico"
IDI_CALC ICON DISCARDABLE "res/calc.ico"
/* Manifest */
#include <reactos/manifest_exe.rc>
/* UTF-8 */

View File

@@ -1,462 +0,0 @@
#include "calc.h"
typedef struct {
calc_node_t node;
void *next;
} stack_node_t;
typedef void (*operator_call)(calc_number_t *, calc_number_t *, calc_number_t *);
typedef struct {
unsigned int prec;
operator_call op_f;
operator_call op_i;
operator_call op_p;
} calc_operator_t;
static stack_node_t *stack;
static stack_node_t temp;
static BOOL percent_mode;
static void rpn_add_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sub_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mul_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_div_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mod_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_pow_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sqr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_and_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_or_f (calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_xor_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shl_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
/* Integer mode calculations */
static void rpn_add_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sub_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mul_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_div_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mod_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_and_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_or_i (calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_xor_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shl_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shr_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
/* Percentage mode calculations */
static void rpn_add_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sub_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mul_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_div_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static const calc_operator_t operator_list[] = {
{ 0, NULL, NULL, NULL, }, // RPN_OPERATOR_PARENT
{ 0, NULL, NULL, NULL, }, // RPN_OPERATOR_PERCENT
{ 0, NULL, NULL, NULL, }, // RPN_OPERATOR_EQUAL
{ 1, rpn_or_f, rpn_or_i, NULL, }, // RPN_OPERATOR_OR
{ 2, rpn_xor_f, rpn_xor_i, NULL, }, // RPN_OPERATOR_XOR
{ 3, rpn_and_f, rpn_and_i, NULL, }, // RPN_OPERATOR_AND
{ 4, rpn_shl_f, rpn_shl_i, NULL, }, // RPN_OPERATOR_LSH
{ 4, rpn_shr_f, rpn_shr_i, NULL, }, // RPN_OPERATOR_RSH
{ 5, rpn_add_f, rpn_add_i, rpn_add_p, }, // RPN_OPERATOR_ADD
{ 5, rpn_sub_f, rpn_sub_i, rpn_sub_p, }, // RPN_OPERATOR_SUB
{ 6, rpn_mul_f, rpn_mul_i, rpn_mul_p, }, // RPN_OPERATOR_MULT
{ 6, rpn_div_f, rpn_div_i, rpn_div_p, }, // RPN_OPERATOR_DIV
{ 6, rpn_mod_f, rpn_mod_i, NULL, }, // RPN_OPERATOR_MOD
{ 7, rpn_pow_f, NULL, NULL, }, // RPN_OPERATOR_POW
{ 7, rpn_sqr_f, NULL, NULL, }, // RPN_OPERATOR_SQR
};
static stack_node_t *pop(void)
{
if (stack == NULL)
return NULL;
temp = *stack;
free(stack);
stack = temp.next;
return &temp;
}
static int is_stack_empty(void)
{
return (stack == NULL);
}
static void push(stack_node_t *op)
{
stack_node_t *z = (stack_node_t *)malloc(sizeof(stack_node_t));
*z = *op;
z->next = stack;
stack = z;
}
/*
static unsigned int get_prec(unsigned int opc)
{
unsigned int x;
for (x=0; x<SIZEOF(operator_list); x++)
if (operator_list[x].opc == opc) break;
return operator_list[x].prec;
}
*/
/* Real mode calculations */
static void rpn_add_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f + b->f;
}
static void rpn_sub_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f - b->f;
}
static void rpn_mul_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * b->f;
}
static void rpn_div_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->f == 0)
calc.is_nan = TRUE;
else
r->f = a->f / b->f;
}
static void rpn_mod_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
double t;
if (b->f == 0)
calc.is_nan = TRUE;
else {
modf(a->f/b->f, &t);
r->f = a->f - (t * b->f);
}
}
static void rpn_and_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t ai, bi;
ai.i = logic_dbl2int(a);
bi.i = logic_dbl2int(b);
r->f = (long double)(ai.i & bi.i);
}
static void rpn_or_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t ai, bi;
ai.i = logic_dbl2int(a);
bi.i = logic_dbl2int(b);
r->f = (long double)(ai.i | bi.i);
}
static void rpn_xor_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t ai, bi;
ai.i = logic_dbl2int(a);
bi.i = logic_dbl2int(b);
r->f = (long double)(ai.i ^ bi.i);
}
static void rpn_shl_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t n;
modf(b->f, &n.f);
r->f = a->f * pow(2., n.f);
}
static void rpn_shr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t n;
modf(b->f, &n.f);
r->f = a->f / pow(2., n.f);
}
static void rpn_pow_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = pow(a->f, b->f);
if (_finite(r->f) == 0 || _isnan(r->f))
calc.is_nan = TRUE;
}
static void rpn_sqr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->f == 0)
calc.is_nan = TRUE;
else {
r->f = pow(a->f, 1./b->f);
if (_finite(r->f) == 0 || _isnan(r->f))
calc.is_nan = TRUE;
}
}
/* Integer mode calculations */
static void rpn_add_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i + b->i;
}
static void rpn_sub_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i - b->i;
}
static void rpn_mul_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i * b->i;
}
static void rpn_div_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->i == 0)
calc.is_nan = TRUE;
else
r->i = a->i / b->i;
}
static void rpn_mod_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->i == 0)
calc.is_nan = TRUE;
else
r->i = a->i % b->i;
}
static void rpn_and_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i & b->i;
}
static void rpn_or_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i | b->i;
}
static void rpn_xor_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i ^ b->i;
}
static void rpn_shl_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i << b->i;
}
static void rpn_shr_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i >> b->i;
}
/* Percent mode calculations */
static void rpn_add_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * (1. + b->f/100.);
}
static void rpn_sub_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * (1. - b->f/100.);
}
static void rpn_mul_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * b->f / 100.;
}
static void rpn_div_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->f == 0)
calc.is_nan = TRUE;
else
r->f = a->f * 100. / b->f;
}
void run_operator(calc_node_t *result,
calc_node_t *a,
calc_node_t *b,
unsigned int operation)
{
calc_number_t da, db, dc;
DWORD base = calc.base;
da = a->number;
db = b->number;
if (a->base == IDC_RADIO_DEC && b->base != IDC_RADIO_DEC) {
db.f = logic_int2dbl(&b->number);
base = IDC_RADIO_DEC;
} else
if (a->base != IDC_RADIO_DEC && b->base == IDC_RADIO_DEC) {
da.f = logic_int2dbl(&a->number);
base = IDC_RADIO_DEC;
}
if (base == IDC_RADIO_DEC) {
if (percent_mode) {
percent_mode = FALSE;
operator_list[operation].op_p(&dc, &da, &db);
} else
operator_list[operation].op_f(&dc, &da, &db);
if (_finite(dc.f) == 0)
calc.is_nan = TRUE;
} else {
operator_list[operation].op_i(&dc, &da, &db);
/* apply final limiter to result */
apply_int_mask(&dc);
}
if (a->base == IDC_RADIO_DEC && b->base != IDC_RADIO_DEC) {
result->number.i = logic_dbl2int(&dc);
apply_int_mask(&result->number);
} else
if (a->base != IDC_RADIO_DEC && b->base == IDC_RADIO_DEC)
result->number.f = dc.f;
else
result->number = dc;
}
static void evalStack(calc_number_t *number)
{
stack_node_t *op, ip;
unsigned int prec;
op = pop();
ip = *op;
prec = operator_list[ip.node.operation].prec;
while (!is_stack_empty()) {
op = pop();
if (prec <= operator_list[op->node.operation].prec) {
if (op->node.operation == RPN_OPERATOR_PARENT) continue;
calc.prev = ip.node.number;
run_operator(&ip.node, &op->node, &ip.node, op->node.operation);
if (calc.is_nan) {
flush_postfix();
return;
}
} else {
push(op);
break;
}
}
if(ip.node.operation != RPN_OPERATOR_EQUAL && ip.node.operation != RPN_OPERATOR_PERCENT)
push(&ip);
calc.prev_operator = op->node.operation;
*number = ip.node.number;
}
int exec_infix2postfix(calc_number_t *number, unsigned int func)
{
stack_node_t tmp;
if (is_stack_empty() && func == RPN_OPERATOR_EQUAL) {
/* if a number has been entered with exponential */
/* notation, I may update it with normal mode */
if (calc.sci_in)
return 1;
return 0;
}
if (func == RPN_OPERATOR_PERCENT)
percent_mode = TRUE;
tmp.node.number = *number;
tmp.node.base = calc.base;
tmp.node.operation = func;
tmp.next = NULL;
push(&tmp);
if (func == RPN_OPERATOR_NONE)
return 0;
if (func != RPN_OPERATOR_PARENT) {
calc.last_operator = func;
evalStack(number);
}
return 1;
}
void exec_change_infix(void)
{
stack_node_t *op = stack;
if (op == NULL)
return;
if (op->node.operation == RPN_OPERATOR_PARENT ||
op->node.operation == RPN_OPERATOR_PERCENT ||
op->node.operation == RPN_OPERATOR_EQUAL)
return;
/* remove the head, it will be re-inserted with new operator */
pop();
}
void exec_closeparent(calc_number_t *number)
{
stack_node_t *op, ip;
ip.node.number = *number;
ip.node.base = calc.base;
while (!is_stack_empty()) {
op = pop();
if (op->node.operation == RPN_OPERATOR_PARENT)
break;
run_operator(&ip.node, &op->node, &ip.node, op->node.operation);
if (calc.is_nan) {
flush_postfix();
return;
}
}
*number = ip.node.number;
}
int eval_parent_count(void)
{
stack_node_t *s = stack;
int n = 0;
while (s != NULL) {
if (s->node.operation == RPN_OPERATOR_PARENT)
n++;
s = (stack_node_t *)(s->next);
}
return n;
}
void flush_postfix()
{
while (!is_stack_empty())
pop();
/* clear prev and last typed operators */
calc.prev_operator =
calc.last_operator = 0;
}
void start_rpn_engine(void)
{
stack = NULL;
}
void stop_rpn_engine(void)
{
}

View File

@@ -0,0 +1,486 @@
/*
* ReactOS Calc (RPN encoder/decoder for IEEE-754 engine)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
typedef struct {
calc_node_t node;
void *next;
} stack_node_t;
typedef void (*operator_call)(calc_number_t *, calc_number_t *, calc_number_t *);
typedef struct {
unsigned int prec;
operator_call op_f;
operator_call op_i;
operator_call op_p;
} calc_operator_t;
static stack_node_t *stack;
static calc_node_t temp;
static BOOL percent_mode;
static void rpn_add_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sub_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mul_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_div_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mod_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_pow_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sqr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_and_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_or_f (calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_xor_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shl_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
/* Integer mode calculations */
static void rpn_add_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sub_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mul_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_div_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mod_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_and_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_or_i (calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_xor_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shl_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_shr_i(calc_number_t *r, calc_number_t *a, calc_number_t *b);
/* Percentage mode calculations */
static void rpn_add_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_sub_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_mul_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static void rpn_div_p(calc_number_t *r, calc_number_t *a, calc_number_t *b);
static const calc_operator_t operator_list[] = {
{ 0, NULL, NULL, NULL, }, // RPN_OPERATOR_PARENT
{ 0, NULL, NULL, NULL, }, // RPN_OPERATOR_PERCENT
{ 0, NULL, NULL, NULL, }, // RPN_OPERATOR_EQUAL
{ 1, rpn_or_f, rpn_or_i, NULL, }, // RPN_OPERATOR_OR
{ 2, rpn_xor_f, rpn_xor_i, NULL, }, // RPN_OPERATOR_XOR
{ 3, rpn_and_f, rpn_and_i, NULL, }, // RPN_OPERATOR_AND
{ 4, rpn_shl_f, rpn_shl_i, NULL, }, // RPN_OPERATOR_LSH
{ 4, rpn_shr_f, rpn_shr_i, NULL, }, // RPN_OPERATOR_RSH
{ 5, rpn_add_f, rpn_add_i, rpn_add_p, }, // RPN_OPERATOR_ADD
{ 5, rpn_sub_f, rpn_sub_i, rpn_sub_p, }, // RPN_OPERATOR_SUB
{ 6, rpn_mul_f, rpn_mul_i, rpn_mul_p, }, // RPN_OPERATOR_MULT
{ 6, rpn_div_f, rpn_div_i, rpn_div_p, }, // RPN_OPERATOR_DIV
{ 6, rpn_mod_f, rpn_mod_i, NULL, }, // RPN_OPERATOR_MOD
{ 7, rpn_pow_f, NULL, NULL, }, // RPN_OPERATOR_POW
{ 7, rpn_sqr_f, NULL, NULL, }, // RPN_OPERATOR_SQR
};
static calc_node_t *pop(void)
{
void *next;
if (stack == NULL)
return NULL;
/* copy the node */
temp = stack->node;
next = stack->next;
/* free the node */
free(stack);
stack = next;
return &temp;
}
static int is_stack_empty(void)
{
return (stack == NULL);
}
static void push(calc_node_t *op)
{
stack_node_t *z = (stack_node_t *)malloc(sizeof(stack_node_t));
z->node = *op;
z->next = stack;
stack = z;
}
/*
static unsigned int get_prec(unsigned int opc)
{
unsigned int x;
for (x=0; x<SIZEOF(operator_list); x++)
if (operator_list[x].opc == opc) break;
return operator_list[x].prec;
}
*/
/* Real mode calculations */
static void rpn_add_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f + b->f;
}
static void rpn_sub_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f - b->f;
}
static void rpn_mul_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * b->f;
}
static void rpn_div_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->f == 0)
calc.is_nan = TRUE;
else
r->f = a->f / b->f;
}
static void rpn_mod_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
double t;
if (b->f == 0)
calc.is_nan = TRUE;
else {
modf(a->f/b->f, &t);
r->f = a->f - (t * b->f);
}
}
static void rpn_and_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t ai, bi;
ai.i = logic_dbl2int(a);
bi.i = logic_dbl2int(b);
r->f = (long double)(ai.i & bi.i);
}
static void rpn_or_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t ai, bi;
ai.i = logic_dbl2int(a);
bi.i = logic_dbl2int(b);
r->f = (long double)(ai.i | bi.i);
}
static void rpn_xor_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t ai, bi;
ai.i = logic_dbl2int(a);
bi.i = logic_dbl2int(b);
r->f = (long double)(ai.i ^ bi.i);
}
static void rpn_shl_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t n;
modf(b->f, &n.f);
r->f = a->f * pow(2., n.f);
}
static void rpn_shr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
calc_number_t n;
modf(b->f, &n.f);
r->f = a->f / pow(2., n.f);
}
static void rpn_pow_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = pow(a->f, b->f);
if (_finite(r->f) == 0 || _isnan(r->f))
calc.is_nan = TRUE;
}
static void rpn_sqr_f(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->f == 0)
calc.is_nan = TRUE;
else {
r->f = pow(a->f, 1./b->f);
if (_finite(r->f) == 0 || _isnan(r->f))
calc.is_nan = TRUE;
}
}
/* Integer mode calculations */
static void rpn_add_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i + b->i;
}
static void rpn_sub_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i - b->i;
}
static void rpn_mul_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i * b->i;
}
static void rpn_div_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->i == 0)
calc.is_nan = TRUE;
else
r->i = a->i / b->i;
}
static void rpn_mod_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->i == 0)
calc.is_nan = TRUE;
else
r->i = a->i % b->i;
}
static void rpn_and_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i & b->i;
}
static void rpn_or_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i | b->i;
}
static void rpn_xor_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i ^ b->i;
}
static void rpn_shl_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i << b->i;
}
static void rpn_shr_i(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->i = a->i >> b->i;
}
/* Percent mode calculations */
static void rpn_add_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * (1. + b->f/100.);
}
static void rpn_sub_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * (1. - b->f/100.);
}
static void rpn_mul_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
r->f = a->f * b->f / 100.;
}
static void rpn_div_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
{
if (b->f == 0)
calc.is_nan = TRUE;
else
r->f = a->f * 100. / b->f;
}
void run_operator(calc_node_t *result,
calc_node_t *a,
calc_node_t *b,
unsigned int operation)
{
calc_number_t da, db, dc;
DWORD base = calc.base;
da = a->number;
db = b->number;
if (a->base == IDC_RADIO_DEC && b->base != IDC_RADIO_DEC) {
db.f = logic_int2dbl(&b->number);
base = IDC_RADIO_DEC;
} else
if (a->base != IDC_RADIO_DEC && b->base == IDC_RADIO_DEC) {
da.f = logic_int2dbl(&a->number);
base = IDC_RADIO_DEC;
}
if (base == IDC_RADIO_DEC) {
if (percent_mode) {
percent_mode = FALSE;
operator_list[operation].op_p(&dc, &da, &db);
} else
operator_list[operation].op_f(&dc, &da, &db);
if (_finite(dc.f) == 0)
calc.is_nan = TRUE;
} else {
operator_list[operation].op_i(&dc, &da, &db);
/* apply final limiter to result */
apply_int_mask(&dc);
}
if (a->base == IDC_RADIO_DEC && b->base != IDC_RADIO_DEC) {
result->number.i = logic_dbl2int(&dc);
apply_int_mask(&result->number);
} else
if (a->base != IDC_RADIO_DEC && b->base == IDC_RADIO_DEC)
result->number.f = dc.f;
else
result->number = dc;
}
static void evalStack(calc_number_t *number)
{
calc_node_t *op, ip;
unsigned int prec;
op = pop();
ip = *op;
prec = operator_list[ip.operation].prec;
while (!is_stack_empty()) {
op = pop();
if (prec <= operator_list[op->operation].prec) {
if (op->operation == RPN_OPERATOR_PARENT) continue;
calc.prev = ip.number;
run_operator(&ip, op, &ip, op->operation);
if (calc.is_nan) {
flush_postfix();
return;
}
} else {
push(op);
break;
}
}
if (ip.operation != RPN_OPERATOR_EQUAL && ip.operation != RPN_OPERATOR_PERCENT)
push(&ip);
calc.prev_operator = op->operation;
*number = ip.number;
}
int exec_infix2postfix(calc_number_t *number, unsigned int func)
{
calc_node_t tmp;
if (is_stack_empty() && func == RPN_OPERATOR_EQUAL) {
/* if a number has been entered with exponential */
/* notation, I may update it with normal mode */
if (calc.sci_in)
return 1;
return 0;
}
if (func == RPN_OPERATOR_PERCENT)
percent_mode = TRUE;
tmp.number = *number;
tmp.base = calc.base;
tmp.operation = func;
push(&tmp);
if (func == RPN_OPERATOR_NONE)
return 0;
if (func != RPN_OPERATOR_PARENT) {
calc.last_operator = func;
evalStack(number);
}
return 1;
}
void exec_change_infix(void)
{
stack_node_t *op = stack;
if (op == NULL)
return;
if (op->node.operation == RPN_OPERATOR_PARENT ||
op->node.operation == RPN_OPERATOR_PERCENT ||
op->node.operation == RPN_OPERATOR_EQUAL)
return;
/* remove the head, it will be re-inserted with new operator */
pop();
}
void exec_closeparent(calc_number_t *number)
{
calc_node_t *op, ip;
ip.number = *number;
ip.base = calc.base;
while (!is_stack_empty()) {
op = pop();
if (op->operation == RPN_OPERATOR_PARENT)
break;
run_operator(&ip, op, &ip, op->operation);
if (calc.is_nan) {
flush_postfix();
return;
}
}
*number = ip.number;
}
int eval_parent_count(void)
{
stack_node_t *s = stack;
int n = 0;
while (s != NULL) {
if (s->node.operation == RPN_OPERATOR_PARENT)
n++;
s = (stack_node_t *)(s->next);
}
return n;
}
void flush_postfix(void)
{
while (!is_stack_empty())
pop();
/* clear prev and last typed operators */
calc.prev_operator =
calc.last_operator = 0;
}
void start_rpn_engine(void)
{
stack = NULL;
}
void stop_rpn_engine(void)
{
}

View File

@@ -1,3 +1,23 @@
/*
* ReactOS Calc (RPN encoder/decoder for GMP/MPFR engine)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
typedef struct {
@@ -15,7 +35,7 @@ typedef struct {
} calc_operator_t;
static stack_node_t *stack;
static stack_node_t temp;
static calc_node_t temp;
static BOOL percent_mode;
static void rpn_add_f(calc_number_t *r, calc_number_t *a, calc_number_t *b);
@@ -61,25 +81,27 @@ static const calc_operator_t operator_list[] = {
{ 7, rpn_sqr_f, NULL, NULL, }, // RPN_OPERATOR_SQR
};
static void node_copy(stack_node_t *dst, stack_node_t *src)
static void node_copy(calc_node_t *dst, calc_node_t *src)
{
mpfr_set(dst->node.number.mf,src->node.number.mf,MPFR_DEFAULT_RND);
dst->node.operation = src->node.operation;
dst->next = src->next;
mpfr_set(dst->number.mf, src->number.mf, MPFR_DEFAULT_RND);
dst->operation = src->operation;
}
static stack_node_t *pop()
static calc_node_t *pop(void)
{
void *next;
if (stack == NULL)
return NULL;
/* copy the node */
node_copy(&temp, stack);
node_copy(&temp, &stack->node);
next = stack->next;
/* free the node */
mpfr_clear(stack->node.number.mf);
free(stack);
stack = temp.next;
stack = next;
return &temp;
}
@@ -89,12 +111,12 @@ static int is_stack_empty(void)
return (stack == NULL);
}
static void push(stack_node_t *op)
static void push(calc_node_t *op)
{
stack_node_t *z = (stack_node_t *)malloc(sizeof(stack_node_t));
mpfr_init_set(z->node.number.mf,op->node.number.mf,MPFR_DEFAULT_RND);
z->node.operation = op->node.operation;
mpfr_init_set(z->node.number.mf, op->number.mf, MPFR_DEFAULT_RND);
z->node.operation = op->operation;
z->next = stack;
stack = z;
}
@@ -109,8 +131,7 @@ static unsigned int get_prec(unsigned int opc)
}
*/
typedef
__GMP_DECLSPEC void (*exec_call_t)
typedef void (*exec_call_t)
__GMP_PROTO ((mpz_ptr, mpz_srcptr, mpz_srcptr));
static void rpn_exec_int(calc_number_t *r, calc_number_t *a, calc_number_t *b, exec_call_t cb)
@@ -286,7 +307,6 @@ static void rpn_div_p(calc_number_t *r, calc_number_t *a, calc_number_t *b)
}
}
void run_operator(calc_node_t *result,
calc_node_t *a,
calc_node_t *b,
@@ -307,44 +327,44 @@ void run_operator(calc_node_t *result,
static void evalStack(calc_number_t *number)
{
stack_node_t *op, ip;
calc_node_t *op, ip;
unsigned int prec;
mpfr_init(ip.node.number.mf);
mpfr_init(ip.number.mf);
op = pop();
node_copy(&ip, op);
prec = operator_list[ip.node.operation].prec;
prec = operator_list[ip.operation].prec;
while (!is_stack_empty()) {
op = pop();
if (prec <= operator_list[op->node.operation].prec) {
if (op->node.operation == RPN_OPERATOR_PARENT) continue;
if (prec <= operator_list[op->operation].prec) {
if (op->operation == RPN_OPERATOR_PARENT) continue;
rpn_copy(&calc.prev, &ip.node.number);
run_operator(&ip.node, &op->node, &ip.node, op->node.operation);
rpn_copy(&calc.prev, &ip.number);
run_operator(&ip, op, &ip, op->operation);
if (calc.is_nan) {
flush_postfix();
mpfr_clear(ip.node.number.mf);
mpfr_clear(ip.number.mf);
return;
}
} else {
push(op);
break;
}
}
}
if(ip.node.operation != RPN_OPERATOR_EQUAL && ip.node.operation != RPN_OPERATOR_PERCENT)
if (ip.operation != RPN_OPERATOR_EQUAL && ip.operation != RPN_OPERATOR_PERCENT)
push(&ip);
calc.prev_operator = op->node.operation;
calc.prev_operator = op->operation;
rpn_copy(number, &ip.node.number);
mpfr_clear(ip.node.number.mf);
rpn_copy(number, &ip.number);
mpfr_clear(ip.number.mf);
}
int exec_infix2postfix(calc_number_t *number, unsigned int func)
{
stack_node_t tmp;
calc_node_t tmp;
if (is_stack_empty() && func == RPN_OPERATOR_EQUAL) {
/* if a number has been entered with exponential */
@@ -357,12 +377,12 @@ int exec_infix2postfix(calc_number_t *number, unsigned int func)
if (func == RPN_OPERATOR_PERCENT)
percent_mode = TRUE;
mpfr_init(tmp.node.number.mf);
rpn_copy(&tmp.node.number, number);
tmp.node.operation = func;
mpfr_init(tmp.number.mf);
rpn_copy(&tmp.number, number);
tmp.operation = func;
push(&tmp);
mpfr_clear(tmp.node.number.mf);
mpfr_clear(tmp.number.mf);
if (func == RPN_OPERATOR_NONE)
return 0;
@@ -390,24 +410,24 @@ void exec_change_infix(void)
void exec_closeparent(calc_number_t *number)
{
stack_node_t *op, ip;
calc_node_t *op, ip;
rpn_alloc(&ip.node.number);
rpn_copy(&ip.node.number, number);
rpn_alloc(&ip.number);
rpn_copy(&ip.number, number);
while (!is_stack_empty()) {
op = pop();
if (op->node.operation == RPN_OPERATOR_PARENT)
if (op->operation == RPN_OPERATOR_PARENT)
break;
run_operator(&ip.node, &op->node, &ip.node, op->node.operation);
run_operator(&ip, op, &ip, op->operation);
if (calc.is_nan) {
flush_postfix();
return;
}
}
rpn_copy(number, &ip.node.number);
rpn_free(&ip.node.number);
rpn_copy(number, &ip.number);
rpn_free(&ip.number);
}
int eval_parent_count(void)
@@ -423,12 +443,12 @@ int eval_parent_count(void)
return n;
}
void flush_postfix()
void flush_postfix(void)
{
while (!is_stack_empty())
pop();
/* clear prev and last typed operators */
calc.prev_operator =
calc.prev_operator =
calc.last_operator = 0;
}
@@ -440,7 +460,7 @@ void start_rpn_engine(void)
mpfr_init(calc.code.mf);
mpfr_init(calc.prev.mf);
mpfr_init(calc.memory.number.mf);
mpfr_init(temp.node.number.mf);
mpfr_init(temp.number.mf);
rpn_zero(&calc.memory.number);
}
@@ -449,5 +469,5 @@ void stop_rpn_engine(void)
mpfr_clear(calc.code.mf);
mpfr_clear(calc.prev.mf);
mpfr_clear(calc.memory.number.mf);
mpfr_clear(temp.node.number.mf);
mpfr_clear(temp.number.mf);
}

View File

@@ -0,0 +1,127 @@
/*
* ReactOS Calc (Theming support)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
#define GET_CB(name) \
calc_##name = (type_##name)GetProcAddress(hUxTheme, #name); \
if (calc_##name == NULL) calc_##name = dummy_##name;
static HTHEME WINAPI
dummy_OpenThemeData(HWND hwnd, const WCHAR *pszClassList);
static HRESULT WINAPI
dummy_CloseThemeData(HTHEME hTheme);
static HRESULT WINAPI
dummy_DrawThemeBackground(HTHEME hTheme, HDC hdc, int iPartId, int iStateId,
const RECT *prc, const RECT *prcClip);
static BOOL WINAPI
dummy_IsAppThemed(void);
static BOOL WINAPI
dummy_IsThemeActive(void);
static BOOL WINAPI
dummy_IsThemeBackgroundPartiallyTransparent(HTHEME hTheme, int iPartId, int iStateId);
static HRESULT WINAPI
dummy_DrawThemeParentBackground(HWND hWnd, HDC hdc, RECT *prc);
type_OpenThemeData calc_OpenThemeData = dummy_OpenThemeData;
type_CloseThemeData calc_CloseThemeData = dummy_CloseThemeData;
type_DrawThemeBackground calc_DrawThemeBackground = dummy_DrawThemeBackground;
type_IsAppThemed calc_IsAppThemed = dummy_IsAppThemed;
type_IsThemeActive calc_IsThemeActive = dummy_IsThemeActive;
type_IsThemeBackgroundPartiallyTransparent calc_IsThemeBackgroundPartiallyTransparent = \
dummy_IsThemeBackgroundPartiallyTransparent;
type_DrawThemeParentBackground calc_DrawThemeParentBackground = \
dummy_DrawThemeParentBackground;
static HMODULE hUxTheme;
static HTHEME WINAPI
dummy_OpenThemeData(HWND hwnd, const WCHAR* pszClassList)
{
return NULL;
}
static HRESULT WINAPI
dummy_CloseThemeData(HTHEME hTheme)
{
return E_NOTIMPL;
}
static HRESULT WINAPI
dummy_DrawThemeBackground(HTHEME hTheme, HDC hdc, int iPartId, int iStateId,
const RECT* prc, const RECT* prcClip)
{
return E_NOTIMPL;
}
static BOOL WINAPI
dummy_IsAppThemed(void)
{
return FALSE;
}
static BOOL WINAPI
dummy_IsThemeActive(void)
{
return FALSE;
}
static BOOL WINAPI
dummy_IsThemeBackgroundPartiallyTransparent(HTHEME hTheme, int iPartId, int iStateId)
{
return FALSE;
}
static HRESULT WINAPI
dummy_DrawThemeParentBackground(HWND hWnd, HDC hdc, RECT *prc)
{
return E_NOTIMPL;
}
void Theme_Start(HINSTANCE hInstance)
{
hUxTheme = LoadLibrary(_T("UXTHEME"));
if (hUxTheme == NULL)
return;
GET_CB(OpenThemeData)
GET_CB(CloseThemeData)
GET_CB(DrawThemeBackground)
GET_CB(IsAppThemed)
GET_CB(IsThemeActive)
GET_CB(IsThemeBackgroundPartiallyTransparent)
GET_CB(DrawThemeParentBackground)
}
void Theme_Stop(void)
{
if(hUxTheme == NULL)
return;
FreeLibrary(hUxTheme);
hUxTheme = NULL;
}

View File

@@ -1,107 +0,0 @@
#include "calc.h"
void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
{
calc_number_t tmp;
int width;
switch (base) {
case IDC_RADIO_HEX:
_stprintf(buffer, TEXT("%I64X"), rpn->i);
break;
case IDC_RADIO_DEC:
/*
* Modified from 17 to 16 for fixing this bug:
* 14+14+6.3+6.3= 40.5999999 instead of 40.6
* So, it's probably better to leave the least
* significant digit out of the display.
*/
#define MAX_LD_WIDTH 16
/* calculate the width of integer number */
width = (rpn->f==0) ? 1 : (int)log10(fabs(rpn->f))+1;
if ((calc.sci_out != FALSE) || (width > MAX_LD_WIDTH) || (width < -MAX_LD_WIDTH))
_stprintf(buffer, TEXT("%#e"), rpn->f);
else {
TCHAR *ptr, *dst;
ptr = buffer + _stprintf(buffer, TEXT("%#*.*f"), width, ((MAX_LD_WIDTH-width-1)>=0) ? MAX_LD_WIDTH-width-1 : 0, rpn->f);
/* format string ensures there is a '.': */
dst = _tcschr(buffer, TEXT('.'));
while (--ptr > dst)
if (*ptr != TEXT('0'))
break;
/* put the string terminator for removing the final '0' (if any) */
ptr[1] = TEXT('\0');
/* check if the number finishes with '.' */
if (ptr == dst)
/* remove the dot (it will be re-added later) */
ptr[0] = TEXT('\0');
}
#undef MAX_LD_WIDTH
break;
case IDC_RADIO_OCT:
_stprintf(buffer, TEXT("%I64o"), rpn->i);
break;
case IDC_RADIO_BIN:
if (rpn->i == 0) {
buffer[0] = TEXT('0');
buffer[1] = TEXT('\0');
break;
}
tmp = *rpn;
buffer[0] = TEXT('\0');
while (tmp.u) {
memmove(buffer+1, buffer, (size-1)*sizeof(TCHAR));
if (tmp.u & 1)
calc.buffer[0] = TEXT('1');
else
calc.buffer[0] = TEXT('0');
tmp.u >>= 1;
}
break;
}
}
void convert_text2number_2(calc_number_t *a)
{
TCHAR *ptr;
switch (calc.base) {
case IDC_RADIO_HEX:
_stscanf(calc.buffer, TEXT("%I64X"), &(a->i));
break;
case IDC_RADIO_DEC:
_stscanf(calc.buffer, TEXT("%lf"), &(a->f));
break;
case IDC_RADIO_OCT:
_stscanf(calc.buffer, TEXT("%I64o"), &(a->i));
break;
case IDC_RADIO_BIN:
ptr = calc.buffer;
a->i = 0;
while (*ptr != TEXT('\0')) {
a->i <<= 1;
if (*ptr++ == TEXT('1'))
a->i |= 1;
}
break;
}
}
void convert_real_integer(unsigned int base)
{
switch (base) {
case IDC_RADIO_DEC:
calc.code.f = (double)calc.code.i;
break;
case IDC_RADIO_OCT:
case IDC_RADIO_BIN:
case IDC_RADIO_HEX:
if (calc.base == IDC_RADIO_DEC) {
calc.code.i = (__int64)calc.code.f;
apply_int_mask(&calc.code);
}
break;
}
}

View File

@@ -0,0 +1,127 @@
/*
* ReactOS Calc (Utility functions for IEEE-754 engine)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
{
calc_number_t tmp;
int width;
switch (base) {
case IDC_RADIO_HEX:
_stprintf(buffer, _T("%I64X"), rpn->i);
break;
case IDC_RADIO_DEC:
/*
* Modified from 17 to 16 for fixing this bug:
* 14+14+6.3+6.3= 40.5999999 instead of 40.6
* So, it's probably better to leave the least
* significant digit out of the display.
*/
#define MAX_LD_WIDTH 16
/* calculate the width of integer number */
width = (rpn->f==0) ? 1 : (int)log10(fabs(rpn->f))+1;
if (calc.sci_out == TRUE || width > MAX_LD_WIDTH || width < -MAX_LD_WIDTH)
_stprintf(buffer, _T("%#.*e"), MAX_LD_WIDTH-1, rpn->f);
else {
TCHAR *ptr, *dst;
ptr = buffer + _stprintf(buffer, _T("%#*.*f"), width, ((MAX_LD_WIDTH-width-1)>=0) ? MAX_LD_WIDTH-width-1 : 0, rpn->f);
/* format string ensures there is a '.': */
dst = _tcschr(buffer, _T('.'));
while (--ptr > dst)
if (*ptr != _T('0'))
break;
/* put the string terminator for removing the final '0' (if any) */
ptr[1] = _T('\0');
/* check if the number finishes with '.' */
if (ptr == dst)
/* remove the dot (it will be re-added later) */
ptr[0] = _T('\0');
}
#undef MAX_LD_WIDTH
break;
case IDC_RADIO_OCT:
_stprintf(buffer, _T("%I64o"), rpn->i);
break;
case IDC_RADIO_BIN:
if (rpn->i == 0) {
buffer[0] = _T('0');
buffer[1] = _T('\0');
break;
}
tmp = *rpn;
buffer[0] = _T('\0');
while (tmp.u) {
memmove(buffer+1, buffer, (size-1)*sizeof(TCHAR));
if (tmp.u & 1)
buffer[0] = _T('1');
else
buffer[0] = _T('0');
tmp.u >>= 1;
}
break;
}
}
void convert_text2number_2(calc_number_t *a)
{
TCHAR *ptr;
switch (calc.base) {
case IDC_RADIO_HEX:
_stscanf(calc.buffer, _T("%I64X"), &(a->i));
break;
case IDC_RADIO_DEC:
_stscanf(calc.buffer, _T("%lf"), &(a->f));
break;
case IDC_RADIO_OCT:
_stscanf(calc.buffer, _T("%I64o"), &(a->i));
break;
case IDC_RADIO_BIN:
ptr = calc.buffer;
a->i = 0;
while (*ptr != _T('\0')) {
a->i <<= 1;
if (*ptr++ == _T('1'))
a->i |= 1;
}
break;
}
}
void convert_real_integer(unsigned int base)
{
switch (base) {
case IDC_RADIO_DEC:
calc.code.f = (double)calc.code.i;
break;
case IDC_RADIO_OCT:
case IDC_RADIO_BIN:
case IDC_RADIO_HEX:
if (calc.base == IDC_RADIO_DEC) {
calc.code.i = (__int64)calc.code.f;
apply_int_mask(&calc.code);
}
break;
}
}

View File

@@ -1,3 +1,23 @@
/*
* ReactOS Calc (Utility functions for GMP/MPFR engine)
*
* Copyright 2007-2017, Carlo Bramini
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "calc.h"
void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
@@ -39,7 +59,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
width = 1 + mpfr_get_si(t, MPFR_DEFAULT_RND);
mpfr_clear(t);
}
if ((calc.sci_out != FALSE) || (width > max_ld_width) || (width < -max_ld_width))
if (calc.sci_out == TRUE || width > max_ld_width || width < -max_ld_width)
ptr = temp + gmp_sprintf(temp, "%*.*#Fe", 1, max_ld_width, ff);
else {
ptr = temp + gmp_sprintf(temp, "%#*.*Ff", width, ((max_ld_width-width-1)>=0) ? max_ld_width-width-1 : 0, ff);
@@ -62,8 +82,8 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
case IDC_RADIO_BIN:
/* if the number is zero, just write 0 ;) */
if (rpn_is_zero(rpn)) {
temp[0] = TEXT('0');
temp[1] = TEXT('\0');
temp[0] = _T('0');
temp[1] = _T('\0');
break;
}
/* repeat until a bit set to '1' is found */
@@ -78,8 +98,8 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
} while (1);
/* now revert the string into TCHAR buffer */
for (q=0; q<n; q++)
buffer[n-q-1] = (temp[q] == '1') ? TEXT('1') : TEXT('0');
buffer[n] = TEXT('\0');
buffer[n-q-1] = (temp[q] == '1') ? _T('1') : _T('0');
buffer[n] = _T('\0');
mpz_clear(zz);
mpf_clear(ff);
@@ -87,7 +107,7 @@ void prepare_rpn_result_2(calc_number_t *rpn, TCHAR *buffer, int size, int base)
}
mpz_clear(zz);
mpf_clear(ff);
_sntprintf(buffer, SIZEOF(calc.buffer), TEXT("%s"), temp);
_sntprintf(buffer, SIZEOF(calc.buffer), _T("%hs"), temp);
}
void convert_text2number_2(calc_number_t *a)
@@ -135,4 +155,3 @@ void convert_real_integer(unsigned int base)
break;
}
}

View File

@@ -1,4 +1,33 @@
1.11 (20080813)
1.12 (20181104)
=======================
* Fixed bug 12.37 13/06/2009 into multiprecision display (unicode only).
* Added support for average of squares and mean of squares into statistical functions.
* pop() and push() functions in RPN engines now work with nodes instead of stack units.
* Updated translations from ReactOS' repository.
* Added support for new conversion units:
- ANGLE: 'minute of arc', 'second of arc'.
- AREA: 'mu', 'rai'.
- LENGTH: 'chi', 'cun'. 'sun' optimized.
- TIME: 'nanoseconds'.
- WEIGHT: 'Kan', 'Kin'.
* Added support for thailand measure system:
Invaluable help from this page:
http://www.eppo.go.th/ref/UNIT-ALL.html
* Moved the POW and SQR operations near the operators.
* Rewritten some units formula by using scientific notation.
* Improved precision of parsec unit conversion formula.
* Fixed bug when calculator was closed with statistics dialog open.
* Do not append decimal separator if "ERROR" messages are printed.
* Improve code readability by using SetDlgItemText and GetDlgItemText functions
* Colours are now declared though RGB() macro.
* Remove call to _tcslen() and use return value of GetDlgItemText() where possible.
* Added theming support. Requires Windows XP or later.
* Configuration is read from WIN.INI under W32S/Win9x/Me and from the registry for all NT platforms.
* Removed safe DS_SHELLFONT declaration.
1.11 (20090404)
=======================
* Updated translations (thanks to the friends at ReactOS' community).
* Added DS_SHELLFONT to some dialogs into various translations (sometimes it was specified, sometimes it was not).
@@ -16,7 +45,7 @@
* Fixed some unsignaled overflow errors.
* Fixed conversion method, now scientific notation is recognized too.
* Added compilation for UNICODE executables.
* Plain MINGW toolchain do not support wWinMain function, so I switched to old WinMain if it is not under ReactOS' build tree.
* Plain MINGW toolchain does not support wWinMain function, so I switched to old WinMain if it is not under ReactOS' build tree.
* Detect error if UNICODE version is launched into Win9x (avoid the lock).
1.09 (20080630)
@@ -103,7 +132,7 @@
* The version number of the programme has been moved from the resource files to ABOUT.C.
* "DOT" function can be used for starting a number (integer part will be zero).
* Added repeat function.
* If the number is grater than maximum resolution, it will be displayed with exponential notation.
* If the number is greater than maximum resolution, it will be displayed with exponential notation.
* Removed mouse and keyboard focuses from displayed buttons.
* Added normal and small icons.

File diff suppressed because it is too large Load Diff

View File

@@ -10,6 +10,6 @@ list(APPEND SOURCE
add_rc_deps(charmap.rc ${CMAKE_CURRENT_SOURCE_DIR}/res/charmap.ico)
add_executable(charmap ${SOURCE} charmap.rc)
set_module_type(charmap win32gui UNICODE)
add_importlibs(charmap advapi32 user32 gdi32 comctl32 msvcrt kernel32)
add_importlibs(charmap getuname advapi32 user32 gdi32 comctl32 msvcrt kernel32)
add_pch(charmap precomp.h SOURCE)
add_cd_file(TARGET charmap DESTINATION reactos/system32 FOR all)

View File

@@ -11,6 +11,7 @@
#include <commctrl.h>
#include <richedit.h>
#include <winnls.h>
#define REMOVE_ADVANCED
@@ -24,10 +25,6 @@ HICON hSmIcon;
HICON hBgIcon;
SETTINGS Settings;
/* GetUName prototype */
typedef int (WINAPI * GETUNAME)(WORD wCharCode, LPWSTR lpbuf);
GETUNAME GetUName;
/* Font-enumeration callback */
static
int
@@ -164,7 +161,7 @@ CopyCharacters(HWND hDlg)
// Test if the whose text is unselected
if(dwStart == dwEnd) {
// Select the whole text
SendMessageW(hText, EM_SETSEL, 0, -1);
@@ -267,12 +264,9 @@ UpdateStatusBar(WCHAR wch)
WCHAR buff[MAX_PATH];
WCHAR szDesc[MAX_PATH];
if (GetUName)
{
GetUName(wch, szDesc);
wsprintfW(buff, L"U+%04X: %s", wch, szDesc);
SendMessageW(hStatusWnd, SB_SETTEXT, 0, (LPARAM)buff);
}
GetUName(wch, szDesc);
wsprintfW(buff, L"U+%04X: %s", wch, szDesc);
SendMessageW(hStatusWnd, SB_SETTEXT, 0, (LPARAM)buff);
}
static
@@ -439,8 +433,9 @@ AdvancedDlgProc(HWND hDlg,
return FALSE;
}
#endif
static int
OnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
PanelOnCreate(HWND hWnd, WPARAM wParam, LPARAM lParam)
{
HMENU hSysMenu;
WCHAR lpAboutText[256];
@@ -488,7 +483,9 @@ PanelWndProc(HWND hWnd, UINT msg, WPARAM wParam, LPARAM lParam)
{
switch (msg) {
case WM_CREATE:
return OnCreate(hWnd, wParam, lParam);
// For now, the Help push button is disabled because of lacking of HTML Help support
EnableWindow(GetDlgItem(hWnd, IDC_CMHELP), FALSE);
return PanelOnCreate(hWnd, wParam, lParam);
case WM_CLOSE:
DestroyWindow(hWnd);
@@ -589,26 +586,24 @@ wWinMain(HINSTANCE hInst,
INT Ret = 1;
HMODULE hRichEd20;
MSG Msg;
HINSTANCE hGetUName = NULL;
hInstance = hInst;
/* Mirroring code for the titlebar */
switch (GetUserDefaultUILanguage())
{
case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT):
SetProcessDefaultLayout(LAYOUT_RTL);
break;
default:
break;
}
iccx.dwSize = sizeof(INITCOMMONCONTROLSEX);
iccx.dwICC = ICC_TAB_CLASSES;
InitCommonControlsEx(&iccx);
/* Loading the GetUName function */
hGetUName = LoadLibraryW(L"getuname.dll");
if (hGetUName != NULL)
{
GetUName = (GETUNAME) GetProcAddress(hGetUName, "GetUName");
if (GetUName == NULL)
{
FreeLibrary(hGetUName);
hGetUName = NULL;
}
}
if (RegisterMapClasses(hInstance))
{
hRichEd20 = LoadLibraryW(L"RICHED20.DLL");
@@ -634,8 +629,5 @@ wWinMain(HINSTANCE hInst,
UnregisterMapClasses(hInstance);
}
if (hGetUName != NULL)
FreeLibrary(hGetUName);
return Ret;
}

View File

@@ -33,6 +33,9 @@ IDI_ICON ICON "res/charmap.ico"
#ifdef LANGUAGE_EN_US
#include "lang/en-US.rc"
#endif
#ifdef LANGUAGE_ET_EE
#include "lang/et-EE.rc"
#endif
#ifdef LANGUAGE_EL_GR
#include "lang/el-GR.rc"
#endif

View File

@@ -0,0 +1,54 @@
LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "&Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
PUSHBUTTON "&Spikker", IDC_CMHELP, 249, 5, 35, 13
CONTROL "", IDC_FONTMAP, "FontMapWnd", WS_CHILD | WS_VISIBLE | WS_TABSTOP |
WS_VSCROLL, 20, 22, 266, 156
LTEXT "&Kopeeritavad märgid:", IDC_STATIC, 6, 188, 96, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 86, 186, 100, 13
DEFPUSHBUTTON "&Vali", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "&Kopeeri", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
CONTROL "Tä&psem vaade", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
WS_TABSTOP, 8, 208, 95, 10
END
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Mä&rgistik:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "R&ühmitusalus:", IDC_STATIC, 8, 28, 50, 8
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "&Otsi", IDC_BUTTON_SEARCH, 200, 44, 50, 14
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
LTEXT "Ots&itav:", IDC_STATIC, 8, 48, 42, 8
LTEXT "&Unicode:", IDC_STATIC, 200, 8, 30, 8
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "Märgistikust"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "Märgistik v0.1\nAutoriõigus (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
PUSHBUTTON "&Sule", IDOK, 75, 162, 44, 15
ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 194, 107, WS_VISIBLE | WS_VSCROLL |
WS_TABSTOP | ES_READONLY | ES_MULTILINE
END
STRINGTABLE
BEGIN
IDS_LICENSE "This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.\r\n\r\nThis program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.\r\n\r\nYou should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA."
IDS_ABOUT "T&eave..."
IDS_TITLE "Märgistik"
END

View File

@@ -4,6 +4,7 @@ LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
EXSTYLE WS_EX_LAYOUTRTL
BEGIN
LTEXT "גופן", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
@@ -22,6 +23,7 @@ END
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
EXSTYLE WS_EX_LAYOUTRTL
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "ערכת תווים:", IDC_STATIC, 8, 8, 48, 8
@@ -39,6 +41,7 @@ IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "אודות מפת תווים"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
EXSTYLE WS_EX_LAYOUTRTL
BEGIN
LTEXT "Character Map v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36
PUSHBUTTON "סגור", IDOK, 75, 162, 44, 15

View File

@@ -35,7 +35,7 @@ BEGIN
END
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "Informazioni su Character Map"
CAPTION "Informazioni su Mappa Caratteri"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN

View File

@@ -5,7 +5,7 @@
LANGUAGE LANG_KOREAN, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 9, "MS Shell Dlg", 0, 0
FONT 9, "굴림", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "글꼴:", IDC_STATIC, 6, 7, 24, 9
@@ -25,7 +25,7 @@ END
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 9, "MS Shell Dlg"
FONT 9, "굴림"
BEGIN
LTEXT "Charset:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
@@ -40,7 +40,7 @@ END
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "문자표에 대하여"
FONT 9, "MS Shell Dlg", 0, 0
FONT 9, "굴림", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "Character Map v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36

View File

@@ -1,7 +1,7 @@
/*
* FILE: base/applications/charmap/lang/ro-RO.rc
* ReactOS Project (http://www.reactos.org)
* TRANSLATOR: Ștefan Fulea (stefan dot fulea at mail dot md)
* TRANSLATOR: Ștefan Fulea (stefan dot fulea at mail dot com)
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
@@ -45,7 +45,7 @@ CAPTION "Despre"
FONT 8, "MS Shell Dlg", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "Hartă de caractere v0.1\nDrept de autor (C) 2007 Ged Murphy (gedmurphy@reactos.org)\nTraducere de Ștefan Fulea (stefan.fulea@mail.md)", IDC_STATIC, 48, 7, 210, 36
LTEXT "Hartă de caractere v0.1\nDrept de autor (C) 2007 Ged Murphy (gedmurphy@reactos.org)\nTraducere de Ștefan Fulea (stefan.fulea@mail.com)", IDC_STATIC, 48, 7, 210, 36
PUSHBUTTON "Î&nchide", IDOK, 105, 162, 44, 15
ICON IDI_ICON, IDC_STATIC, 10, 10, 7, 30
EDITTEXT IDC_LICENSE_EDIT, 8, 44, 254, 107, WS_VISIBLE | WS_VSCROLL |

View File

@@ -22,7 +22,7 @@ BEGIN
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Välj", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Kopiera", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
CONTROL "Avansert visning",IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
CONTROL "Avancerad visning",IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
WS_TABSTOP, 8, 208, 95, 10
END
@@ -30,13 +30,13 @@ IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 8, "MS Shell Dlg"
BEGIN
LTEXT "Charset:", IDC_STATIC, 8, 8, 48, 8
LTEXT "Teckenuppsättning:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
LTEXT "Group by:", IDC_STATIC, 8, 28, 50, 8
LTEXT "Gruppera efter:", IDC_STATIC, 8, 28, 50, 8
COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
PUSHBUTTON "Search", IDC_BUTTON_SEARCH, 200, 44, 50, 14
PUSHBUTTON "Sök", IDC_BUTTON_SEARCH, 200, 44, 50, 14
EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
LTEXT "Search for:", IDC_STATIC, 8, 48, 42, 8
LTEXT "Sök efter:", IDC_STATIC, 8, 48, 42, 8
LTEXT "Unicode:", IDC_STATIC, 200, 8, 30, 8
EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END

View File

@@ -1,4 +1,4 @@
/* TRANSLATOR: 2013, 2014 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
/* TRANSLATOR: 2013, 2014 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net) */
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT

View File

@@ -9,7 +9,7 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 9, "MS Shell Dlg", 0, 0
FONT 9, "宋体", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "字体:", IDC_STATIC, 6, 7, 24, 9
@@ -29,7 +29,7 @@ END
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 9, "MS Shell Dlg"
FONT 9, "宋体"
BEGIN
LTEXT "字符集:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
@@ -44,7 +44,7 @@ END
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "关于字符映射表"
FONT 9, "MS Shell Dlg", 0, 0
FONT 9, "宋体", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "字符映射表 v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36

View File

@@ -9,7 +9,7 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_TRADITIONAL
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 9, "MS Shell Dlg", 0, 0
FONT 9, "新細明體", 0, 0
STYLE DS_SHELLFONT | WS_CHILD | WS_VISIBLE
BEGIN
LTEXT "字體:", IDC_STATIC, 6, 7, 24, 9
@@ -29,7 +29,7 @@ END
IDD_ADVANCED DIALOGEX 0, 0, 292, 64
STYLE DS_SHELLFONT | WS_CHILD
FONT 9, "MS Shell Dlg"
FONT 9, "新細明體"
BEGIN
LTEXT "字元集:", IDC_STATIC, 8, 8, 48, 8
COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
@@ -44,7 +44,7 @@ END
IDD_ABOUTBOX DIALOGEX 22, 16, 210, 182
CAPTION "關於字元對應表"
FONT 9, "MS Shell Dlg", 0, 0
FONT 9, "新細明體", 0, 0
STYLE DS_SHELLFONT | WS_BORDER | WS_DLGFRAME | WS_SYSMENU | DS_MODALFRAME
BEGIN
LTEXT "字元對應表 v0.1\nCopyright (C) 2007 Ged Murphy (gedmurphy@reactos.org)", IDC_STATIC, 48, 7, 150, 36

View File

@@ -376,9 +376,9 @@ OnClick(PMAP infoPtr,
static
BOOL
OnCreate(PMAP infoPtr,
HWND hwnd,
HWND hParent)
MapOnCreate(PMAP infoPtr,
HWND hwnd,
HWND hParent)
{
RECT rc;
BOOL Ret = FALSE;
@@ -558,9 +558,9 @@ MapWndProc(HWND hwnd,
{
case WM_CREATE:
{
if (!OnCreate(infoPtr,
hwnd,
((LPCREATESTRUCTW)lParam)->hwndParent))
if (!MapOnCreate(infoPtr,
hwnd,
((LPCREATESTRUCTW)lParam)->hwndParent))
{
return (LRESULT)-1;
}

View File

@@ -73,6 +73,8 @@ VOID ShowAboutDlg(HWND hWndParent);
BOOL RegisterMapClasses(HINSTANCE hInstance);
VOID UnregisterMapClasses(HINSTANCE hInstance);
int WINAPI GetUName(IN WORD wCharCode, OUT LPWSTR lpBuf);
/* charmap.c */
VOID UpdateStatusBar(WCHAR wch);
extern VOID ChangeMapFont(HWND hDlg);

View File

@@ -16,12 +16,12 @@ list(APPEND SOURCE
MainWindow.cpp
)
add_library(charmap SHARED
add_library(charmap MODULE
${SOURCE}
charmap.rc)
set_module_type(charmap win32gui UNICODE)
target_link_libraries(charmap uuid atlnew wine)
target_link_libraries(charmap uuid wine)
add_importlibs(charmap advapi32 user32 gdi32 comctl32 version msvcrt kernel32 ole32 uxtheme ntdll)
add_pch(charmap precomp.h SOURCE)
add_cd_file(TARGET charmap DESTINATION reactos/system32 FOR all)

View File

@@ -19,83 +19,86 @@ IDI_ICON ICON "res/charmap.ico"
#pragma code_page(65001)
#ifdef LANGUAGE_BG_BG
#include "lang/bg-BG.rc"
#include "lang/bg-BG.rc"
#endif
#ifdef LANGUAGE_CA_ES
#include "lang/ca-ES.rc"
#include "lang/ca-ES.rc"
#endif
#ifdef LANGUAGE_CS_CZ
#include "lang/cs-CZ.rc"
#include "lang/cs-CZ.rc"
#endif
#ifdef LANGUAGE_DE_DE
#include "lang/de-DE.rc"
#include "lang/de-DE.rc"
#endif
#ifdef LANGUAGE_EN_US
#include "lang/en-US.rc"
#include "lang/en-US.rc"
#endif
#ifdef LANGUAGE_EL_GR
#include "lang/el-GR.rc"
#include "lang/el-GR.rc"
#endif
#ifdef LANGUAGE_ES_ES
#include "lang/es-ES.rc"
#include "lang/es-ES.rc"
#endif
#ifdef LANGUAGE_ET-EE
#include "lang/et-EE.rc"
#endif
#ifdef LANGUAGE_FR_FR
#include "lang/fr-FR.rc"
#include "lang/fr-FR.rc"
#endif
#ifdef LANGUAGE_HE_IL
#include "lang/he-IL.rc"
#include "lang/he-IL.rc"
#endif
#ifdef LANGUAGE_ID_ID
#include "lang/id-ID.rc"
#include "lang/id-ID.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/it-IT.rc"
#include "lang/it-IT.rc"
#endif
#ifdef LANGUAGE_JA_JP
#include "lang/ja-JP.rc"
#include "lang/ja-JP.rc"
#endif
#ifdef LANGUAGE_KO_KR
#include "lang/ko-KR.rc"
#include "lang/ko-KR.rc"
#endif
#ifdef LANGUAGE_LT_LT
#include "lang/lt-LT.rc"
#include "lang/lt-LT.rc"
#endif
#ifdef LANGUAGE_NL_NL
#include "lang/nl-NL.rc"
#include "lang/nl-NL.rc"
#endif
#ifdef LANGUAGE_NB_NO
#include "lang/no-NO.rc"
#include "lang/no-NO.rc"
#endif
#ifdef LANGUAGE_PL_PL
#include "lang/pl-PL.rc"
#include "lang/pl-PL.rc"
#endif
#ifdef LANGUAGE_PT_BR
#include "lang/pt-BR.rc"
#include "lang/pt-BR.rc"
#endif
#ifdef LANGUAGE_RO_RO
#include "lang/ro-RO.rc"
#include "lang/ro-RO.rc"
#endif
#ifdef LANGUAGE_RU_RU
#include "lang/ru-RU.rc"
#include "lang/ru-RU.rc"
#endif
#ifdef LANGUAGE_SK_SK
#include "lang/sk-SK.rc"
#include "lang/sk-SK.rc"
#endif
#ifdef LANGUAGE_SQ_AL
#include "lang/sq-AL.rc"
#include "lang/sq-AL.rc"
#endif
#ifdef LANGUAGE_SV_SE
#include "lang/sv-SE.rc"
#include "lang/sv-SE.rc"
#endif
#ifdef LANGUAGE_TR_TR
#include "lang/tr-TR.rc"
#include "lang/tr-TR.rc"
#endif
#ifdef LANGUAGE_UK_UA
#include "lang/uk-UA.rc"
#include "lang/uk-UA.rc"
#endif
#ifdef LANGUAGE_ZH_CN
#include "lang/zh-CN.rc"
#include "lang/zh-CN.rc"
#endif
#ifdef LANGUAGE_ZH_TW
#include "lang/zh-TW.rc"
#include "lang/zh-TW.rc"
#endif

View File

@@ -7,7 +7,7 @@ CAPTION "ReactOS Character Map"
BEGIN
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Characters to copy:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13

View File

@@ -0,0 +1,22 @@
LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "ReactOS'i Märgistik"
BEGIN
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Kopeeritavad märgid:", IDC_STATIC, 6, 188, 96, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 86, 186, 100, 13
DEFPUSHBUTTON "Vali", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Kopeeri", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "T&eave..."
IDS_TITLE "Märgistik"
END

View File

@@ -0,0 +1,29 @@
/*
* PROJECT: ReactOS Character Map
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Italian Translation for ReactOS Character Map
* COPYRIGHT: Bișoc George (fraizeraust99 at gmail dot com)
*/
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "Mappa Caratteri di ReactOS"
BEGIN
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Caratteri da copiare:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Selezionare", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Copiare", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "&Informazioni su…"
IDS_TITLE "Mappa caratteri"
END

View File

@@ -1,4 +1,4 @@
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
LANGUAGE LANG_POLISH, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 8, "MS Shell Dlg", 0, 0
@@ -7,7 +7,7 @@ CAPTION "Tablica znaków ReactOS"
BEGIN
LTEXT "Czcionka:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Znaki do skopiowania:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13

View File

@@ -0,0 +1,29 @@
/*
* PROJECT: ReactOS Character Map
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Romanian Translation for ReactOS Character Map
* COPYRIGHT: Bișoc George (fraizeraust99 at gmail dot com)
*/
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "Hartă de caractere de ReactOS"
BEGIN
LTEXT "Font:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Caractere de copiat:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Selectează", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Copiază", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "&Despre…"
IDS_TITLE "Hartă de caractere"
END

View File

@@ -1,35 +1,35 @@
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
/* TRANSLATOR: 2015 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net), 2018 Ercan Ersoy (ercanersoy) (ercanersoy [at] ercanersoy [dot] net)*/
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
IDD_CHARMAP DIALOGEX 6, 6, 292, 224
FONT 8, "MS Shell Dlg", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX
CAPTION "ReactOS Damga Eşlemi"
CAPTION "ReactOS Karakter Eşlem"
BEGIN
LTEXT "Yazı Tipi:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 36, 5, 210, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Çoğaltılacak Damgalar:", IDC_STATIC, 6, 188, 66, 9
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "Çoğaltılacak Karakterler:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "Seç", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "Çoğalt", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
//CONTROL "Gelişmiş Görünüm", IDC_CHECK_ADVANCED, "Button", BS_AUTOCHECKBOX |
// WS_TABSTOP, 8, 208, 95, 10
//LTEXT "Damga Öbeği:", IDC_STATIC, 8, 8, 48, 8
//LTEXT "Karakter Öbeği:", IDC_STATIC, 8, 8, 48, 8
//COMBOBOX IDC_COMBO_CHARSET, 72, 4, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
//LTEXT "Takımla:", IDC_STATIC, 8, 28, 50, 8
//COMBOBOX IDC_COMBO_GROUPBY, 72, 24, 116, 80, CBS_DROPDOWNLIST | WS_VSCROLL | WS_TABSTOP
//PUSHBUTTON "Ara", IDC_BUTTON_SEARCH, 200, 44, 50, 14
//EDITTEXT IDC_EDIT_SEARCH, 72, 44, 116, 14, ES_AUTOHSCROLL
//LTEXT "Ada Göre Ara:", IDC_STATIC, 8, 48, 42, 8
//LTEXT "Evrenlik Kod:", IDC_STATIC, 200, 8, 30, 8
//LTEXT "Evrensel Kod:", IDC_STATIC, 200, 8, 30, 8
//EDITTEXT IDC_EDIT_UNICODE, 236, 4, 28, 12, ES_AUTOHSCROLL
END
STRINGTABLE
BEGIN
IDS_ABOUT "&Üzerine..."
IDS_TITLE "Damga Eşlemi"
IDS_ABOUT "&Hakkında"
IDS_TITLE "Karakter Eşlem"
END

View File

@@ -0,0 +1,22 @@
LANGUAGE LANG_CHINESE, SUBLANG_CHINESE_SIMPLIFIED
IDD_CHARMAP DIALOGEX 6, 6, 290, 224
FONT 9, "宋体", 0, 0
STYLE WS_OVERLAPPED | WS_CAPTION | WS_SYSMENU | WS_MINIMIZEBOX | WS_SIZEBOX
CAPTION "ReactOS 字符映射表"
BEGIN
LTEXT "字体:", IDC_STATIC, 6, 7, 24, 9
COMBOBOX IDC_FONTCOMBO, 28, 5, 150, 210, WS_CHILD | WS_VISIBLE |
WS_VSCROLL | CBS_DROPDOWNLIST | CBS_SORT | CBS_HASSTRINGS
LTEXT "待复制的字符:", IDC_STATIC, 6, 188, 66, 9
CONTROL "", IDC_TEXTBOX, RICHEDIT_CLASS, ES_AUTOHSCROLL | WS_BORDER |
WS_CHILD | WS_VISIBLE | WS_TABSTOP, 74, 186, 114, 13
DEFPUSHBUTTON "选择", IDC_SELECT, 194, 186, 44, 13
PUSHBUTTON "复制", IDC_COPY, 242, 186, 44, 13, WS_DISABLED
END
STRINGTABLE
BEGIN
IDS_ABOUT "关于(&B)..."
IDS_TITLE "字符映射表"
END

View File

@@ -1,9 +1,9 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS Clipboard Viewer
* FILE: base/applications/clipbrd/clipbrd.c
* PURPOSE: Provides a view of the contents of the ReactOS clipboard.
* PROGRAMMERS: Ricardo Hanke
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Provides a view of the contents of the ReactOS clipboard.
* COPYRIGHT: Copyright 2015-2018 Ricardo Hanke
* Copyright 2015-2018 Hermes Belusca-Maito
*/
#include "precomp.h"
@@ -13,26 +13,12 @@ static const WCHAR szClassName[] = L"ClipBookWClass";
CLIPBOARD_GLOBALS Globals;
SCROLLSTATE Scrollstate;
static void UpdateLinesToScroll(void)
{
UINT uLinesToScroll;
if (!SystemParametersInfo(SPI_GETWHEELSCROLLLINES, 0, &uLinesToScroll, 0))
{
Globals.uLinesToScroll = 3;
}
else
{
Globals.uLinesToScroll = uLinesToScroll;
}
}
static void SaveClipboardToFile(void)
{
OPENFILENAMEW sfn;
LPWSTR c;
WCHAR szFileName[MAX_PATH];
WCHAR szFilterMask[MAX_STRING_LEN + 10];
LPWSTR c;
ZeroMemory(&szFilterMask, sizeof(szFilterMask));
c = szFilterMask + LoadStringW(Globals.hInstance, STRING_FORMAT_NT, szFilterMask, MAX_STRING_LEN) + 1;
@@ -87,9 +73,9 @@ static void LoadClipboardDataFromFile(LPWSTR lpszFileName)
static void LoadClipboardFromFile(void)
{
OPENFILENAMEW ofn;
LPWSTR c;
WCHAR szFileName[MAX_PATH];
WCHAR szFilterMask[MAX_STRING_LEN + 10];
LPWSTR c;
ZeroMemory(&szFilterMask, sizeof(szFilterMask));
c = szFilterMask + LoadStringW(Globals.hInstance, STRING_FORMAT_GEN, szFilterMask, MAX_STRING_LEN) + 1;
@@ -123,6 +109,8 @@ static void LoadClipboardFromDrop(HDROP hDrop)
static void SetDisplayFormat(UINT uFormat)
{
RECT rc;
CheckMenuItem(Globals.hMenu, Globals.uCheckedItem, MF_BYCOMMAND | MF_UNCHECKED);
Globals.uCheckedItem = uFormat + CMD_AUTOMATIC;
CheckMenuItem(Globals.hMenu, Globals.uCheckedItem, MF_BYCOMMAND | MF_CHECKED);
@@ -136,13 +124,10 @@ static void SetDisplayFormat(UINT uFormat)
Globals.uDisplayFormat = uFormat;
}
if (Globals.hDspBmp)
{
DeleteObject(Globals.hDspBmp);
}
ZeroMemory(&Scrollstate, sizeof(Scrollstate));
UpdateWindowScrollState(Globals.hMainWnd, Globals.hDspBmp, &Scrollstate);
GetClipboardDataDimensions(Globals.uDisplayFormat, &rc);
Scrollstate.CurrentX = Scrollstate.CurrentY = 0;
Scrollstate.iWheelCarryoverX = Scrollstate.iWheelCarryoverY = 0;
UpdateWindowScrollState(Globals.hMainWnd, rc.right, rc.bottom, &Scrollstate);
InvalidateRect(Globals.hMainWnd, NULL, TRUE);
}
@@ -169,8 +154,8 @@ static void InitMenuPopup(HMENU hMenu, LPARAM index)
static void UpdateDisplayMenu(void)
{
UINT uFormat;
WCHAR szFormatName[MAX_FMT_NAME_LEN + 1];
HMENU hMenu;
WCHAR szFormatName[MAX_FMT_NAME_LEN + 1];
hMenu = GetSubMenu(Globals.hMenu, DISPLAY_MENU_POS);
@@ -187,27 +172,34 @@ static void UpdateDisplayMenu(void)
AppendMenuW(hMenu, MF_SEPARATOR, 0, NULL);
uFormat = EnumClipboardFormats(0);
while (uFormat)
/* Display the supported clipboard formats first */
for (uFormat = EnumClipboardFormats(0); uFormat;
uFormat = EnumClipboardFormats(uFormat))
{
RetrieveClipboardFormatName(Globals.hInstance, uFormat, TRUE, szFormatName, ARRAYSIZE(szFormatName));
if (!IsClipboardFormatSupported(uFormat))
{
AppendMenuW(hMenu, MF_STRING | MF_GRAYED, 0, szFormatName);
}
else
if (IsClipboardFormatSupported(uFormat))
{
RetrieveClipboardFormatName(Globals.hInstance, uFormat, TRUE,
szFormatName, ARRAYSIZE(szFormatName));
AppendMenuW(hMenu, MF_STRING, CMD_AUTOMATIC + uFormat, szFormatName);
}
}
uFormat = EnumClipboardFormats(uFormat);
/* Now display the unsupported clipboard formats */
for (uFormat = EnumClipboardFormats(0); uFormat;
uFormat = EnumClipboardFormats(uFormat))
{
if (!IsClipboardFormatSupported(uFormat))
{
RetrieveClipboardFormatName(Globals.hInstance, uFormat, TRUE,
szFormatName, ARRAYSIZE(szFormatName));
AppendMenuW(hMenu, MF_STRING | MF_GRAYED, 0, szFormatName);
}
}
CloseClipboard();
}
static int ClipboardCommandHandler(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
static int OnCommand(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
{
switch (LOWORD(wParam))
{
@@ -274,68 +266,113 @@ static int ClipboardCommandHandler(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM l
return 0;
}
static void ClipboardPaintHandler(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)
static void OnPaint(HWND hWnd, WPARAM wParam, LPARAM lParam)
{
HDC hdc;
PAINTSTRUCT ps;
COLORREF crOldBkColor, crOldTextColor;
RECT rc;
if (!OpenClipboard(Globals.hMainWnd))
return;
hdc = BeginPaint(hWnd, &ps);
GetClientRect(hWnd, &rc);
/* Erase the background if needed */
if (ps.fErase)
FillRect(ps.hdc, &ps.rcPaint, (HBRUSH)(COLOR_WINDOW + 1));
/* Set the correct background and text colors */
crOldBkColor = SetBkColor(ps.hdc, GetSysColor(COLOR_WINDOW));
crOldTextColor = SetTextColor(ps.hdc, GetSysColor(COLOR_WINDOWTEXT));
/* Realize the clipboard palette if there is one */
RealizeClipboardPalette(ps.hdc);
switch (Globals.uDisplayFormat)
{
case CF_NONE:
{
/* The clipboard is empty */
break;
}
case CF_DSPTEXT:
case CF_TEXT:
case CF_OEMTEXT:
case CF_UNICODETEXT:
{
DrawTextFromClipboard(hdc, &rc, DT_LEFT | DT_NOPREFIX);
DrawTextFromClipboard(Globals.uDisplayFormat, ps, Scrollstate);
break;
}
case CF_DSPBITMAP:
case CF_BITMAP:
{
BitBltFromClipboard(hdc, rc.left, rc.top, rc.right, rc.bottom, 0, 0, SRCCOPY);
BitBltFromClipboard(ps, Scrollstate, SRCCOPY);
break;
}
case CF_DIB:
{
SetDIBitsToDeviceFromClipboard(CF_DIB, hdc, rc.left, rc.top, 0, 0, 0, DIB_RGB_COLORS);
break;
}
case CF_DIBV5:
{
SetDIBitsToDeviceFromClipboard(CF_DIBV5, hdc, rc.left, rc.top, 0, 0, 0, DIB_RGB_COLORS);
SetDIBitsToDeviceFromClipboard(Globals.uDisplayFormat, ps, Scrollstate, DIB_RGB_COLORS);
break;
}
case CF_DSPMETAFILEPICT:
case CF_METAFILEPICT:
{
GetClientRect(hWnd, &rc);
PlayMetaFileFromClipboard(hdc, &rc);
break;
}
case CF_DSPENHMETAFILE:
case CF_ENHMETAFILE:
{
GetClientRect(hWnd, &rc);
PlayEnhMetaFileFromClipboard(hdc, &rc);
break;
}
// case CF_PALETTE:
// TODO: Draw a palette with squares filled with colors.
// break;
case CF_OWNERDISPLAY:
{
HGLOBAL hglb;
PPAINTSTRUCT pps;
hglb = GlobalAlloc(GMEM_MOVEABLE, sizeof(ps));
if (hglb)
{
pps = GlobalLock(hglb);
CopyMemory(pps, &ps, sizeof(ps));
GlobalUnlock(hglb);
SendClipboardOwnerMessage(TRUE, WM_PAINTCLIPBOARD,
(WPARAM)hWnd, (LPARAM)hglb);
GlobalFree(hglb);
}
break;
}
default:
{
DrawTextFromResource(Globals.hInstance, ERROR_UNSUPPORTED_FORMAT, hdc, &rc, DT_CENTER | DT_WORDBREAK | DT_NOPREFIX);
GetClientRect(hWnd, &rc);
DrawTextFromResource(Globals.hInstance, ERROR_UNSUPPORTED_FORMAT,
hdc, &rc, DT_CENTER | DT_WORDBREAK | DT_NOPREFIX);
break;
}
}
/* Restore the original colors */
SetTextColor(ps.hdc, crOldTextColor);
SetBkColor(ps.hdc, crOldBkColor);
EndPaint(hWnd, &ps);
CloseClipboard();
@@ -347,10 +384,33 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
{
case WM_CREATE:
{
TEXTMETRICW tm;
HDC hDC = GetDC(hWnd);
/*
* Note that the method with GetObjectW just returns
* the original parameters with which the font was created.
*/
if (GetTextMetricsW(hDC, &tm))
{
Globals.CharWidth = tm.tmMaxCharWidth; // tm.tmAveCharWidth;
Globals.CharHeight = tm.tmHeight + tm.tmExternalLeading;
}
ReleaseDC(hWnd, hDC);
Globals.hMenu = GetMenu(hWnd);
Globals.hWndNext = SetClipboardViewer(hWnd);
// For now, the Help dialog item is disabled because of lacking of HTML support
EnableMenuItem(Globals.hMenu, CMD_HELP, MF_BYCOMMAND | MF_GRAYED);
UpdateLinesToScroll(&Scrollstate);
UpdateDisplayMenu();
SetDisplayFormat(0);
DragAcceptFiles(hWnd, TRUE);
break;
}
@@ -363,61 +423,114 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
case WM_DESTROY:
{
ChangeClipboardChain(hWnd, Globals.hWndNext);
if (Globals.uDisplayFormat == CF_OWNERDISPLAY)
{
HGLOBAL hglb;
PRECT prc;
hglb = GlobalAlloc(GMEM_MOVEABLE, sizeof(*prc));
if (hglb)
{
prc = GlobalLock(hglb);
SetRectEmpty(prc);
GlobalUnlock(hglb);
SendClipboardOwnerMessage(TRUE, WM_SIZECLIPBOARD,
(WPARAM)hWnd, (LPARAM)hglb);
GlobalFree(hglb);
}
}
PostQuitMessage(0);
break;
}
case WM_PAINT:
{
ClipboardPaintHandler(hWnd, uMsg, wParam, lParam);
OnPaint(hWnd, wParam, lParam);
break;
}
case WM_KEYDOWN:
{
HandleKeyboardScrollEvents(hWnd, uMsg, wParam, lParam);
OnKeyScroll(hWnd, wParam, lParam, &Scrollstate);
break;
}
case WM_MOUSEWHEEL:
case WM_MOUSEHWHEEL:
{
HandleMouseScrollEvents(hWnd, uMsg, wParam, lParam, &Scrollstate);
OnMouseScroll(hWnd, uMsg, wParam, lParam, &Scrollstate);
break;
}
case WM_HSCROLL:
{
HandleHorizontalScrollEvents(hWnd, uMsg, wParam, lParam, &Scrollstate);
// NOTE: Windows uses an offset of 16 pixels
OnScroll(hWnd, SB_HORZ, wParam, 5, &Scrollstate);
break;
}
case WM_VSCROLL:
{
HandleVerticalScrollEvents(hWnd, uMsg, wParam, lParam, &Scrollstate);
// NOTE: Windows uses an offset of 16 pixels
OnScroll(hWnd, SB_VERT, wParam, 5, &Scrollstate);
break;
}
case WM_SIZE:
{
UpdateWindowScrollState(hWnd, Globals.hDspBmp, &Scrollstate);
RECT rc;
if ((Globals.uDisplayFormat == CF_METAFILEPICT) ||
(Globals.uDisplayFormat == CF_ENHMETAFILE) ||
(Globals.uDisplayFormat == CF_DSPENHMETAFILE) ||
(Globals.uDisplayFormat == CF_DSPMETAFILEPICT))
if (Globals.uDisplayFormat == CF_OWNERDISPLAY)
{
InvalidateRect(Globals.hMainWnd, NULL, FALSE);
HGLOBAL hglb;
PRECT prc;
hglb = GlobalAlloc(GMEM_MOVEABLE, sizeof(*prc));
if (hglb)
{
prc = GlobalLock(hglb);
if (wParam == SIZE_MINIMIZED)
SetRectEmpty(prc);
else
GetClientRect(hWnd, prc);
GlobalUnlock(hglb);
SendClipboardOwnerMessage(TRUE, WM_SIZECLIPBOARD,
(WPARAM)hWnd, (LPARAM)hglb);
GlobalFree(hglb);
}
break;
}
else if (!IsClipboardFormatSupported(Globals.uDisplayFormat))
GetClipboardDataDimensions(Globals.uDisplayFormat, &rc);
UpdateWindowScrollState(hWnd, rc.right, rc.bottom, &Scrollstate);
// NOTE: There still are little problems drawing
// the background when displaying clipboard text.
if (!IsClipboardFormatSupported(Globals.uDisplayFormat) ||
Globals.uDisplayFormat == CF_DSPTEXT ||
Globals.uDisplayFormat == CF_TEXT ||
Globals.uDisplayFormat == CF_OEMTEXT ||
Globals.uDisplayFormat == CF_UNICODETEXT)
{
InvalidateRect(Globals.hMainWnd, NULL, TRUE);
}
else
{
InvalidateRect(Globals.hMainWnd, NULL, FALSE);
}
break;
}
case WM_CHANGECBCHAIN:
{
/* Transmit through the clipboard viewer chain */
if ((HWND)wParam == Globals.hWndNext)
{
Globals.hWndNext = (HWND)lParam;
@@ -430,11 +543,32 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
break;
}
case WM_DESTROYCLIPBOARD:
break;
case WM_RENDERALLFORMATS:
{
/*
* When the user has cleared the clipboard via the DELETE command,
* we (clipboard viewer) become the clipboard owner. When we are
* subsequently closed, this message is then sent to us so that
* we get a chance to render everything we can. Since we don't have
* anything to render, just empty the clipboard.
*/
DeleteClipboardContent();
break;
}
case WM_RENDERFORMAT:
// TODO!
break;
case WM_DRAWCLIPBOARD:
{
UpdateDisplayMenu();
SetDisplayFormat(0);
/* Pass the message to the next window in clipboard viewer chain */
SendMessageW(Globals.hWndNext, uMsg, wParam, lParam);
break;
}
@@ -447,7 +581,7 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
}
else
{
ClipboardCommandHandler(hWnd, uMsg, wParam, lParam);
OnCommand(hWnd, uMsg, wParam, lParam);
}
break;
}
@@ -464,9 +598,36 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
break;
}
case WM_PALETTECHANGED:
{
/* Ignore if this comes from ourselves */
if ((HWND)wParam == hWnd)
break;
/* Fall back to WM_QUERYNEWPALETTE */
}
case WM_QUERYNEWPALETTE:
{
if (RealizeClipboardPalette(hWnd) != GDI_ERROR)
BOOL Success;
HDC hDC;
if (!OpenClipboard(Globals.hMainWnd))
return FALSE;
hDC = GetDC(hWnd);
if (!hDC)
{
CloseClipboard();
return FALSE;
}
Success = RealizeClipboardPalette(hDC);
ReleaseDC(hWnd, hDC);
CloseClipboard();
if (Success)
{
InvalidateRect(hWnd, NULL, TRUE);
UpdateWindow(hWnd);
@@ -475,19 +636,6 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
return FALSE;
}
case WM_PALETTECHANGED:
{
if ((HWND)wParam != hWnd)
{
if (RealizeClipboardPalette(hWnd) != GDI_ERROR)
{
InvalidateRect(hWnd, NULL, TRUE);
UpdateWindow(hWnd);
}
}
break;
}
case WM_SYSCOLORCHANGE:
{
SetDisplayFormat(Globals.uDisplayFormat);
@@ -498,7 +646,7 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
{
if (wParam == SPI_SETWHEELSCROLLLINES)
{
UpdateLinesToScroll();
UpdateLinesToScroll(&Scrollstate);
}
break;
}
@@ -508,6 +656,7 @@ static LRESULT WINAPI MainWndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lP
return DefWindowProc(hWnd, uMsg, wParam, lParam);
}
}
return 0;
}
@@ -526,6 +675,16 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLi
return 0;
}
switch (GetUserDefaultUILanguage())
{
case MAKELANGID(LANG_HEBREW, SUBLANG_DEFAULT):
SetProcessDefaultLayout(LAYOUT_RTL);
break;
default:
break;
}
ZeroMemory(&Globals, sizeof(Globals));
Globals.hInstance = hInstance;
@@ -545,6 +704,8 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLi
return 0;
}
ZeroMemory(&Scrollstate, sizeof(Scrollstate));
LoadStringW(hInstance, STRING_CLIPBOARD, szBuffer, ARRAYSIZE(szBuffer));
Globals.hMainWnd = CreateWindowExW(WS_EX_CLIENTEDGE | WS_EX_ACCEPTFILES,
szClassName,
@@ -574,10 +735,8 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLi
}
/* If the user provided a path to a clipboard data file, try to open it */
if (lpCmdLine != NULL && *lpCmdLine)
LoadClipboardDataFromFile(lpCmdLine);
UpdateLinesToScroll();
if (__argc >= 2)
LoadClipboardDataFromFile(__wargv[1]);
while (GetMessageW(&msg, 0, 0, 0))
{
@@ -588,10 +747,5 @@ int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPWSTR lpCmdLi
}
}
if (Globals.hDspBmp)
{
DeleteObject(Globals.hDspBmp);
}
return (int)msg.wParam;
}

View File

@@ -1,11 +1,18 @@
/*
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Resources file.
* COPYRIGHT: Copyright 2015-2018 Ricardo Hanke
*/
#include <windef.h>
#include <winuser.h>
#include "resources.h"
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Clipboard Viewer"
#define REACTOS_STR_INTERNAL_NAME "clipbrd"
#define REACTOS_STR_ORIGINAL_FILENAME "clipbrd.exe"
#define REACTOS_STR_FILE_DESCRIPTION "ReactOS Clipboard Viewer"
#define REACTOS_STR_INTERNAL_NAME "clipbrd"
#define REACTOS_STR_ORIGINAL_FILENAME "clipbrd.exe"
#include <reactos/version.rc>
CLIPBRD_ICON ICON "res/clipbrd.ico"
@@ -28,9 +35,18 @@ CLPFILE_ICON ICON "res/clpfile.ico"
#ifdef LANGUAGE_ES_ES
#include "lang/es-ES.rc"
#endif
#ifdef LANGUAGE_ET_EE
#include "lang/et-EE.rc"
#endif
#ifdef LANGUAGE_FR_FR
#include "lang/fr-FR.rc"
#endif
#ifdef LANGUAGE_HE_IL
#include "lang/he-IL.rc"
#endif
#ifdef LANGUAGE_IT_IT
#include "lang/it-IT.rc"
#endif
#ifdef LANGUAGE_PL_PL
#include "lang/pl-PL.rc"
#endif

View File

@@ -1,13 +1,32 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS Clipboard Viewer
* FILE: base/applications/clipbrd/cliputils.c
* PURPOSE: Clipboard helper functions.
* PROGRAMMERS: Ricardo Hanke
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Clipboard helper functions.
* COPYRIGHT: Copyright 2015-2018 Ricardo Hanke
* Copyright 2015-2018 Hermes Belusca-Maito
*/
#include "precomp.h"
LRESULT
SendClipboardOwnerMessage(
IN BOOL bUnicode,
IN UINT uMsg,
IN WPARAM wParam,
IN LPARAM lParam)
{
HWND hwndOwner;
hwndOwner = GetClipboardOwner();
if (!hwndOwner)
return GetLastError();
if (bUnicode)
return SendMessageW(hwndOwner, uMsg, wParam, lParam);
else
return SendMessageA(hwndOwner, uMsg, wParam, lParam);
}
static int
GetPredefinedClipboardFormatName(HINSTANCE hInstance,
UINT uFormat,
@@ -79,18 +98,36 @@ RetrieveClipboardFormatName(HINSTANCE hInstance,
PVOID lpszFormat,
UINT cch)
{
if (!GetPredefinedClipboardFormatName(hInstance, uFormat, Unicode, lpszFormat, cch))
ZeroMemory(lpszFormat, cch * (Unicode ? sizeof(WCHAR) : sizeof(CHAR)));
/* Check for predefined clipboard format */
if (GetPredefinedClipboardFormatName(hInstance, uFormat, Unicode, lpszFormat, cch) != 0)
return;
/* Check for owner-display format */
if (uFormat == CF_OWNERDISPLAY)
{
if (Unicode)
if (SendClipboardOwnerMessage(Unicode, WM_ASKCBFORMATNAME,
(WPARAM)cch, (LPARAM)lpszFormat) != 0)
{
if (!GetClipboardFormatNameW(uFormat, (LPWSTR)lpszFormat, cch))
if (Unicode)
LoadStringW(hInstance, STRING_CF_UNKNOWN, (LPWSTR)lpszFormat, cch);
}
else
{
if (!GetClipboardFormatNameA(uFormat, (LPSTR)lpszFormat, cch))
else
LoadStringA(hInstance, STRING_CF_UNKNOWN, (LPSTR)lpszFormat, cch);
}
return;
}
/* Fallback to registered clipboard format */
if (Unicode)
{
if (!GetClipboardFormatNameW(uFormat, (LPWSTR)lpszFormat, cch))
LoadStringW(hInstance, STRING_CF_UNKNOWN, (LPWSTR)lpszFormat, cch);
}
else
{
if (!GetClipboardFormatNameA(uFormat, (LPSTR)lpszFormat, cch))
LoadStringA(hInstance, STRING_CF_UNKNOWN, (LPSTR)lpszFormat, cch);
}
}
@@ -112,13 +149,22 @@ void DeleteClipboardContent(void)
UINT GetAutomaticClipboardFormat(void)
{
static UINT uFormatList[] = {
static UINT uFormatList[] =
{
CF_OWNERDISPLAY,
CF_UNICODETEXT,
CF_TEXT,
CF_OEMTEXT,
CF_ENHMETAFILE,
CF_METAFILEPICT,
CF_DIBV5,
CF_DIB,
CF_BITMAP
CF_BITMAP,
CF_DSPTEXT,
CF_DSPBITMAP,
CF_DSPMETAFILEPICT,
CF_DSPENHMETAFILE,
CF_PALETTE
};
return GetPriorityClipboardFormat(uFormatList, ARRAYSIZE(uFormatList));
@@ -128,12 +174,16 @@ BOOL IsClipboardFormatSupported(UINT uFormat)
{
switch (uFormat)
{
case CF_OWNERDISPLAY:
case CF_UNICODETEXT:
case CF_TEXT:
case CF_OEMTEXT:
case CF_BITMAP:
case CF_ENHMETAFILE:
case CF_METAFILEPICT:
case CF_DIB:
case CF_DIBV5:
case CF_HDROP:
{
return TRUE;
}
@@ -144,3 +194,179 @@ BOOL IsClipboardFormatSupported(UINT uFormat)
}
}
}
SIZE_T
GetLineExtentW(
IN LPCWSTR lpText,
OUT LPCWSTR* lpNextLine)
{
LPCWSTR ptr;
/* Find the next line of text (lpText is NULL-terminated) */
/* For newlines, focus only on '\n', not on '\r' */
ptr = wcschr(lpText, L'\n'); // Find the end of this line.
if (ptr)
{
/* We have the end of this line, go to the next line (ignore the endline in the count) */
*lpNextLine = ptr + 1;
}
else
{
/* This line was the last one, go pointing to the terminating NULL */
ptr = lpText + wcslen(lpText);
*lpNextLine = ptr;
}
return (ptr - lpText);
}
SIZE_T
GetLineExtentA(
IN LPCSTR lpText,
OUT LPCSTR* lpNextLine)
{
LPCSTR ptr;
/* Find the next line of text (lpText is NULL-terminated) */
/* For newlines, focus only on '\n', not on '\r' */
ptr = strchr(lpText, '\n'); // Find the end of this line.
if (ptr)
{
/* We have the end of this line, go to the next line (ignore the endline in the count) */
*lpNextLine = ptr + 1;
}
else
{
/* This line was the last one, go pointing to the terminating NULL */
ptr = lpText + strlen(lpText);
*lpNextLine = ptr;
}
return (ptr - lpText);
}
BOOL GetClipboardDataDimensions(UINT uFormat, PRECT pRc)
{
SetRectEmpty(pRc);
if (!OpenClipboard(Globals.hMainWnd))
{
return FALSE;
}
switch (uFormat)
{
case CF_DSPBITMAP:
case CF_BITMAP:
{
HBITMAP hBitmap;
BITMAP bmp;
hBitmap = (HBITMAP)GetClipboardData(CF_BITMAP);
GetObjectW(hBitmap, sizeof(bmp), &bmp);
SetRect(pRc, 0, 0, bmp.bmWidth, bmp.bmHeight);
break;
}
case CF_DIB:
case CF_DIBV5:
{
HGLOBAL hGlobal;
LPBITMAPINFOHEADER lpInfoHeader;
hGlobal = GetClipboardData(uFormat);
if (!hGlobal)
break;
lpInfoHeader = GlobalLock(hGlobal);
if (!lpInfoHeader)
break;
if (lpInfoHeader->biSize == sizeof(BITMAPCOREHEADER))
{
LPBITMAPCOREHEADER lpCoreHeader = (LPBITMAPCOREHEADER)lpInfoHeader;
SetRect(pRc, 0, 0,
lpCoreHeader->bcWidth,
lpCoreHeader->bcHeight);
}
else if ((lpInfoHeader->biSize == sizeof(BITMAPINFOHEADER)) ||
(lpInfoHeader->biSize == sizeof(BITMAPV4HEADER)) ||
(lpInfoHeader->biSize == sizeof(BITMAPV5HEADER)))
{
SetRect(pRc, 0, 0,
lpInfoHeader->biWidth,
/* NOTE: biHeight < 0 for bottom-up DIBs, or > 0 for top-down DIBs */
(lpInfoHeader->biHeight > 0) ? lpInfoHeader->biHeight
: -lpInfoHeader->biHeight);
}
else
{
/* Invalid format */
}
GlobalUnlock(hGlobal);
break;
}
case CF_DSPTEXT:
case CF_TEXT:
case CF_OEMTEXT:
case CF_UNICODETEXT:
{
HDC hDC;
HGLOBAL hGlobal;
PVOID lpText, ptr;
DWORD dwSize;
SIZE txtSize = {0, 0};
SIZE_T lineSize;
hGlobal = GetClipboardData(uFormat);
if (!hGlobal)
break;
lpText = GlobalLock(hGlobal);
if (!lpText)
break;
hDC = GetDC(Globals.hMainWnd);
/* Find the size of the rectangle enclosing the text */
for (;;)
{
if (uFormat == CF_UNICODETEXT)
{
if (*(LPCWSTR)lpText == UNICODE_NULL)
break;
lineSize = GetLineExtentW(lpText, (LPCWSTR*)&ptr);
dwSize = GetTabbedTextExtentW(hDC, lpText, lineSize, 0, NULL);
}
else
{
if (*(LPCSTR)lpText == ANSI_NULL)
break;
lineSize = GetLineExtentA(lpText, (LPCSTR*)&ptr);
dwSize = GetTabbedTextExtentA(hDC, lpText, lineSize, 0, NULL);
}
txtSize.cx = max(txtSize.cx, LOWORD(dwSize));
txtSize.cy += HIWORD(dwSize);
lpText = ptr;
}
ReleaseDC(Globals.hMainWnd, hDC);
GlobalUnlock(hGlobal);
SetRect(pRc, 0, 0, txtSize.cx, txtSize.cy);
break;
}
default:
{
break;
}
}
CloseClipboard();
return TRUE;
}

View File

@@ -1,11 +1,20 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS Clipboard Viewer
* FILE: base/applications/clipbrd/cliputils.h
* PURPOSE: Clipboard helper functions.
* PROGRAMMERS: Ricardo Hanke
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Clipboard helper functions.
* COPYRIGHT: Copyright 2015-2018 Ricardo Hanke
* Copyright 2015-2018 Hermes Belusca-Maito
*/
#pragma once
LRESULT
SendClipboardOwnerMessage(
IN BOOL bUnicode,
IN UINT uMsg,
IN WPARAM wParam,
IN LPARAM lParam);
void
RetrieveClipboardFormatName(HINSTANCE hInstance,
UINT uFormat,
@@ -16,3 +25,15 @@ RetrieveClipboardFormatName(HINSTANCE hInstance,
void DeleteClipboardContent(void);
UINT GetAutomaticClipboardFormat(void);
BOOL IsClipboardFormatSupported(UINT uFormat);
SIZE_T
GetLineExtentW(
IN LPCWSTR lpText,
OUT LPCWSTR* lpNextLine);
SIZE_T
GetLineExtentA(
IN LPCSTR lpText,
OUT LPCSTR* lpNextLine);
BOOL GetClipboardDataDimensions(UINT uFormat, PRECT pRc);

View File

@@ -1,10 +1,9 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS Clipboard Viewer
* FILE: base/applications/clipbrd/fileutils.c
* PURPOSE: Clipboard file format helper functions.
* PROGRAMMERS: Ricardo Hanke
* Hermes Belusca-Maito
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Clipboard file format helper functions.
* COPYRIGHT: Copyright 2015-2018 Ricardo Hanke
* Copyright 2015-2018 Hermes Belusca-Maito
*/
#include "precomp.h"
@@ -399,22 +398,22 @@ void ReadClipboardFile(LPCWSTR lpFileName)
break;
}
case CF_BITMAP:
case CF_DSPBITMAP:
case CF_BITMAP:
{
bResult = ClipboardReadBitmap(hFile, dwOffData, dwLenData);
break;
}
case CF_METAFILEPICT:
case CF_DSPMETAFILEPICT:
case CF_METAFILEPICT:
{
bResult = ClipboardReadMetafile(hFile, dwOffData, dwLenData);
break;
}
case CF_ENHMETAFILE:
case CF_DSPENHMETAFILE:
case CF_ENHMETAFILE:
{
bResult = ClipboardReadEnhMetafile(hFile, dwOffData, dwLenData);
break;

View File

@@ -1,15 +1,18 @@
/*
* COPYRIGHT: See COPYING in the top level directory
* PROJECT: ReactOS Clipboard Viewer
* FILE: base/applications/clipbrd/fileutils.h
* PURPOSE: Clipboard file format helper functions.
* PROGRAMMERS: Ricardo Hanke
* Hermes Belusca-Maito
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Clipboard file format helper functions.
* COPYRIGHT: Copyright 2015-2018 Ricardo Hanke
* Copyright 2015-2018 Hermes Belusca-Maito
*/
#pragma once
/* Clipboard file format signatures */
#define CLIP_FMT_31 0xC350
#define CLIP_FMT_NT 0xC351
#define CLIP_FMT_BK 0xC352
#define MAX_FMT_NAME_LEN 79
/*

View File

@@ -0,0 +1,65 @@
LANGUAGE LANG_ESTONIAN, SUBLANG_DEFAULT
ID_ACCEL ACCELERATORS
BEGIN
VK_DELETE, CMD_DELETE, VIRTKEY
END
MAIN_MENU MENU
BEGIN
POPUP "&Fail"
BEGIN
MENUITEM "&Ava...", CMD_OPEN
MENUITEM "Salvesta &nimega...", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "V&älju", CMD_EXIT
END
POPUP "&Redigeeri"
BEGIN
MENUITEM "&Kustuta\tDel", CMD_DELETE
END
POPUP "&Kuva"
BEGIN
MENUITEM "&Automaatne", CMD_AUTOMATIC
END
POPUP "&Spikker"
BEGIN
MENUITEM "&Spikriteemad", CMD_HELP
MENUITEM SEPARATOR
MENUITEM "&Teave", CMD_ABOUT
END
END
STRINGTABLE
BEGIN
STRING_CLIPBOARD "Lõikelaua vaatur"
STRING_CLIPFILE "Lõikelaua element"
STRING_DELETE_MSG "Puhastada lõikelaua sisu?"
STRING_DELETE_TITLE "Puhasta lõikelauda"
STRING_FORMAT_NT "Lõikelaua failid ReactOS'i jaoks (*.clp)"
STRING_FORMAT_GEN "Lõikelaua failid (*.clp)"
END
STRINGTABLE
BEGIN
STRING_CF_UNKNOWN "Tundmatu vorming"
STRING_CF_TEXT "Tekst"
STRING_CF_BITMAP "Bittraster"
STRING_CF_OEMTEXT "OEM tekst"
STRING_CF_UNICODETEXT "Unicode tekst"
STRING_CF_DIB "DIB bittraster"
STRING_CF_LOCALE "Lokaadi andmed"
STRING_CF_ENHMETAFILE "Täiustatud metafail"
STRING_CF_METAFILEPICT "Metafail"
STRING_CF_PALETTE "Värvipalett"
STRING_CF_DIBV5 "DIB bittraster (Versioon 5)"
STRING_CF_SYLK "Sümboolse lingi vorming"
STRING_CF_DIF "Andmevahetuse vorming"
STRING_CF_HDROP "Pukseeritud andmed"
END
STRINGTABLE
BEGIN
ERROR_UNSUPPORTED_FORMAT "Lõikelaud sisaldab kuvamatut andmevormingut."
ERROR_INVALID_FILE_FORMAT "Valitud fail ei ole sobiv lõikelaua fail."
END

View File

@@ -0,0 +1,65 @@
LANGUAGE LANG_HEBREW, SUBLANG_DEFAULT
ID_ACCEL ACCELERATORS
BEGIN
VK_DELETE, CMD_DELETE, VIRTKEY
END
MAIN_MENU MENU
BEGIN
POPUP "&קובץ"
BEGIN
MENUITEM "&פתיחה...", CMD_OPEN
MENUITEM "&שמירה בשם...", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "&יציאה", CMD_EXIT
END
POPUP "&עריכה"
BEGIN
MENUITEM "&מחק\tDel", CMD_DELETE
END
POPUP "&תצוגה"
BEGIN
MENUITEM "&אוטומטי", CMD_AUTOMATIC
END
POPUP "ע&זרה"
BEGIN
MENUITEM "&נושאי עזרה", CMD_HELP
MENUITEM SEPARATOR
MENUITEM "&אודות", CMD_ABOUT
END
END
STRINGTABLE
BEGIN
STRING_CLIPBOARD "צופה לוח גזירה"
STRING_CLIPFILE "Clipboard Element"
STRING_DELETE_MSG "לנקות את לוח הגזירה?"
STRING_DELETE_TITLE "ניקוי לוח גזירה"
STRING_FORMAT_NT "קבצי לוח גזירה של ReactOS (*.clp)"
STRING_FORMAT_GEN "קבצי לוח גזירה (*.clp)"
END
STRINGTABLE
BEGIN
STRING_CF_UNKNOWN "תבנית לא ידועה"
STRING_CF_TEXT "טקסט"
STRING_CF_BITMAP "מפת סיבים"
STRING_CF_OEMTEXT "טקסט OEM"
STRING_CF_UNICODETEXT "טקסט יוניקוד"
STRING_CF_DIB "DIB Bitmap"
STRING_CF_LOCALE "Locale Data"
STRING_CF_ENHMETAFILE "Enhanced Metafile"
STRING_CF_METAFILEPICT "Metafile"
STRING_CF_PALETTE "ערכת צבעים"
STRING_CF_DIBV5 "DIB Bitmap (Version 5)"
STRING_CF_SYLK "Symbolic Link Format"
STRING_CF_DIF "Data Interchange Format"
STRING_CF_HDROP "Drop Data"
END
STRINGTABLE
BEGIN
ERROR_UNSUPPORTED_FORMAT "לוח הגזירה מכיל נתונים בתבנית שלא ניתנת להצגה."
ERROR_INVALID_FILE_FORMAT "הקובץ אינו קובץ לוח גזירה תקין."
END

View File

@@ -0,0 +1,72 @@
/*
* PROJECT: ReactOS Clipboard Viewer
* LICENSE: GPL-2.0+ (https://spdx.org/licenses/GPL-2.0+)
* PURPOSE: Implementation of Italian language for Clipboard Viewer
* COPYRIGHT: Copyright 2018 Bișoc George (fraizeraust99 at gmail dot com)
*/
LANGUAGE LANG_ITALIAN, SUBLANG_NEUTRAL
ID_ACCEL ACCELERATORS
BEGIN
VK_DELETE, CMD_DELETE, VIRTKEY
END
MAIN_MENU MENU
BEGIN
POPUP "&File"
BEGIN
MENUITEM "&Apri...", CMD_OPEN
MENUITEM "Salva &Come...", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "U&scire", CMD_EXIT
END
POPUP "&Modifica"
BEGIN
MENUITEM "&Cancella\tDel", CMD_DELETE
END
POPUP "&Display"
BEGIN
MENUITEM "&Automatico", CMD_AUTOMATIC
END
POPUP "&Aiuto"
BEGIN
MENUITEM "&Argomenti Guida", CMD_HELP
MENUITEM SEPARATOR
MENUITEM "&Informazioni", CMD_ABOUT
END
END
STRINGTABLE
BEGIN
STRING_CLIPBOARD "Visualizzatore di Clipboard"
STRING_CLIPFILE "Elemento Clipboard"
STRING_DELETE_MSG "Cancella i contenuti del Clipboard?"
STRING_DELETE_TITLE "Cancella Clipboard"
STRING_FORMAT_NT "I file del Clipboard di ReactOS (*.clp)"
STRING_FORMAT_GEN "I file Clipboard (*.clp)"
END
STRINGTABLE
BEGIN
STRING_CF_UNKNOWN "Formato Sconosciuto"
STRING_CF_TEXT "Testo"
STRING_CF_BITMAP "Bitmap"
STRING_CF_OEMTEXT "Testo OEM"
STRING_CF_UNICODETEXT "Testo Unicode"
STRING_CF_DIB "DIB Bitmap"
STRING_CF_LOCALE "Data Locale"
STRING_CF_ENHMETAFILE "Metafile Arricchito"
STRING_CF_METAFILEPICT "Metafile"
STRING_CF_PALETTE "Palette di Colori"
STRING_CF_DIBV5 "DIB Bitmap (Versione 5)"
STRING_CF_SYLK "Formato a Collegamento Simbolico"
STRING_CF_DIF "Formato di Data di Interscambio"
STRING_CF_HDROP "Abbandona le Informazioni"
END
STRINGTABLE
BEGIN
ERROR_UNSUPPORTED_FORMAT "Il Clipboard contiene informazioni in formato data, che non può essere visualizzato."
ERROR_INVALID_FILE_FORMAT "Il file selezionato non è un file di tipo clipboard valido."
END

View File

@@ -42,20 +42,20 @@ END
STRINGTABLE
BEGIN
STRING_CF_UNKNOWN "Unknown Format"
STRING_CF_TEXT "Text"
STRING_CF_BITMAP "Bitmap"
STRING_CF_OEMTEXT "OEM Text"
STRING_CF_UNICODETEXT "Unicode Text"
STRING_CF_DIB "DIB Bitmap"
STRING_CF_LOCALE "Locale Data"
STRING_CF_ENHMETAFILE "Enhanced Metafile"
STRING_CF_METAFILEPICT "Metafile"
STRING_CF_PALETTE "Color Palette"
STRING_CF_DIBV5 "DIB Bitmap (Version 5)"
STRING_CF_SYLK "Symbolic Link Format"
STRING_CF_DIF "Data Interchange Format"
STRING_CF_HDROP "Drop Data"
STRING_CF_UNKNOWN "Nieznany format"
STRING_CF_TEXT "Tekst"
STRING_CF_BITMAP "Mapa bitowa"
STRING_CF_OEMTEXT "Tekst OWEM"
STRING_CF_UNICODETEXT "Tekst Unicode"
STRING_CF_DIB "Mapa bitowa DIB"
STRING_CF_LOCALE "Dane lokalizacji"
STRING_CF_ENHMETAFILE "Rozszerzony metaplik"
STRING_CF_METAFILEPICT "Metaplik"
STRING_CF_PALETTE "Paleta kolorów"
STRING_CF_DIBV5 "Mapa bitowa DIB (wersja 5)"
STRING_CF_SYLK "Format lącza symbolicznego"
STRING_CF_DIF "Format wymiany danych"
STRING_CF_HDROP "Przeciągnij-upuść dane"
END
STRINGTABLE

View File

@@ -1,4 +1,4 @@
/* Ștefan Fulea (stefan dot fulea at mail dot md) */
/* Translator: Ștefan Fulea (stefan dot fulea at mail dot com) */
LANGUAGE LANG_ROMANIAN, SUBLANG_NEUTRAL
ID_ACCEL ACCELERATORS

View File

@@ -1,4 +1,4 @@
/* TRANSLATOR: 2015, 2016 Erdem Ersoy (eersoy93) (erdemersoy@live.com) */
/* TRANSLATOR: 2015, 2016 Erdem Ersoy (eersoy93) (erdemersoy [at] erdemersoy [dot] net), 2018 Ercan Ersoy (ercanersoy) (ercanersoy [at] ercanersoy [dot] net) */
LANGUAGE LANG_TURKISH, SUBLANG_DEFAULT
@@ -9,10 +9,10 @@ END
MAIN_MENU MENU
BEGIN
POPUP "&Kütük"
POPUP "&Dosya"
BEGIN
MENUITEM "&Aç...", CMD_OPEN
MENUITEM "A&yrı Sakla...", CMD_SAVE_AS
MENUITEM "Farklı &Kaydet...", CMD_SAVE_AS
MENUITEM SEPARATOR
MENUITEM "&Çıkış", CMD_EXIT
END
@@ -28,7 +28,7 @@ BEGIN
BEGIN
MENUITEM "&Yardım Konuları", CMD_HELP
MENUITEM SEPARATOR
MENUITEM "&Üzerine", CMD_ABOUT
MENUITEM "&Hakkında", CMD_ABOUT
END
END
@@ -52,7 +52,7 @@ BEGIN
STRING_CF_DIB "DIB Bit Eşlem"
STRING_CF_LOCALE "Yerli Veri"
STRING_CF_ENHMETAFILE "Geliştirilmiş Metafile"
STRING_CF_METAFILEPICT "Metafile"
STRING_CF_METAFILEPICT "Meta dosyası"
STRING_CF_PALETTE "Renklik"
STRING_CF_DIBV5 "DIB Bit Eşlem (Sürüm 5)"
STRING_CF_SYLK "Simgelik Bağlantı Biçimi"
@@ -63,5 +63,5 @@ END
STRINGTABLE
BEGIN
ERROR_UNSUPPORTED_FORMAT "Pano görüntülenemeyen bir biçimdeki veri içeriyor."
ERROR_INVALID_FILE_FORMAT "Seçili kütük geçerli bir pano kütüğü değil."
ERROR_INVALID_FILE_FORMAT "Seçili dosya geçerli bir pano dosyası değil."
END

Some files were not shown because too many files have changed in this diff Show More