- Add a stub implementation for IActiveIMMMessagePumpOwner.
- Use #ifdef __REACTOS__ to mark a ROS-diff
CORE-4953 #resolve
svn path=/trunk/; revision=68275
- Mark the page as being on the standby list before dereferencing it in MmFreePagesFromMdl. Since the PFN is marked as deleted, MiDecrementReferenceCount will correctly insert it into the free list, but this is required to satisfy MiDecrementReferenceCount's sanity check.
CORE-9877 #resolve
svn path=/trunk/; revision=68273
- Add support for selecting any device when refreshing the view. This allows us to re-select a device after it's been enabled instead of collapsing the tree and losing track of what you did.
- Plug some memory leaks
- HeapAlloc -> new
svn path=/trunk/; revision=68272
Don't attempt to read the unnamed stream of the $DATA attribute of each file matching:
- We don't need such attribute later on
- In case there's no such unammed stream, finding the file fails, whereas the file really exist
This fixes (at least here) browsing Win7 NTFS system drives, where our driver was always failing on pagefile.sys
svn path=/trunk/; revision=68268
- Add basic functionality for enabling and disabling devices. Make it accessible via the toolbar and main menu
- Implement checking whether a device has a problem and if a device can be uninstalled
- Implement getting, setting and removing device flags in the install params
- Fix creating and destroying the (currently empty) context menu
svn path=/trunk/; revision=68265
- ReAllocateLayoutBuffer: Write all new partition table entries to the disk.
- UpdateDiskLayout:
- Create link entries for logical partitions.
- Wipe unused logical partiton table entries.
svn path=/trunk/; revision=68257
- Fix a GCC warning (error on Macs) concerning the printf "%Iu" specifier.
- To make sure data included by bin2c, that need to be interpreted as a (long) string, is correctly NULL-terminated, introduce an output format called "STR": this creates a long character array using the "\xXX" format.
- To circumvent a silly limitation of MSVC (all versions?) about the maximum length (65535 bytes) of a char string (aka. char MyArray[] = "...my_long_string...";), introduced yet another output format called "BINSTR" which creates an array of bytes that is NULL-terminated (aka. char MyArray[] = {0xde, 0xad, 0xbe, 0xef, 0x00};).
- Finally, the output format "BIN" is the regular bin2c format (simple array of bytes).
[HAL_PCIDATA][FREELDR_INSTALL]
Use the above-described functionality (for HAL_PCIDATA, use BINSTR format because the PciVendors data is otherwise too large to be stored in "char_string" format).
svn path=/trunk/; revision=68255
- Reset FunctionDescriptorCount to zero in USBCCGP_LegacyEnum since the function can be called multiple times
CORE-9226
svn path=/trunk/; revision=68250
- Flush cout after each write as already done by Colin in r66855, per ROSTESTS-158
- Use DbgPrint instead of OutputDebugStringA again because the latter only calls the former anyway
Fixes test summary lines not being recognized by Testman, especially on VMware.
A little summary so we don't keep going back and forth with this function:
1) Only writing complete lines is required to that the output doesn't mix with debug output from other components. See r55618
2) OutputDebugStringA splits its input into 512-byte-sized blocks with no regard for line breaks, so using it with strings larger than 512 bytes breaks (1).
3) OutputDebugStringA eventually calls DbgPrint("%s", string) anyway so using it with chunks smaller than 512 bytes is not an optimization
As a result, yes this function MUST split up the lines itself, this can't be optimized or simplified away! kthxbye
ROSTESTS-178 #resolve
svn path=/trunk/; revision=68246
In case of directory enumeration, validate the record earlier to really prevent any potentiel buffer overflow
CORE-9254
svn path=/trunk/; revision=68244
Revamp r68233:
- Don't duplicate code, implement checks in a helper function
- When checking name content, do it earlier for better performances
- Add extra checks to prevent a potential buffer overflow in case of Joliet names with illformed entries
CORE-9254
svn path=/trunk/; revision=68239
UpdateDiskLayout:
- Resize the layout buffer if necessary.
- Start writing logical partitions to the disk.
- Disable the code that wipes unused table entries. May be enabled later.
Right now, you can only create one logical partition because the link entries are not created yet.
svn path=/trunk/; revision=68235
Add a few sanity checks to our handling of ISO 9660 / Joliet:
- Null name entries are forbidden
- Degenerated entries (mistmaching sizes) reveal broken layout
In both cases, the lookup for a file is aborted and the CD considered as corrupted by the FSD.
explorer displays empty CDs then.
CORE-9254 #resolve #comment Fixed with r68233
svn path=/trunk/; revision=68233
- Add basic implementations of RtlApplicationVerifierStop and RtlCopyMappedMemory for the benefit of some Windows dlls
CORE-9857 CORE-9858 #resolve
svn path=/trunk/; revision=68232
UpdateDiskLayout:
- Set the proper HiddenSectors value.
- Fix counting the PartitonaNumber.
UpdatePartitionNumbers() has become obsolete. Remove it.
svn path=/trunk/; revision=68226
- Add a test for SystemFlagsInformation that demonstrates the parameter checks performed by NtQuerySystemInformation/NtSetSystemInformation
CORE-9849
svn path=/trunk/; revision=68225
As shown by the non commited yet tests from Thomas, we have to check for privilege in NtSetSystemInformation - SystemFlagsInformation
svn path=/trunk/; revision=68224
- Probe input buffer for read in NtSetSystemInformation() and call the helpers function in a PSEH block
- For the NtSetSytemInformation - SystemSessionCreate specific case, as we return session ID, probe for write directly there.
svn path=/trunk/; revision=68223