• last updated 52 mins ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
[GDI32_APITEST] Improve GetFontResourceInfoW tests. Patch by Katayama Hirofumi MZ. ROSTESTS-269 #resolve #comment Thanks!
    • binary
    /trunk/rostests/apitests/gdi32/ExampleFont.ttf
[APPHELP] Initial implementation of ApphelpCheckRunAppEx. CORE-10368
[NTDLL:LDR]

- Fix logic error in LdrpInit that caused us to busy-wait instead of sleep. This makes LibreOffice start up in a few seconds instead of sitting around at 100% CPU for a minute or two.

CORE-13268 #resolve

    • -2
    • +2
    /trunk/reactos/dll/ntdll/ldr/ldrinit.c
[RTL]

- Do not change RTL_HANDLE_TABLE::CommittedHandles when committing a new page of handle entries. This value must always point to the beginning of the allocation, to correctly track the entire committed range. Fixes LibreOffice Writer (and ntdll_apitest) crash.

CORE-13271 #resolve

[NTDLL_APITEST]

- Add a test for RTL handle tables

CORE-13271

    • -0
    • +201
    /trunk/rostests/apitests/ntdll/RtlHandle.c
    • -0
    • +2
    /trunk/rostests/apitests/ntdll/testlist.c
[SCSIPORT]: Fixes:

- In SpiScanAdapter(), after an SCSI INQUIRY command has succeeded and we are setting up a LUN extension structure,

cache in its InquiryData member the inquiry data retrieved from the INQUIRY command (alternatively we might just cache

a pointer to a valid "LunInfo" since the latter are also cached elsewhere).

- This allows SpiBuildDeviceMap(), which is called just after SpiScanAdapter(), to correctly report in the registry SCSI tree

the correct Identifier and DeviceType values for the enumerated logical units.

- Use ExFreePoolWithTag in SpiScanAdapter().

[SCSIPORT]: Code formatting only.
[SCSIPORT]: Fixes + documentation:

- In SpiSendInquiry():

* use ExFreePoolWithTag;

* if IoBuildDeviceIoControlRequest() fails, exit correctly the loop so that the allocated buffers are cleaned up;

- In SpiBuildDeviceMap():

* support new peripheral type names, as documented in the links in the comments;

* fix the "CommunicationsPeripheral" name (communication'S') as documented, and as done in windows' scsiport driver.

[SCSIPORT]: Code formatting in the functions I'm going to touch next (in addition, add few "continue;" inside some loops so that I can reduce the indent level of code blocks).
[UXTHEME] -Use and RTL handle table for HTHEME handles. In this way we can ensure that a value we take is valid even if it is non NULL. We can also detect leaks.
    • -8
    • +18
    /trunk/reactos/dll/win32/uxtheme/draw.c
    • -14
    • +12
    /trunk/reactos/dll/win32/uxtheme/metric.c
    • -26
    • +41
    /trunk/reactos/dll/win32/uxtheme/property.c
    • -13
    • +91
    /trunk/reactos/dll/win32/uxtheme/system.c
    • -0
    • +12
    /trunk/reactos/dll/win32/uxtheme/uxthemep.h
[UXTHEME] Greatly reduce the number of times we open the theme data for the non client area.

- Implement OTD_NONCLIENT for OpenThemeDataEx and OpenThemeDataFromFile.

- Open the WINDOW or the SCROLLBAR theme classes only when needed. Use OpenThemeDataEx instead of the internal MSSTYLES_OpenThemeClass. Cache the open theme in the WND_DATA for later use.

    • -5
    • +5
    /trunk/reactos/dll/win32/uxtheme/nonclient.c
    • -4
    • +4
    /trunk/reactos/dll/win32/uxtheme/system.c
    • -5
    • +68
    /trunk/reactos/dll/win32/uxtheme/themehooks.c
Forgot to add the cmake changes
[FLTMGR]

- Add a rather messy header that I've been slowly building as I'm starting to understand the internals.

- Mostly taken from the MS PDBs and info gained from OSR and Alex Carp's blog. (https://fsfilters.blogspot.co.uk)

    • -0
    • +284
    /trunk/reactos/drivers/filters/fltmgr/fltmgrint.h
[FLTMGR]

