- Add a shortcut to "Download !" to the Desktop
- Change the version number for the Explorer start menu bitmap
svn path=/branches/ros-branch-0_3_5/; revision=34116
- Fix a major problem in pushlock implementation: if there are 2 or more
threads waiting for a lock, only one of them ever gets woken. ExfWakePushLock
is missing a break in its loop so it removes all the WaitBlocks instead of just
the last one.
- This fixes all "weird" hangs happening, including FF1.5 installer hang, VMWare Video Driver Installer hang, taskmgr tabs hang, and other similar problems.
See issue #3141 for more details.
svn path=/trunk/; revision=34092
- Fix a bug in FreeLDR-ARM, we forgot to set the RegistryLength, resulting in a corrupted registry. We can now load the system registry.
- Enable code to handle DPC, Timer and Deferred Ready cleanup (portable code that's already written).
- Enable code to handle quantum end.
- We now load all the way to IoInitSystem!IopInitializeBootDrivers.
svn path=/trunk/; revision=34091
- We use this in the clock ISR, that can now actually send the trap frame to KeUpdateSystemTime.
- Implement KeUpdateRunTime to handle time accounting and DPC rescheduling as well as Quantum End.
- Ignore quantum end for now.
- We now have a working timebase, and we're back to our earlier checkpoint around CmInitSystem1!.
svn path=/trunk/; revision=34088
- We do not yet handle all cases, most notably, timer expiration.
- There may still be some bugs to work out in the code, but it's a start.
- This regresses progress, but does not ignore time anymore.
svn path=/trunk/; revision=34084
- add support for preventing all commands to be run on the channel by default. Now TechBot only answers some of the commands in PM
- add back the error Command
svn path=/trunk/; revision=34079
- Fix a race condition in msgina, which occasionally led to hangs at "Loading your personal settings"
See issue #3384 for more details.
svn path=/trunk/; revision=34077
- Fix a bug in MmDeletePageTable.
- Use MmCreateVirtualMappingForKernel when we are already in the right process context, and allow it to be used for addresses < KSEG0_BASE as well.
- We now have full memory mapped file support, and get all the way to CmInitSystem1.
svn path=/trunk/; revision=34072
- Initialize LastChanceShutdownList.
- Sndblst.sys and a bunch of other drivers using Io[Un]RegisterLastChanceShutdownNotification work now.
See issue #3331 for more details.
svn path=/trunk/; revision=34064
- Fix broken .rbuild file -- not sure how this was supposed to build in the first place.
- This gets us further -- more of ARM Mm needs implementing.
svn path=/trunk/; revision=34061
Bug 3287: My network place properties not displayed correctly by Mario Kacmar (kario@szm.sk)
P.S. The Polish Translation in the previous Commit was made by Maciej Bialas, not Olaf Siejka.
svn path=/trunk/; revision=34058
- We do not attemp to build world anymore. We have handwritten a new ARM rbuild file that only builds what we need for our current ARM work.
- HAL and FreeLDR do not seem to have an "installpath"... why not? Added one at least for our ARM stuff, so that "make install" can drop the binaries.
- Fixed some ARM DDK macro inconsistencies, allow more drivers to build.
- It is now possible to use "make install -k" to drop a completely working ARM build onto an image due to all these changes.
svn path=/trunk/; revision=34055
I know this is probably not the best way for doing the job, but I don't know of any other method to achieve the same.
- Change the right popup menu to only show the "Options" and "Exit" menu items (like ctfmon does)
- Add the missing 'return 0;' statements, when a message was handled
See issue #3372 for more details.
svn path=/trunk/; revision=34053
Instead of copying those functions into every host tool, which needs it (as we did previously), we can now implement them all in this library and link the host tools to it.
If USE_HOST_WCSFUNCS is not defined, the "wcsfuncs.h" file will define them to the CRT functions (so this library does not create overhead, when the code is built for the target platform)
See issue #3285 for more details.
svn path=/trunk/; revision=34050
- Korean translation of explorer-new added
- See issue #3368 for more details.
- Alexander Wurzinger <<Lohnegrim At gmx DOT net>
- Patch for the "CreateEnergyList failed"-Error added.
- See issue #2469 for more details.
svn path=/trunk/; revision=34045
- Add the selected test to the main combo
- Tag the dll path to each combo item
- Run the test when the 'run' button is hit.
We can now run all Wine tests from the GUI, but we get no feedback yet.
svn path=/trunk/; revision=34043
Alexander Wurzinger <Lohnegrim At gmx DOT net>
- Patch to fix the "Pos InitData failed"-Error in power options.
- See issue #2469 for more details.
svn path=/trunk/; revision=34040
- Wrap libwine's memory allocations, avoiding msvcrt imports in kernel32
- The cause is that libwine/debug.c uses functions (malloc, free, realloc, _strdup) which are only present in a complete CRT, creating imports from msvcrt.dll in any module that uses it, including kernel32.dll. Since kernel32 is currently importing from msvcrt, kernel32 gets DLL_PROCESS_DETACHed first, creating a problem for msvcrt's DLL_PROCESS_DETACH which, as a result of a recent bugfix, now uses kernel32 functions that depend on the resources that were freed.
- Fix this by implementing those 4 functions as wrappers around the Local* APIs, in order to avoid the problematic imports.
See issue #3373 for more details.
svn path=/trunk/; revision=34037
- Filled FCB structures with more informations
- Added them to linked list
- Set mounted volume to FILE_DEVICE_DISK_FILE_SYSTEM
- Various code cleanup
svn path=/trunk/; revision=34036
The browse dialog now lists all winetest dlls and allows selection of either all tests in all dlls, all tests within a dll, or the option to choose individual tests. (rewuires a modified winetest framework)
svn path=/trunk/; revision=34034
Thanks to hackbunny for pointing out that ##__VA_ARGS__ will strip the trailing comma and this works on both GCC and MSVC.
svn path=/trunk/; revision=34031
- bootdata, hives and usetup modified for korean keyboard layout
- See issue #3345 for more details.
- Patch from Gabriel Ilardi <gabrielilardi [at] hotmail [dot] it> for timedate settings applied
- See issue #3251 for more details.
svn path=/trunk/; revision=34028
Also clean up sysreg a bit and put all #include's for standard headers in the .h files. (they were spread around the .cpp and the .h files previously)
See issue #3370 for more details.
svn path=/trunk/; revision=34027
- As a result, fixed a couple of incorrect functions linkage.
- Fixed a name of vsnprintf, so really msvcrt's version is used now, not RTL's one.
svn path=/trunk/; revision=34026
This will plug into the new testing framework for the Wine tests, which will also publish it's results on a live website (if I can get Colin to help me with the web stuff ;) )
This is the time to pester me with requests / ideas anyone may have.
svn path=/trunk/; revision=34016
* In ExTimedWaitForUnblockPushLock, check only for STATUS_SUCCESS (which is the only status return when the wait was satisfied, while other like STATUS_TIMEOUT would still be considered a success).
* In ExBlockPushlock, fix a typo when trying out an interlocked exchange with a new value - wrong value was assigned.
* In ExfAcquirePushLockShared, assign PushLock value passed to this function, not the NewValue, like it's done in ExfAcquirePushLockExclusive.
* In ExfReleaseReleasePushLockExclusive, fix a typo which led to incorrect behavior and not waking up the pushlock when it should be.
svn path=/trunk/; revision=34008
- Cosmetic fix: initialize pushlocks using a special macro, not by assigning 0 to its value.
See issue #3352 for more details.
svn path=/trunk/; revision=34000
- GDIOBJ_FreeObjByHandly: unlock handle table entry when object to delete was locked
- REGION_AllocRgnWithHandle: unlock region before trying to delete it on failure
Now gdi32_winetest clipping doesn't freeze ros anymore
svn path=/trunk/; revision=33995
- fix a test name
- comment out more tests for EngReleaseSemaphore, they cause heap corruption on ros
- convert more TEST -> RTEST
svn path=/trunk/; revision=33994
- Hackmove: Define NTDDI_VERSION in kernel32, otherwise it gets derived from WINVER version (and thus kernel32 becomes Vista). This allows to remove #undef NTDDI_VERSION from ndk/obtypes.h.
svn path=/trunk/; revision=33990
This patch has already been submitted to Wine, but as they don't care currently, I applied it manually here and updated "comctl32_ros.diff" accordingly.
Patch by Timo Kreuzer
svn path=/trunk/; revision=33985
This patch has already been submitted to Wine, but as they don't care currently, I applied it manually here and updated "wininet_ros.diff" accordingly.
svn path=/trunk/; revision=33984
- Make use of the SARCH rbuild parameter to define the target board (default to ARM VersatilePB for now)
- Make official ARM include directory (include/reactos/arm) and move the ARM DDK there
- Start creating header files for different target board components.
- Update halfuncs in NDK with one missing function, and temporarily, one ARM function.
svn path=/trunk/; revision=33979
- Implement KiInitMachineDependent -- this is only useful for x86 and has nothing relevant to ARM, so we just return.
- Implement HalAllProcessorsStarted (again, a no-op) and HalQueryRealTimeClock (uses the RTC on the board -- uboot must set it up first).
- Make sure we get the right Sp during a system call (this is still broken though).
- We need to fix our system call handler next.
svn path=/trunk/; revision=33977
- Don't implement BitBlt for now.
- Add the bootdata font file to the arm bootvid as well.
- Not sure how it's possible, but we are seeing text output on the console with this hacked-up code! The ReactOS version string appears...
- We are now getting much further in the boot cycle.
svn path=/trunk/; revision=33976
- Don't hang in the clock interrupt anymore, for now we'll just ignore it (but it works! :D)
- Make all unimplemented bootvid functions hang the system, so we can better stop at progress-points.
- Implement VidInitialize:
- We allocate a 640x480@16bpp framebuffer using contiguous physical memory (our MMU code survives!).
- We setup the LCD controller timings and framebuffer address.
- We enable the LCD
- For debugging, we're also drawing a nice little test pattern... and it works! We have GUI Code :)
svn path=/trunk/; revision=33974
- Stub out all the bootvid functions for ARM, and add an infinite loop so we stop there.
- Remove the infinite loop from the HAL -- Hal Initialization is complete.
- We must now implement the LCD graphics functions.
svn path=/trunk/; revision=33973
- Since we have two timers (ha x86!!!), set the second one as the stall timer. It's a one-shot periodic timer, set to the exact number of microseconds being waited on.
- To fully emulate stalling, we don't use a clock interrupt for it (it supports not sending one!) and just busy-loop until the value reaches 0.
- Tried it with a 10 second (10000000 us) wait and it worked -perfectly-.
- Re-implemented KeStallExecutionProcessor and got rid of the other code. Back in HalInitSystem(phase1) now...
- Also killed some DPRINT1s getting on my nerves.
svn path=/trunk/; revision=33971
- We are now back to HalInitSystem just like before the previous fixes.
- Now we'll implement stall calibration and switch to the clock interrupt.
svn path=/trunk/; revision=33970
- Also written KeStallExecution.
- Now, we are back to where we hang before Phase 1 (so Phase 1 doesn't occur anymore).
- This hang is because we used to do a DPC here, which isn't good, since IRQL is already at dispatch.
- Instead, the correct course of action is to enter the idle loop, which will schedule the phase 1 thread.
- But, we don't have an idle loop yet ;-)
svn path=/trunk/; revision=33969
- Get rid of KeSwapIrql -- both lower and higher IRQL handling was treated the same!
- We can now re-activate the assert in the IRQL code
- Disable interrupts before changing the interrupt mask!!!
- And re-enable them solely if they were enabled.
- Clear interrupts mask before setting a new one -- raising isn't always additive!
- Fix KiInterruptHandler to perform operations in the right order.
- Finish implementing interrupt exit code.
- Code KeArmStatusRegisterGet to read CPSR and interrupt status.
- Make debug prints a lot more readable and dont trying to acquire the stack during pool allocations.
- Setup the clock interval timer!!!
- This code regresses progress but makes stuf fwork right. We'll get better after implementing the stall interrupt.
svn path=/trunk/; revision=33967
This function is meant to be used for a single menu item info and just frees the memory allocated for dwTypeInfo.
Replaced this with a simple HeapFree call to free the memory for the whole array allocated in MenuGetAllRosMenuItemInfo.
Fixes a heap corruption discovered by encoded.
See issue #3349 for more details.
svn path=/trunk/; revision=33959
- First of all, MenuSetItemData is only called from InsertMenuA/W and ModifyMenuA/W.
Therefore the passed MENUITEMINFO structure will always be empty, so it makes no sense to check for flags in this structure.
This way, I could simplify the code block for MF_BITMAP.
- Also fType = MFT_BITMAP and fMask = MIIM_BITMAP at the same time passed to win32k don't work.
Changing this back to only set fMask fixes bitmap menus.
- Furthermore the data for MF_OWNERDRAW is really stored in dwItemData and not in dwTypeData.
The MSDN documentation for InsertMenu applies here, not the one for the MENUITEMINFO structure.
This fixes owner-drawn menus like the one in Abiword.
See issue #3272 for more details.
svn path=/trunk/; revision=33958
The freetype asm function FT_MulFix clobbers the edx register, but doesn't tell it to gcc explicitly, so when inlined versions were resulting in wrong results. Fix it by also marking edx as output register.
Also enable commented out code in win32k again that works correctly now.
By me:
I modified the patch to not alter any 3rd party code, but instead I copied the fuction to _ftmulfix_ros.c and also coplied the container file ftbase.c which now uses the fixed function from our private file.
This fixes a bunch of text output issues (underscore, text marking)
See issue #3346 for more details.
svn path=/trunk/; revision=33951
- Add bounds checking for GetSystemMetrics both in user32 and in kernel counterpart.
- Based on a patch from bug 3316.
See issue #3316 for more details.
svn path=/trunk/; revision=33947
- Minor patch to HEAP_GetPtr to include magic value in debug output.
- Fixing the parameters checking in HEAP_InitSubHeap (it is currently not used - put between #if 0 / #endif ).
- Correcting HEAP_FindFreeBlock which was logging error message as warning (while still returning NULL to caller) by changing severity of logged message.
- Implementing RtlEnumProcessHeaps (previously stubbed out).
- Fixing sanity checks in and implementation of RtlGetProcessHeaps (previously
the function was not checking for the counter value, and also was not assigning anything to the returned value; now this seems to be corrected.
- Fixing RtlValidateProcessHeaps implementation (the function was stubbed out because (most probably, I wasn't able to find a bug mentioning this) it was previously using a global lock for all heaps (which probably could cause some problems in the kernel), now it only locks heaps belonging to the given process - and this is the correct behaviour.
Aleksey Bragin <aleksey@reactos.org>
- Fix typo in ntuser.c, and low severity of debug message.
See issue #2964 for more details.
svn path=/trunk/; revision=33945
- This fixes an issue where code was using PCR->CurrentThread but x86/shared routines use PRCB->CurrentThread.
- Added a note to explain the difference, and we now set both.
- We currently stop at Phase 1 HAL Initialization.
svn path=/trunk/; revision=33940
- We completely ignore setting the thread to the right scheduler state, and don't do any APC delivery checking, or any other work.
- We now implement a basic KiThreadStartup, which behaves properly (we believe). Doesn't handle user-mode threads yet, though.
- This gets us through PspSystemThreadStartup, and..
- We now reach Phase1InitializationDiscard! A major step has been reached, now it's time to cleanup what has been done until now and verify it to be correct.
- Then we move on... the next two things will be 1) Hal Initialization (setting up the timer) and 2) Displaying the boot logo.
- Graphics will require using the PL-110 LCD Controller.
svn path=/trunk/; revision=33937
- The only things we do are swap the stack and then display the old/new thread/stack.
- More work to be done to actually save the non-volatiles, prepare the thread state, and restore the volatiles for the new thread.
- Then we will return to the saved return address, and we should be in Phase 1 with working thread switching/scheduling.
svn path=/trunk/; revision=33935
- _iob is already defined as a dll_import
- _rotl intrinsic is now implemented (should use rol instruction, but not sure on the syntax!)
- Add a stub psctx.h for ARM
- Added InterlockedEXchangePointers
- Fix uninitialized variable warning in ex/resource.c
- Start to implement interrupt handling:
- We now have a rudimentary interrupt handler that takes care of software interrupts
- We now have a rudimentary DPC handler which takes care of switching to the next thread, if any
- We now setup the HAL Interrupt Source -> IRQL Table (The IRQLMask Table).
- Implemented HalGetInterruptSource, which allows us to get the interrupt # that cause the IRQ.
Note: this wasn't needed on Alpha/PPC/MIPS NT ports, because that information is stored on the CPU,
and the kernel could read it -- we must abstract it through the HAL.
- Add the OldIrql to the TRAP_FRAME, we don't use it yet.
- We are now ready to context switch to the Phase 1 thread.
svn path=/trunk/; revision=33933
- In Kd and GDB exception handler wrappers, return FALSE if kdDoNotHandleException, and return TRUE otherwise (kdHandled / kdContinue). After my previous commit these functions were always returning FALSE / exception not handled.
svn path=/trunk/; revision=33929
- Leave and refactor existing underlying linux-code based sprintf implementation into lnx_ prefixed functions.
- Misc source code and headers cleanup.
- Fixes bugs 2910, 2803.
See issue #2803 for more details.
svn path=/trunk/; revision=33927
- Give the Run Dialog resources a default title (only done in German and English resources so far, others still need to be done)
- Add support for passing no title to RunFileDlg, so that it uses the default title
- Pass no hardcoded english title in Explorer and Task-Manager.
I slightly modified the patch to also remove the other hardcoded text passed in Explorer.
See issue #3340 for more details.
svn path=/trunk/; revision=33919
Fix a memory leak.
Enable the Apply button when the users full name or description is changed.
- Group properties:
The group description can be changed.
Update the group list when the group description changes.
svn path=/trunk/; revision=33901
it did not check after some NULL pointer and did crash in firefox.
and some reason NtGdiCreateCompatibleBitmap fail in some case, that what happen in firefox 1.5.
svn path=/trunk/; revision=33885
Make it act bit more like windows, use PatBlt instead for BitBlt for no ROP source for it bit faster
Thx irc Goplat found my bug in the macro.
svn path=/trunk/; revision=33876
- Don't make single-step break into KDBG if it comes from user-mode.
- Don't make KDBG return "continue" for breakpoint/singlestep, it should return "do not handle exception".
- Add 20 new invalid instructions detected instead of crashing/"UNHANDLED CODE".
- Fix DR registry handling (set DebugActive = TRUE when needed, and set Context->Dr7).
- Fix set/get context: These two functions didn't work at all. Get actually performed a Set, and Vice-versa. Also, Set would incorrectly set the frame of the caller, not the target thread. Also, the trap frame pointer wasn't being grabbed correctly for kernel-mode callers.
- Move the code to a non-portable i386 directory, since the code is architecture-specific.
- Move GET_SET_CTX_CONTENT out to ps.h.
svn path=/trunk/; revision=33871
- Remove a leftover from kernel32 which assumed that if "BeingDebugged" was TRUE, the library was being tested on an XP machine.
svn path=/trunk/; revision=33870
- Add SEH to NtCreate/OpenKey, which fixes the rest of the wine registry tests.
- Fix PnP Manager code that was doing case sensitive registry access with "Registry".
svn path=/trunk/; revision=33869
- Largely based on the patch by Samuel Serapion.
- Include file.c from Wine's msvcrt, but exclude its contents from the build process for now.
svn path=/trunk/; revision=33866
also by mistake _seh_longjmp_unwind was not longer redirected to seh_longjmp_unwind it is now again
thx irc nick : Goplat to notice this.
svn path=/trunk/; revision=33862
- add a comment about who removes a message from a queue
- fix filter handling (typo)
- correct the callers next list entry, if it might have been deleted. Yes, it's ugly, but the only way I could currently think of without rewriting everything and it was already ugly before. This fixes bug 2317 and some random crashes with FF.
See issue #2317 for more details.
svn path=/trunk/; revision=33860
- Remove ExTryToAcquireResourceExclusiveLite from NDK since it's not exported by NT kernel.
- Add ObSetSecurityObjectByPointer, RtlInitAnsiStringEx (and implement it, rather straightforward) to NDK.
- Uncomment exports in ntoskrnl_i386.def which are already implemented.
- Add KeInvalidateAllCaches to ARM's stubs.
svn path=/trunk/; revision=33825
It currently tests the features I needed to adjust/implement when fixing the wininet problem.
ReactOS currently passes all tests, but fails one if you launch the test app for the second time quickly after the first time (timing problem in the network code?).
- Fix the behaviour on an ioctlsocket FIONREAD call: The output buffer is not touched, when we have no socket, but when we have no connection, it is set to 0.
- Forward the socket call to WSASocketW instead of WSASocketA, minimal performance improvement
svn path=/trunk/; revision=33824
Fixes compilation with MSVC. (note that you also have to change the calling convention from __stdcall to __cdecl in the auto-created project file for the lib)
svn path=/trunk/; revision=33823
I think it testing all case it can now, and also split up some test to EngDeleteSemaphore and EngReleaseSemaphore and EngAcquireSemaphore, that was in EngCreateSemaphore
svn path=/trunk/; revision=33816
As we implement some more functions in the network stack now, I could remove some hacks from the "wininet_ros.diff" file.
Anyways, the following things still needed to be changed:
- Pass a variable to WriteFile for receiving the number of bytes written. This parameter is not checked for NULL in ReactOS and Windows, when lpOverlapped is also NULL.
I'll submit a patch about this to Wine as well.
- Replace Unix poll() calls by equivalent select() calls
- Bypass sock_get_error(), directly call WSAGetLastError() as we don't have to translate Unix socket errors.
See issue #3197 for more details.
svn path=/trunk/; revision=33788
1. it break vmware drv, for it align each bitmap row it create
2. diffent behoirs in diffent vm
this did show we have more serius bug to fix before we can apply correct fix.
svn path=/trunk/; revision=33783
accdoing OSR it is number of bytes to next scanline in the bitmap, wine version did align it, that why wrong number of bytes was reported also fixed overflow bug in the math, and make sure if some part of win32k send in negtive width, it will not calc it wrong, Remove one hack in win32k, thx of this, Thx fireball that suggest this functions mabey was wrong
svn path=/trunk/; revision=33782
2. this is almost 100% correct list of windows 2003 export list of msvcrt.def and it will make abiword working again for it was missing api wfreopen and allot more api from msvcrt
3. this add back api that was remove api they exists in windows 2003 export list
4. List was provide from colin f
See issue #3293 for more details.
svn path=/trunk/; revision=33764
- Remove NT3/4 specific unimplemented function and change STDCALL -> NTAPI in mm.c
- Make ReactOS i386 kernel exports almost fully correspond to W2003SP1 ntoskrnl.exe's exports.
svn path=/trunk/; revision=33759
- Remove usage of unexported RtlDuplicateUnicodeString in green.sys driver (this is basically the same fix which Herve applied to blue.sys).
svn path=/trunk/; revision=33758
- optmize by moving the locking of the dc to NtGdiFlushUserBatch instead of doing it for every object
- fix wrong pointer calculation (GdiFlushUserBatch returns the size of the objects in bytes not in ULONG)
- simplify a check
- add a comment: on XP NtGdiFlushUserBatch doesn't return NTSTATUS, but a pointer to inside the Teb, maybe random/VOID
svn path=/trunk/; revision=33750
Thanks to CMan for regression-testing!
Also I removed Magnus' change in r33700.
If this is really required, please name the reason and add the change to a usp10_ros.diff file as this is a Wine-synched component. Also don't forget to include a header file for the DbgPrint prototype.
See issue #3280 for more details.
svn path=/trunk/; revision=33749
- Sync parts of msvcrt with Wine (more will follow)
This makes us passing a lot more msvcrt Wine tests (like all heap tests)
svn path=/trunk/; revision=33747
fast explain windows xp and higher have two gdi table, it is better reuse same macro for both, that rewrite it one more time.
svn path=/trunk/; revision=33744
Revision 1.37 fixes the exception in ole32 when opening a file with FoxitReader. Also fixes some warnings and hopefully some usermode crashes.
1.28: Jonathan Ernst <jonathan@ernstfamily.ch>
Update the address of the Free Software Foundation.
1.29: Alexandre Julliard <julliard@winehq.org>
include: Exception filters should return LONG, not DWORD.
Also move UnhandledExceptionFilter definitions to winbase.h since they
are there in the latest SDK.
1.30: Rob Shearman <rob@codeweavers.com>
include: Move Wine-specific EH_* defines from winnt.h to include/wine/exception.h.
1.33: Rob Shearman <rob@codeweavers.com>
Add a new convenience macro for an exception handler that handles all exceptions.
When using native compiler exceptions, the previous method of doing
this, __EXCEPT(NULL), would expand to __except(
(NULL)(GetExceptionInformation())) which doesn't compile as NULL isn't a
function.
So add a new macro, __EXCEPT_ALL, which works correctly both when using
native compiler exceptions and without and which makes the meaning of
code in which it is used clearer.
1.35: Alexandre Julliard <julliard@winehq.org>
ntdll: Make the exception handling functions inline.
1.36: Alexandre Julliard <julliard@winehq.org>
exception.h: Only push the exception frame after sigsetjmp.
Otherwise on Windows longjmp may want to mess with the exception frame.
1.37: Alexandre Julliard <julliard@winehq.org>
exception.h: Preserve registers when calling RtlUnwind.
See issue #812 for more details.
svn path=/trunk/; revision=33732
Added definitions for NormalizeString and IsNormalizedString (Vista and later)
Correct an embarassing bug (some macros were terminated with ";", shame shame)
added nls
added nls/3rdparty
added nls/3rdparty/icu
We officially welcome IBM's excellent ICU4C library for Unicode support to our humble source tree. May our marriage be long, happy and fertile.
added nls/3rdparty/icu4ros.rbuild
added nls/dll
added nls/dll/normaliz_redist
added nls/dll/normaliz_redist/normaliz.cpp
added nls/dll/normaliz_redist/normaliz.def
added nls/dll/normaliz_redist/normaliz_redist.rbuild
added nls/lib
added nls/lib/normalize
added nls/lib/normalize/normalize.cpp
added nls/lib/normalize/normalize.rbuild
added nls/nls.rbuild
modified ReactOS-generic.rbuild
Incomplete implementation of the redistributable normaliz.dll DLL for Unicode normalization, as a technical preview of what's to come from the use of ICU4C - namely, straightforward, painless implementation of complex algorithms and several megabytes worth of data, with a Win32-compatible interface on top. Currently disabled in the build until basic testing is over.
Watch this space for more of the same.
svn path=/trunk/; revision=33703
* Implemented correct behaviour in GetRealWindowClass(), but in reality just shifted the todo parts to NtUserGetClassName() instead.
svn path=/trunk/; revision=33689
- Sync the advapi32 crypt functions to Wine 1.0-rc2, this way we pass some more winetests.
Changes by myself:
- Implement SystemFunction036 (RtlGenRandom) as the Wine equivalent is based on /dev/urandom, so that it cannot be used.
Warning: This function uses the pseudo random number generator RtlRandom. It should better be implemented using a crypto-safe random number generator!
svn path=/trunk/; revision=33679
This code was writen by me and Daniel Zimmermann (netzimme at aim dot com) and it is base on wine version,
See issue #3266 for more details.
svn path=/trunk/; revision=33657
This fixes the "rebuild-everything-on-every-change" bug (at least for me)
For the record, this is broken since r32595.
Note: If you have building problems after this commit when building a single module, please try to revert only my changes from lines 1847 to 1850.
svn path=/trunk/; revision=33652
installers the depend on the USERPROFILE variable being present. Does
not fix the Word 2003 viewer install but changes the behavior slightly
and is more correct.
svn path=/trunk/; revision=33650
- Remove KiRosPrintAddress export from ntoskrnl_i386.def, and CcRos* apis too.
- Make win32k use KeRosDumpStackFrames instead of KiRosPrintAddress.
svn path=/trunk/; revision=33646
- define WMIAPI macro
- add TraceEvent, GetTraceLoogerHandler prototypes
- PEVENT_TRACE_HEADER should not be defined in the NDK
svn path=/trunk/; revision=33643
- Fix memory corruption that happened pretty much everytime you pressed a key or moved the mouse -- reponsible for countless crashes, including the famous ASSERT during 1-stage setup.
- Remove anti-memory-corruption-workaround from VFAT
- Note: If you're going to do use device queues in your driver, please learn how. Kthxbye.
Patch by Alex Ionescu <alex.ionescu@reactos.org>
_____
Alex,
Marry me,
KJK::Hyperion
XOXOXO
See issue #3116 for more details.
svn path=/trunk/; revision=33633
- Fix NtFlushVirtualMemory definition in PSDK.
- Fix NtFlushVirtualMemory's usage in kernel32.
- Fix FlushViewOfFile's prototype (DWORD -> SIZE_T, as it is in PlatformSDK).
- Add a C_ASSERT definition to winnt.h.
- Change a meaningless ASSERT to a C_ASSERT.
svn path=/trunk/; revision=33623
- Uncomment function declarations in psdk/imagehlp.h and thus make crypt32 use them to prevent stack corruption (it was generating implicit declarations warnings).
svn path=/trunk/; revision=33620
this will make allot ATI card working proper. thx again bear windows for the info and mail response which card need it, more info for this issue at http://www.bearwindows.boot-land.net/vbemp.htm#10
svn path=/trunk/; revision=33619
- remove Fireball's, ugly nasty hack.
- Fix debug output to show the right problem
- For all people who think the handle table might be messed up: add a function that validates the handle table integrity after a process is closed, when GDI_DEBUG is defined.
- fix the BaseObjects hHmgr field when converting an object to a stock object.
- move all GDI_DEBUG stuff into it's own file
See issue #2954 for more details.
svn path=/trunk/; revision=33618
- copy string the resulting strings on success but on failure
- fix 2 memory leaks in EnumDisplayMonitors
- fixes a user32_winetest error
svn path=/trunk/; revision=33612
- use WideCharToMultiByte instead of RtlUnicodeStringToAnsiString
- fix memory leak in GetClipboardFormatNameA
- ReactOS now passes all user32_winetest.exe clipboard test (previously 2 failures)
svn path=/trunk/; revision=33610
- Fix the commented out export in win32k.def and fix the definition for EngGetCurrentCodePage.
- Add RtlGetDefaultCodePage to NDK headers.
svn path=/trunk/; revision=33609
- GDI_TABLE_ENTRY ProcessId is a dword or int not a short.
- Notice also the pid for f5e, it's set GDI_OBJ_HMGR_NONE with pUser 0. Our DCE code handling pUser is right with that respect.
- Tested wine gdi32: dc gdiobj and user32: dce, all result same as before.
object list for DC type objects owned by ALL PIDs
I, handle, Lock, sCount, pid, pv, objt, unique, Flags, pUser, Tlock
--------------------------------------------------------------------------------------------
f4c, ca010f4c, 0, 0, d60, e2ebc2a0, DC, ca01, 0, 00f80570, 00f80570
f5e, 60010f5e, 0, 0, 80000012, e28ce008, DC, 6001, 4, 00000000, 00000000
f9d, b4010f9d, 0, 0, d60, e2ee6008, DC, b401, 0, 00350000, 00350000
svn path=/trunk/; revision=33605
- Export undocumented Win32k functions and add stubs for them (information about prototypes if from Alex). Also implement and export a couple of documented APIs, and a bunch of APIs we implement but did not export.
svn path=/trunk/; revision=33604
- Enabled installname attribute and removed hard coded output file name from *Iso module types. We can now use properties : ReactOS_$(arch).iso > ReactOS_i386.iso
svn path=/trunk/; revision=33603
- Made TechBot more configurable through .config files
- Code refactoring
- Removed automatic parameter parsing support to make everyone happy
svn path=/trunk/; revision=33586
- add the styles grayed and disabled in case they have not been added
- initialize allocated user buffer to zero
- allow support for bitmap items with MF_HELP style
- check result of WideCharToMultiByte
- always zero terminate a string buffer when enough space is available
svn path=/trunk/; revision=33578
Of course, ReactOS' cmd doesn't work at all with the framework at the moment :-)
Some tests were taken from "seta_test.cmd" by Royce. (see file headers)
svn path=/trunk/; revision=33560
-sync winetest to WINE-rc1
-add a rbuild file for winetest (not added to build yet)
note: minor winetest modifications should be made like loading tests from a folder at startup
svn path=/trunk/; revision=33556
note: All rbuild files in reactos\dll\keyboard must be updated to contain the follwing information:
<module name="kbdusl" type="keyboardlayout" (...) description="US Dvorak for left hand" lcid="00030409" layoutId="001A" layoutnameresid="5027" >
svn path=/trunk/; revision=33539
- Replace IsUserAdmin (Wine API) with IsUserAnAdmin (shell32 API)
When you now add the PROCESSOR_POWER_INFORMATION structure to "precomp.h" (which was "accidentally omitted from WinNT.h" according to MSDN..), sysdm.cpl can be compiled using MSVC and the MS PSDK headers.
svn path=/trunk/; revision=33530
- menu item is a separator when id, flags and string is zero (verified with MS Visual 2005)
- set item separator MF_GRAYED as default style
- rewrite CheckMenuRadioItem
- check if checkmarks applies to more than one submenu
- check if checkmark was set
- dont set checkmark on menu item separator
- recurse into sub menus when available
- implement handling by MF_BYPOSITION
- ReactOS now passes now all tests from test_CheckMenuRadioItem in user32_winetest
svn path=/trunk/; revision=33529
- Simplify blitting the screen bitmap to the main window.
This also hides a ROS GDI bug, for which I'm going to open a new bug report.
See issue #3241 for more details.
svn path=/trunk/; revision=33528
- Italian translations and various fixes to Magnify (fixes part of bug #3241 as well)
Changes by me:
- Shorten the german dialog string a bit, so that it won't be truncated. Strings for Static controls can only be 256 characters long.
A french translator should change the text as well, because it's longer than 256 characters.
See issue #3245 for more details.
svn path=/trunk/; revision=33513
- Now uses shell32 functions for loading the control panel applets, so that the mutex is used as well (see bug #781)
- Supports all built-in command-line parameters, which are supported by the WinXP version.
This also added support for opening shell folders.
- Loads other possible parameters from the registry.
- Only passes the command for RunControlPanel to each ListView item, not a whole struct whose members aren't needed later.
- Fixed memory leaks
- Added a header file
- Fixed indentation
This is the last version of the standalone Control Panel.
I will change it to call the Explorer shell folder in my next commit.
See issue #781 for more details.
svn path=/trunk/; revision=33507
- User name and passwords are NOT checked upon the creation of a new user account.
- Disable all unimplemented popup menu items.
svn path=/trunk/; revision=33505
This way, stuff like "notepad abc.txt " will correctly pass "abc.txt " as the filename like Windows does.
See issue #1818 for more details.
svn path=/trunk/; revision=33487
Changing the ASSERT, so that it doesn't spit out an "unused variable" warning on Release builds doesn't work, because then it expects this variable to exist. (which is not the case for some struct elements passed to ASSERT in some other parts of the kernel)
svn path=/trunk/; revision=33486
This makes us passing (at least) one more sub test of a Wine test (user32_winetest text)
Behaviour verified under Windows XP SP2.
svn path=/trunk/; revision=33484
* Fixed indentation in User32EnumWindows()
* Removed internal use of Set/GetLastError() from User32EnumWindows() - makes even more winetests pass
svn path=/trunk/; revision=33483
- Add the correct Visual Studio version to the .sln file header, so that the Visual Studio Version Selector does not get confused.
I slightly modified the patch to replace some following if's by else if's.
svn path=/trunk/; revision=33446
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.