- Add DECLARE_NO_REGISTRY
- Fix invalid pointer use and add an overloaded assignment operator in CComDynamicUnkArray
- Add UpdateWindow to the CWindow class
- Add missing error checks
Changes by Andrew Hill <ash77 at reactos dot org>
svn path=/trunk/; revision=51763
Commit some stuff reviewed by aleksey long ago
- get rid of LastEntryInSegment in HEAP_SEGMENT struct
- Simplify code for page commit
- Simplify code for splitting entries
svn path=/trunk/; revision=51757
- Implement __chkstk_ms for x86 and amd64
- amd64 code is based on code by Kai Tietz and Richard Henderson
- x86 code is based on old __chkstk implementation and code by Kai Tietz and Richard Henderson
- Function is required by newer gcc versions
svn path=/trunk/; revision=51747
Merge r51273 from cmake branch:
The crt library must provide a and w version of the functions and not rely to _UNICODE being set or not
svn path=/trunk/; revision=51713
- Update to version 2.7.8. Patch by Carlo Bramini.
- Installed and booted successfully to the desktop. Tested
abiword 2.6.4 and FF 2.0.0.20.
See issue #4988 for more details.
svn path=/trunk/; revision=51577
- Merge 50674 to trunk:
- Allocate memory for the logical pin array
- Use the correct counter variable for logical pin array
- Found by msvc
See issue #6143 for more details.
svn path=/trunk/; revision=51455
- Properly check parameters in RtlFindActivationContextSectionString. Almost the same as Wine did, but factored out into a standalone function, improved undocumented flags checks and allowing null data pointer in certain cases.
svn path=/trunk/; revision=51333
- Fix incorrect prototypes and partially implement fast unsafe versions of activation context activation/deactivation, however disable them for now, until the new loader is in place.
- Fix their usage in the new loader code, which by mistake (which got copypasted into three other places) was passing a totally empty activation context to the activate function.
svn path=/trunk/; revision=51281
- Fix warnings for both msc and rbuild
- These fixes will be applied to the FullFat source too, so I've not bothered with a local ros.diff
svn path=/trunk/; revision=51234
- Update FullFat to the latest SVN code on James' recommendation.
- This release has many advantages over the previous, including full UTF-8 and UTF-16 support and the ability to modify attributes and timestamps. All of which are important for ros.
- It currently has a few warnings (in both gcc and msc), so I've had to turn allow warnings on.
svn path=/trunk/; revision=51229
- Update FullFat to the latest stable release (1.0.5)
- I'm awaiting a reply from James as to when 1.1.0 will be released as it have some nice improvements.
svn path=/trunk/; revision=51227
- Limit unimplemented warnings about RtlActivateActivationContextUnsafeFast calls for now so that they don't flood the log too much.
svn path=/trunk/; revision=51083
Patch by Rafal Harabien (rafalh1992 at o2 dot pl)
- Change () to (VOID) in function declarators. Part 6/XX.
[USETUP]
Patch by Rafal Harabien (rafalh1992 at o2 dot pl)
- Initialize Offset field of partition list. Spotted using DPH.
svn path=/trunk/; revision=51072
- Hack away LdrVerifyMappedImageMatchesChecksum() invocations with zero ImageSize until MM is fixed.
- Implement a helper ChkSum() routine to be used later by LdrVerifyMappedImageMatchesChecksum().
svn path=/trunk/; revision=51061
- Revert 38185 which synced fputwc to the Wine version for the sake of fixing Winetests.
This removed the implicit ANSI conversion, which was honestly checking the wrong flags. The new version correctly checks for WX_TEXT and only does the conversion in this case. This way we also don't fail any additional Winetests.
- Simplify streamout_char in the new printf implementation and use _fputtc instead of _flsbuf.
This way, we correctly do an implicit ANSI conversion when required.
- Fix fgetwc declaration.
Thanks to Timo for many hints and assistance. Most of this code is actually his idea :-)
Thanks to Olaf for providing a build server to speed up my code tests.
See issue #6007 for more details.
svn path=/trunk/; revision=51058
- RtlpInsertUnCommittedPages: Don't rely on linked list data in an UCR Descriptor after destroying it.
No functionality change because the linked list data was still "as expected", but not something we want to rely on.
- RtlpCreateUnCommittedRange: Fix a typo that caused the head of UCR Segment list of the Heap to be treated as an UCR Segment header.
Side effects of the typo: When this list wasn't empty, the (fake) UCR Segment it described was grown to contain more UCR descriptors.
Due to the data involved, this always happened to be the initial Heap Segment, which contains the Heap Header.
Writing the new UCR descriptors caused the Heap Header and trailing Heap Entries to be partially corrupted.
svn path=/trunk/; revision=50978
- Update path.c code to Wine 1.3.14. Fixes a buffer overwrite happening in RtlDosSearchPath_U() when invoked by "shell32_winetest.exe shlexec".
- RtlDosPathNameToNtPathName_U remains unsynced.
- Author names added to the header of the file.
See issue #5964 for more details.
svn path=/trunk/; revision=50954
- Fix wrong pointer comparison in RtlpDebugPageHeapFree(). Should check for NULL pointer freeing, instead of checking for NULL heap pointer.
svn path=/trunk/; revision=50898
- Store the internal state if an audio stream has been stopped
- Construct a thread when WODM_RESTART is received. This thread then triggers performs a callback to the wave thread, which finally restarts playback
- Only start the wave thread when playback is active (not paused by WODM_PAUSE)
- Fixes playback in Winamp 5.601 despite graphical issues
- Tested in Vbox 4.0 + 512MB RAM + Winamp 5.601
svn path=/trunk/; revision=50897
- Implement user flags/values and HeapSize APIs in debug page heap (nearly the same code in all three functions). With these done, DPH core features are complete. Some debugging is still needed.
svn path=/trunk/; revision=50888
- Implement DPH version of ReAllocateHeap. Scenario of falling back to normal heap is stubbed everywhere now.
- Fix a bug in POINTER_ADD_BIAS which noone noticed.
svn path=/trunk/; revision=50872
Fix special behaviour of wsprintf: when used with # flag, the "0x" prefix does not count into the field width, so we have to add additional 2 characters here. Fixes Opera installer.
See issue #5900 for more details.
svn path=/trunk/; revision=50866
Improve _getdrive and _tchdir. Patch by devpao (devotip at tiscali dot it), small formatting change by me.
See issue #5848 for more details.
svn path=/trunk/; revision=50861
- Implement heap free operation using already implemented busy/free/available/unused lists support and other base routines.
- Implement missing place to free list and remove from busy list routines.
- Implement find busy block routine (using AVL tree).
- Fix a bug in RtlpDphCoalesceNodeIntoAvailable() which resulted in unwanted attempt to merge the only node with itself (which failed anyway).
- Fix a bug in RtlpDphCoalesceNodeIntoAvailable() which incorrectly removed a node from available list (which is implemented as a standard NT double-linked list, compared to unused and free lists which are implemented as single-linked custom lists and busy list which is an AVL tree). Result of that bug was an infinite loop at the next attempt to traverse the list of available nodes.
- In RtlpDphCoalesceFreeIntoAvailable() break when FreeAllocations becomes less than LeaveOnFreeList (before it would break 1 size too early).
- Fix list traversal in RtlpDphSearchAvailableMemoryListForBestFit(). If it couldn't find a node, it would return the last node in the list instead of NULL.
- In RtlpDphFindAvailableMemory(), a new smaller size should be 4 times smaller, not just 2.
- Add a #if0-ed section in RtlpDphRemoveFromAvailableList which checks if a request to remove node not in the list performed. Used only for debugging.
- Add a trace dprint to every type of list insert/removal operation for easier tracking.
- Add break on NULL ptr freeing support.
- RtlpDphSetProtectionAfterUse() is stubbed and protection is set directly in RtlpDphHeapFree(). To be moved into this function.
svn path=/trunk/; revision=50860