- Implement FltCreateCommunicationPort, FltCloseCommunicationPort, FltCloseClientPort, and stub FltSendMessage

- Add two new object types for the server port and client ports

- Implement object type callbacks for closing and deleting these new ports

- Create the comms object and create the symbolic link (FltMgrMsg) to allow usermode to open a handle to the comms layer (aka FilterConnectCommunicationPort)

- Although untested, the comms layer objects should be mostly setup, and we should be able to open a connection from usermode.

    • -0
    • +373
    /trunk/reactos/drivers/filters/fltmgr/Messaging.c
[FLTMGR}

- Implement FltAcquirePushLockExclusive, FltAcquirePushLockShared and FltReleasePushLock. Lifted from ntos' internal pushlock routines.

- Implement FltpObjectPointerReference and partially implement FltpObjectPointerDerference

    • -0
    • +113
    /trunk/reactos/drivers/filters/fltmgr/Object.c
[UXTHEME] -Rename WND_CONTEXT to WND_DATA to avoid confusion with the DRAW_CONTEXT. The WND_DATA is information valid throughout the life of a window and DRAW_CONTEXT is information throughout a draw operation in the non client area of the window.
    • -66
    • +66
    /trunk/reactos/dll/win32/uxtheme/themehooks.c
    • -21
    • +21
    /trunk/reactos/dll/win32/uxtheme/nonclient.c
    • -45
    • +45
    /trunk/reactos/dll/win32/uxtheme/ncscrollbar.c
[FLTMGR]

- Add the missing IOCTLs that were added to fltlib

    • -15
    • +43
    /trunk/reactos/drivers/filters/fltmgr/Dispatch.c
[NTOS]: Use the correct access rights for ZwOpenDirectoryObject call.
    • -1
    • +1
    /trunk/reactos/ntoskrnl/fstub/disksup.c
[NTOS]: Close an opened handle after usage.
    • -1
    • +4
    /trunk/reactos/ntoskrnl/fstub/disksup.c
[FLTLIB]

- Implement FilterConnectCommunicationPort

- Add the remaining IOCTLs fltlib sends to the fltmgr

    • -0
    • +6
    /trunk/reactos/dll/win32/fltlib/fltlib.h
    • -0
    • +2
    /trunk/reactos/dll/win32/fltlib/CMakeLists.txt
    • -0
    • +180
    /trunk/reactos/dll/win32/fltlib/message.c
    • -71
    • +0
    /trunk/reactos/dll/win32/fltlib/stubs.c
    • -1
    • +13
    /trunk/reactos/dll/win32/fltlib/fltlib.c
[INTL]

- Add custom draw function for the codepages listview.

- User gray text color for codepages that cannot be uninstalled.

CORE-13242

    • -6
    • +60
    /trunk/reactos/dll/cpl/intl/advanced.c
[VIDEOPRT]

- Guard Ke386CallBios calls against concurrent execution.

CORE-13214

[UXTHEME] -Remove a debug print that was never meant to be committed.
    • -2
    • +0
    /trunk/reactos/dll/win32/uxtheme/draw.c
[UXTHEME] -Apply some suggestions by Thomas.
    • -3
    • +3
    /trunk/reactos/dll/win32/uxtheme/nonclient.c
[MSTSC] Addendum to r74577. CORE-13263
[MSTSC] Fix BSOD when we can't acquire context from CryptoAPI. CORE-13263 #resolve
[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.

- As overviewed in r74573, move 'TempPartition' and 'FormatState' back to USETUP.

    • -0
    • +15
    /branches/setup_improvements/base/setup/usetup/osdetect.h
[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.

- Use the previously-introduced 'PreparePartitionForFormatting()' function; set the FormatState of the newly-formatted partition to Formatted.

- 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()

- Remove the hackish call to CreateFileSystemList() in SelectFileSystemPage().

- Turn both CheckUnattendedSetup() and UpdateKBLayout() into static functions.

- Put large "case"-blocks into brackets.

- Fix the code of ScsiControllerPage() so that it can be compiled if needed, and add a dummy OemDriverPage().

[USETUP]: Fix some spacings in the french translation.
[USETUP]: Consolidate the PartList module of the setuplib.

- 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...).