Commit graph

7828 commits

Author SHA1 Message Date
Amine Khaldi fc502885bc [FORMATTING]
- No functionality change.

svn path=/trunk/; revision=48141
2010-07-20 19:15:30 +00:00
Amine Khaldi 5be505d1b4 [MINGW-W64]
- Define WIN32_LEAN_AND_MEAN.
- Include stdlib.h for _winmajor.

svn path=/trunk/; revision=48131
2010-07-20 12:10:10 +00:00
Amine Khaldi dfd1480154 [MINGW-W64]
- reactos.diff was pushed upstream, so it's not needed anymore.
- Add a missing section.
- Include sect_attribs.h into tlssup.c

svn path=/trunk/; revision=48130
2010-07-20 10:14:07 +00:00
Timo Kreuzer 76d0b0da01 [RTL]
- Update amd64 specific code to be MSVC compatible
- Remove Leading underscores from symbols

svn path=/trunk/; revision=48122
2010-07-19 21:18:33 +00:00
Amine Khaldi fc8c4be858 [MINGW]
- __attribute__ ((__unused__)) -> __UNUSED_PARAM, which is MSVC compatible.

svn path=/trunk/; revision=48114
2010-07-19 09:58:51 +00:00
Timo Kreuzer 2faf924bad [CRT]
Move #include <precomp.h> to the top, as precompiled headers must be the first thing that is included or it won't take advantage of being precompiled

svn path=/trunk/; revision=48082
2010-07-16 15:08:03 +00:00
Gabriel Ilardi 386c15f491 Fix build, sorry. Thanks Timo.
svn path=/trunk/; revision=48080
2010-07-16 13:37:29 +00:00
Gabriel Ilardi f9dc8f0766 [CRT]
Add a debug print to help bugs like 5486.

svn path=/trunk/; revision=48078
2010-07-16 13:00:02 +00:00
Amine Khaldi cd21d25fc7 [LIB/RTL]
- Get rid of some unneeded assignment, cast and a variable.

svn path=/trunk/; revision=48005
2010-07-12 14:50:31 +00:00
Sylvain Petreolle cbc71e8180 Implement _osplatform
Import _makepath_s and _wmakepath_s from Wine.
Passes msvcrt data and dir tests.

svn path=/trunk/; revision=47999
2010-07-11 16:25:30 +00:00
Aleksey Bragin bc5435e23f - Fix a typo.
svn path=/trunk/; revision=47991
2010-07-10 21:39:55 +00:00
Sylvain Petreolle 697fc48c13 Sync __crtGetStringTypeW from Wine.
Fixes msvcrt:locale crash.


svn path=/trunk/; revision=47978
2010-07-09 14:33:03 +00:00
Sylvain Petreolle 358331354d [CRT]
-Export memmove_s and memcpy_s
-Implement rnd_s


svn path=/trunk/; revision=47964
2010-07-07 20:05:47 +00:00
Daniel Reimer d848c9746e Sync most idl files with Wine head. (Samuel Serapion)
Modify shell32 and uuid to work with the new idls.
This will break build till next commit.

svn path=/trunk/; revision=47953
2010-07-05 23:00:19 +00:00
Sylvain Petreolle 23caea8334 unix has no io.h.
move its include to a _WIN32 block.

svn path=/trunk/; revision=47948
2010-07-05 12:43:09 +00:00
Daniel Reimer b09b99163c Silence zlibs warnings (Samuel Serapion)
Update eeadme.wine

svn path=/trunk/; revision=47944
2010-07-05 11:29:24 +00:00
Daniel Reimer 35deb4dbb9 Update libxml to 2.7.7
Resync zlib to 1.2.5.
Patch by Samuel Serapion and some lil includes cleanup by me.

svn path=/trunk/; revision=47933
2010-07-03 22:34:05 +00:00
Sir Richard ec783fe1df [RTL]: RangeList APIs should not be allocating pool with a tag of 0, since this makes the checked kernel ASSERT. Good thing nobody used these APIs (I wonder if they even work), but eVb's PCI driver now does.
svn path=/trunk/; revision=47907
2010-06-29 19:23:16 +00:00
Sir Richard 763a24d9d7 - There's no such thing as PRTL_MESSAGE_RESOURCE_ENTRY, use PMESSAGE_RESOURCE_ENTRY instead.
svn path=/trunk/; revision=47865
2010-06-27 19:56:57 +00:00
Eric Kohl 84ab81fe4b [NTDLL]
- Add RtlCreateBootStatusDataFile() stub.

svn path=/trunk/; revision=47850
2010-06-26 09:49:31 +00:00
Pierre Schweitzer 22576dee05 [IOEVENT]
Added a library containing GUIDs for PnP notifications

[BUGCODES]
Added missing bugcheck code for PnP manager

[NTOSKRNL]
- Implemented FsRtlNotifyVolumeEvent()
- Implemented IoReportTargetDeviceChange(), IoReportTargetDeviceChangeAsynchronous()
- Craplemented PpSetCustomTargetEvent() to match our actual PnP manager notifications system. This is to be rewritten
- Added support for custom notifications in IopNotifyPlugPlayNotification()
- Added use of FsRtlNotifyVolumeEvent() in RawUserFsCtrl() to notify volume state changes
- Added use of IoEvent library to ntoskrnl

[FASTFAT]
- Added use of FsRtlNotifyVolumeEvent() when successfully mounting a volume

Finally, purpose of that patch is to implement volumes events notifications. Behaviour and implementation is correct till PpSetCustomTargetEvent(). The PnP notifications manager should be rewritten to match Microsoft's one. Furthermore, it appears that in Windows, those notifications are asynchronous.

svn path=/trunk/; revision=47837
2010-06-23 19:37:22 +00:00
Timo Kreuzer 0959625c7e [OSKITTCP]
Use RtlUlongByteSwap / RtlUshortByteSwap for byte swapping. They are portable and intrinsics on x86.

svn path=/trunk/; revision=47831
2010-06-23 11:37:39 +00:00
Timo Kreuzer cfb8a35516 [CRT]
- Stubplement _controlfp_s, rand_s
- Implement _invalid_parameter, _get_invalid_parameter_handler, _set_invalid_parameter_handler
- Implement memmove_s, strncpy_s
- sync heap.c with wine
Patch by Samuel Serapion

svn path=/trunk/; revision=47822
2010-06-21 19:57:36 +00:00
Johannes Anderwald d6f80bd4d4 [MMIXER]
- Fix buffer overflow
- Dedicated to irc:igorko

svn path=/trunk/; revision=47782
2010-06-15 14:04:19 +00:00
Timo Kreuzer 226e9212dd Add missing file
svn path=/trunk/; revision=47771
2010-06-13 01:32:13 +00:00
Timo Kreuzer ec1169363d [CRT]
- CRT update part 1/x
- sync C++ / exception related CRT code with wine
- add support for non-underscored symbols
- Patch by Samuel Serapion, slightly modified by me

svn path=/trunk/; revision=47770
2010-06-13 01:24:42 +00:00
Eric Kohl 9cf8c2c8da [VFATLIB]
- Get rid of the hard-coded sector size as large sector (4KB) harddisks are already available.
- When a partition is formatted, choose the FAT type according to the partition type. The size of the partition does not matter here as it is up to the caller to set the right partition type according to its size.

svn path=/trunk/; revision=47765
2010-06-12 11:20:58 +00:00
Eric Kohl 0c8457631d [FORMATTING]
Fix indentation. No code changes.

svn path=/trunk/; revision=47764
2010-06-12 10:25:18 +00:00
Johannes Anderwald 78b0fb4a21 [WDMAUD_KERNEL]
- Fix possible buffer overflow
[MMIXER]
- Add sanity checks

svn path=/trunk/; revision=47763
2010-06-12 10:21:03 +00:00
Amine Khaldi b02092777f Reintegrate header-work branch. Important changes include continued work on headers and progress on compiling for ARM.
svn path=/trunk/; revision=47727
2010-06-09 22:24:32 +00:00
Johannes Anderwald a7e58af961 [MMIXER]
- Handle failure of device enumeration
- Add sanity check

svn path=/trunk/; revision=47715
2010-06-09 16:51:16 +00:00
Cameron Gutman 4829efbb66 [IP]
- Handle socket operations that can be completed immediately before terminating the socket to avoid losing data sitting in the receive buffer

svn path=/trunk/; revision=47704
2010-06-09 04:45:17 +00:00
Sylvain Petreolle 82cd2aad07 Merge RtlIpv4StringToAddressW fix from network branch.
svn path=/trunk/; revision=47699
2010-06-08 20:24:15 +00:00
Timo Kreuzer 4625d1efa0 revert 47688 and 47689
svn path=/trunk/; revision=47691
2010-06-08 01:37:58 +00:00
Timo Kreuzer 9b4daa14f8 [ZLIB]
Revert r47411. This is a test to see if it fixes the sysreg crash in 1st stage.

svn path=/trunk/; revision=47688
2010-06-07 23:39:37 +00:00
Michael Martin 5e130771e7 [rtl]
- Fix a overlooked change needed due to mbstowcs fix. Use the number of WCHARs vice number of bytes to calculate end of xmlbuf. 


svn path=/trunk/; revision=47613
2010-06-06 07:21:53 +00:00
Timo Kreuzer ffc6aac247 [MMEBUDDY]
Make mmebuddy more 64bit compliant. Based on r40127 by Samuel Serapion with some modifications by me.

svn path=/trunk/; revision=47573
2010-06-04 18:37:14 +00:00
Michael Martin be344838ef [rtl]
- len returned from mbstowcs is the required size of the destination string, so only allocate the needed size.
- When doing the actual conversion pass in the size of the ansi string not the needed size of destination.
- These changes were missed in 47527.

svn path=/trunk/; revision=47529
2010-06-03 07:08:07 +00:00
Michael Martin f6d5918b31 [crt]
- mbstowcs: Fix incorrect size passed as the second parameter for call to RtlMultiByteToUnicodeN.
Fixes loading assemblies when manifest is in a manifest file due to parsing failure.

svn path=/trunk/; revision=47527
2010-06-02 23:58:28 +00:00
Timo Kreuzer 72cb5886ab [MMENT4]
Fix warning about uninitialized variable

svn path=/trunk/; revision=47499
2010-05-31 15:27:14 +00:00
Timo Kreuzer f9639de590 [MMENT4]
Remove a ";" after an if (), that makes no sense and caused GetNt4SoundDeviceCapabilities to always return without doing anything.

svn path=/trunk/; revision=47494
2010-05-31 14:11:10 +00:00
Timo Kreuzer aa42ebb18f [OSKITTCP]
Improve the reactos-hack, by changing the ";" after an "if (...)" to "(void)0;" to tell the compiler that we intentionally do nothing in the if body.

svn path=/trunk/; revision=47493
2010-05-31 14:04:24 +00:00
Timo Kreuzer f0c2cec9d5 [CRT]
- add clang compatible asm version of ldexp and make the code more readable
- constify strndup parameter to match standard
- fix broken pointer comparison in signal()

svn path=/trunk/; revision=47479
2010-05-31 01:50:09 +00:00
Timo Kreuzer 2991d5eb42 [CRT]
- Don't define __int64 for clang (patch by Amine Khaldi)
- Fix file and purpose in the header

svn path=/trunk/; revision=47471
2010-05-30 22:28:00 +00:00
Timo Kreuzer 08d4b579ab [lib/3rdparty]
Disable unused value warning here, too

svn path=/trunk/; revision=47465
2010-05-30 21:32:28 +00:00
Eric Kohl d259616ce4 [RTL]
Implement RtlEncodeSystemPointer using the user shared data cookie.

svn path=/trunk/; revision=47429
2010-05-29 21:15:48 +00:00
Eric Kohl 6af485d3aa [FORMATTING]
No code changes.

svn path=/trunk/; revision=47428
2010-05-29 20:40:28 +00:00
Eric Kohl 00fbba2fb4 [NTOSKRNL / RTL]
- Implement BreakOnTermination case for NtQueryInformationProcess and NtSetInformationProcess.
- Implement RtlSetProcessIsCritical.

svn path=/trunk/; revision=47423
2010-05-29 18:22:47 +00:00
Daniel Reimer 85122dfdc4 Update zlib from 1.2.3 to 1.2.5
svn path=/trunk/; revision=47411
2010-05-29 13:22:48 +00:00
Christoph von Wittich 1d5afb8039 [CRT]
fix behavior of _system (fixes msvcrt environ winetest)

svn path=/trunk/; revision=47403
2010-05-29 09:23:23 +00:00
Cameron Gutman d36292eecf [TCPIP]
- Return STATUS_INVALID_ADDRESS if the caller tries to get a non-local address
- Return STATUS_ADDRESS_ALREADY_EXISTS if the caller uses an address that is in use
[MSAFD]
- Translate STATUS_ADDRESS_ALREADY_EXISTS -> WSAEADDRINUSE, STATUS_LOCAL_DISCONNECT -> WSAECONNABORTED, and STATUS_REMOTE_DISCONNECT -> WSAECONNRESET
[IP]
- Translate OSK_EADDRINUSE -> STATUS_ADDRESS_ALREADY_EXISTS, OSK_ECONNABORTED -> STATUS_LOCAL_DISCONNECT, and OSK_ECONNRESET -> STATUS_REMOTE_DISCONNECT
- Fixes waiting for binding during ws2_32 sock winetest

svn path=/trunk/; revision=47379
2010-05-28 04:39:49 +00:00
Timo Kreuzer 21e28a541f [FREETYPE]
Update to 2.3.12, conversion patch already applied

svn path=/trunk/; revision=47363
2010-05-26 11:30:35 +00:00
Timo Kreuzer 66aae4c0fa [FREETYPE]
- Cleanup old files
- Remove setjmplongjmp.s
- Correction to last commit message: the conversion patch was already applied

svn path=/trunk/; revision=47361
2010-05-26 11:07:12 +00:00
Timo Kreuzer 7c79bc896d [FREETYPE]
Patch by Jerome Gardou: Update freetype to 2.3.9
The FT_MulFix patch is not neccessary anymore, the 1BPP -> 8BPP conversion patch will be applied again right after this.
See issue #4537 for more details.

svn path=/trunk/; revision=47360
2010-05-26 10:40:15 +00:00
Gregor Schneider 9863fd3445 [NEWINFLIB] Fix an off-by-one bug, which lead to the crash of mkhive after parsing ~3 files on Windows or ~5 files on Linux
See issue #5338 for more details.

svn path=/trunk/; revision=47208
2010-05-14 21:20:40 +00:00
Gregor Schneider d28f0be86e [INFLIBNEW] Free allocated memory on error
svn path=/trunk/; revision=47206
2010-05-14 20:56:43 +00:00
Eric Kohl 4f7643e5b3 [CMLIB/NEWINFLIB/MKHIVE]
- Make cmlib, newinflib and mkhive use the Wine unicode lib instead of the host_wcsfuncs lib.
- Only the header file include/host/wcsfuncs.h is still used to map str*W functions to wcs* functions in WIN32 builds.
- Remove obsolete rtl functions.
- Make mkhive use the newinflib instead of inflib.

ATTENTION: This might break the build bot although it has been tested on Windows and Linux!!!

svn path=/trunk/; revision=47076
2010-05-01 20:17:11 +00:00
Eric Kohl d771ba8ec6 [NEWINFLIB]
- Change Unicode string functions from wcs* to str*W because glibc (Linux build) provides the wcs* functions but they use a wchar_t size of 32 bits instead of the required 16 bits.
- Add a str*W to wcs* wrapper (infrosrtl.c) in order to use the wcs* function for the WIN32 build.
- Add required str*W functions to the host library.

ATTENTION: This might break the build bot although it has been tested on Windows and Linux!!!

svn path=/trunk/; revision=47071
2010-05-01 10:43:39 +00:00
Eric Kohl 1a9d9f441c [MKHIVE/USETUP]
- Fix buffer size calculation for the parser.
- Do not try to execute an empty registry instruction
Patches by Roel Messiant.

- Stop the parser at the first NULL character.
Patch by me.

svn path=/trunk/; revision=47053
2010-04-28 11:35:34 +00:00
Cameron Gutman 9bab4055b3 [OSKITTCP]
- Add a sanity check
- Dedicated to Caemyr

svn path=/trunk/; revision=47024
2010-04-25 21:00:04 +00:00
Eric Kohl f995cc4ea6 [NEWINFLIB]
- Use LANGID instead of LCID.
- Move LANGID and language macros into the host typedefs header.
- Remove dead code.

svn path=/trunk/; revision=47018
2010-04-25 19:20:59 +00:00
Eric Kohl 0225b59c2d [NEWINFLIB]
Add a UNICODE-aware version of the inflib library.
It is not used by other components yet but usetup and mkhive will use it in the future.
ATTENTION: This commit might break the build bot because I could not test a build on a Linux system.

svn path=/trunk/; revision=47016
2010-04-25 15:58:34 +00:00
Cameron Gutman 740cd5ef90 [IP]
- Don't try to close the connection again if it has already been terminated by the remote peer

svn path=/trunk/; revision=47007
2010-04-24 22:37:45 +00:00
Timo Kreuzer ee1d26e73c [FORMATTING]
- Apply consistent indentation

svn path=/trunk/; revision=47003
2010-04-23 22:16:59 +00:00
Gregor Schneider 31515fdd20 [RTL] Revert s(w)printf changes of r44970
See issue #5125 for more details.

svn path=/trunk/; revision=46855
2010-04-12 20:45:38 +00:00
Aleksey Bragin 71d61c9c59 [NTOSKRNL/CONFIG]
- Flusher lock fixes: wrong kind of lock,total mess (and the wrong kind of lock). Properly fixed throughout cmapi.c, but still missing in many other places.
- Add support for detecting loading of an already loaded hive.
- Start adding calls to CmpReportNotify to support registry callbacks.
- Do work needed to flush notifications for a deleted node (but CmpFlushNotify not yet implemented).
- Add support for adding each newly loaded hive to the HiveList key in the registry (but CmpAddHiveToFileList not yet implemented).
- Add some ViewLock acquire/releases where needed.
- Load the key in a faster way (Ob vs Zw)
- Add checks everywhere for HvMarkCellDirty success. In future (when log/backup file is enabled), it can return FALSE (e.g. when we are out of space).
- Change logic in CmpDoFlushAll to only flush a hive if it won't shrink (in the future, flushing may lead to hive shrinkage for efficiency).
- Add SEH2 protection to all CmApis that may deal with user-mode data.
- Add HvTrackCellRef/HvReleaseCellRef for tracking cell references in scenarios where we might need many GetCell/ReleaseCell calls. For now stubbed to only work with up to 4 static references.
- Properly unlock/free in some failure paths in some of the CM APIs.
- Add some missing HvReleaseCell in paths where it was missing.
- Try to fix hack in enumerate key.
- Fix wrong usage of KeQuerySystemTime. It was called twice to save it in 2 different places. Instead, there should be only one call, and then duplicate the value across.
- Fix logic in CmpSetValueExistingData/Key.

Tested with winetests and .NET framework 1.1 installation which fully completes.

svn path=/trunk/; revision=46702
2010-04-03 20:22:32 +00:00
Johannes Anderwald 90a11f48e9 [MMIXER]
- Copy device name when initializing WAVEINCAPS / WAVEOUTCAPS
- Fixes display wave device name in cpl / waveInGetDevCaps / waveOutGetDevCaps

svn path=/trunk/; revision=46680
2010-04-02 13:49:10 +00:00
Timo Kreuzer d0747d85c1 fix a typo
svn path=/trunk/; revision=46607
2010-03-30 21:35:52 +00:00
Timo Kreuzer 26109e48de [MINGW]
- add back getopt.c (needed by rosapps)
- add ofmt_stub.c and cx_pure_virtual.c


svn path=/trunk/; revision=46606
2010-03-30 21:28:38 +00:00
Timo Kreuzer ffd48df713 [WINE]
define interlocked_xchg_add to InterlockedExchangeAdd

svn path=/trunk/; revision=46604
2010-03-30 19:59:29 +00:00
Timo Kreuzer 794e740131 Merge from amd64 branch:
46478
[CRT]
- define _CRTBLD
- rename float_t/double_t/long_double_t to float_s/double_s/long_double_s to avoid name conflicts

46511
[FREELDR]
snprintf -> _snprintf

46534
[CRT]
- Set crt="static" in freeldr, rtl, bmfs, ftfd, rtl, mini_hal
- define "CRTDLL" in ntdll, crtdll, msvcrt, msvcrt20, msvcrt40

46535
[CRT HEADERS]
- add _mingw_mac.h from ming-w64 and include it into _mingw.h
- Update _CRTIMP definition
- Fix definition of _wctype
- onexit is not _CRTIMP

46537
[MINGW]
Update mingw library to mingw-w64 trunk (mingw-w64-src_20100325)

46538
Apply MSVC compilation fix.

46539
[MINGW]
Apply MSVC compilation fixes

svn path=/trunk/; revision=46597
2010-03-30 13:30:36 +00:00
Timo Kreuzer 8627f5ae27 Merge from amd64-branch:
44467, 44468, 44470, 44471, 46524
[OLDNAMES]
Update moldname-msvcrt.def
Add a proper oldnames lib, instead of implicitly including it with mingw.

46526
[FTP/DHCP]
- remove the oldnames hack, as we now have a proper oldnames lib (included in mingw_common)
- protect struct timezone from redefinition

svn path=/trunk/; revision=46592
2010-03-30 11:09:21 +00:00
Cameron Gutman c0add4aee8 [RTL]
- Fall back to the default user key if RtlFormatCurrentUserKeyPath fails (perhaps we are in a system process)

svn path=/trunk/; revision=46578
2010-03-30 03:26:35 +00:00
Timo Kreuzer 8236cf6a81 [MINGW]
Update mingw library to mingw-w64 trunk (mingw-w64-src_20100325)

svn path=/branches/ros-amd64-bringup/; revision=46537
2010-03-28 23:27:01 +00:00
Timo Kreuzer b8a5d2b45c [CRT]
- Implement x86 ceilf, floorf, fmodf (taken from mingw-w64)
- Implement cosf, sinf, sqrtf (simply wrappers)
- Fix missing definitions

svn path=/branches/ros-amd64-bringup/; revision=46536
2010-03-28 23:18:31 +00:00
Timo Kreuzer 173013b4d4 [CRT]
- Set crt="static" in freeldr, rtl, bmfs, ftfd, rtl, mini_hal
- define "CRTDLL" in ntdll, crtdll, msvcrt, msvcrt20, msvcrt40

svn path=/branches/ros-amd64-bringup/; revision=46534
2010-03-28 23:06:36 +00:00
Timo Kreuzer 0e76e9857c [LIBOLDNAMES]
- add snprintf

svn path=/branches/ros-amd64-bringup/; revision=46524
2010-03-28 20:11:55 +00:00
Timo Kreuzer 9b445221d8 Fix 32bit RtlInitializeSListHead
svn path=/branches/ros-amd64-bringup/; revision=46522
2010-03-28 19:46:29 +00:00
Timo Kreuzer 63cf51be08 [FREETYPE]
- Don't include setjmp/longjmp, we have our own

svn path=/branches/ros-amd64-bringup/; revision=46512
2010-03-28 05:20:27 +00:00
Timo Kreuzer a26b8712a8 Merge from amd64-branch:
46483 (tkreuzer)
[CRT]
- add _wctype table, it's not identical to _ctype as assumed before
- point _pwctype to _wctype instead of _ctype
- implement __pctype_func and __pwctype_func

46502 (tkreuzer)
[MSVCRT]
- enable exports for __pctype_func, __pwctype_func, _wctype

svn path=/trunk/; revision=46504
2010-03-27 23:01:05 +00:00
Timo Kreuzer d134d80d0b [CRT]
- add _wctype table, it's not identical to _ctype as assumed before
- point _pwctype to _wctype instead of _ctype
- implement __pctype_func and __pwctype_func

svn path=/branches/ros-amd64-bringup/; revision=46483
2010-03-27 01:14:24 +00:00
Timo Kreuzer c57a8df416 [CRT]
- define _CRTBLD
- rename float_t/double_t/long_double_t to float_s/double_s/long_double_s to avoid name conflicts

svn path=/branches/ros-amd64-bringup/; revision=46478
2010-03-26 23:41:53 +00:00
Timo Kreuzer f8b4d53d3c revert r39331
svn path=/branches/ros-amd64-bringup/; revision=46477
2010-03-26 23:39:12 +00:00
Timo Kreuzer cb29f7174b Looks like ld doesn't like specifying "-fno-leading-underscore" for anything else then shared modules (aka dlls). Therefore specify "-shared" for apps, too (Should hopefully not make a difference), making them link again.
Since we have switched to non-prefixed symbols, we need to deal with 2 kinds of symbols that the compiler doesn't handle for us. 1.) __image_base__ is still defined the same way by ld, but since gcc doesn't give us an underscore anymore, we need to specify it on our own. 2.) __MINGW_IMP_SYMBOL, which is a hacky way of declaring a symbol dllimport, by prefixing it with __imp_ also needs special treatment. Fix these issues by adding appropriate macros to _mingw.h and removing the broken and duplicate definitions from multiple .c files.

svn path=/branches/ros-amd64-bringup/; revision=46460
2010-03-26 08:58:45 +00:00
Timo Kreuzer b6fae9f55b [RTL]
Fix RtlInitializeSListHead and RtlQueryDepthSList


svn path=/branches/ros-amd64-bringup/; revision=46405
2010-03-24 21:56:24 +00:00
Timo Kreuzer 9df4519b79 Merge trunk HEAD (r46369)
(part 6/6)

svn path=/branches/ros-amd64-bringup/; revision=46380
2010-03-24 00:03:54 +00:00
Timo Kreuzer b751e1e10b [CRT]
Import x87 asm version of pow() from glibc. Replaces our broken implementation, fixing a bunch of winetests (oleaut32 vartest)

svn path=/trunk/; revision=46283
2010-03-20 00:49:30 +00:00
Kamil Hornicek b6e52b15e3 [WIN32K]
When adding new glyph cache entry convert the glyph bitmap with proper alignment to comply with the new code in EngCreateBitmap and remove the corresponding hack from SURFMEM_bCreateDib.

[FREETYPE]
When doing 1BPP -> 8BPP conversion set all 8 bits not only the LSB. (Freetype devs were notified of this issue)
See issue #5244 for more details.

svn path=/trunk/; revision=46246
2010-03-17 12:11:55 +00:00
Timo Kreuzer cbdf28bb6a [HEADERS]
Reintegrate header-work branch. Thanks to hours of boring work on the ddk headers (Most of it done by Amine Khaldi), we have now a decent set, which is still incomplete but already relatively close to latest WDK. A clean rebuild is recommended.

svn path=/trunk/; revision=46155
2010-03-12 23:16:29 +00:00
Hervé Poussineau 37d9cf31a4 Fix include directories
svn path=/trunk/; revision=46015
2010-03-08 21:40:29 +00:00
Sir Richard c14fc3dc56 [CMLIB]: Just use UNIMPLEMENTED.
svn path=/trunk/; revision=46003
2010-03-08 20:46:53 +00:00
Christoph von Wittich c666e0e3e7 [MSCTF]
sync msctf to wine 1.1.40

svn path=/trunk/; revision=45982
2010-03-07 09:48:42 +00:00
Christoph von Wittich 9f04416452 sync RtlCreateActivationContext with wine 1.1.40
svn path=/trunk/; revision=45956
2010-03-06 16:19:07 +00:00
Christoph von Wittich 2097d927f1 [CRT]
sync fseek with wine 1.1.40 (all msvcrt file tests pass now)

svn path=/trunk/; revision=45952
2010-03-06 15:51:12 +00:00
Christoph von Wittich dd3fc3f8e7 [CRT]
sync read_i with wine 1.1.40

svn path=/trunk/; revision=45948
2010-03-06 14:53:55 +00:00
Christoph von Wittich 7632ce84a0 [CRT]
add TrailBytes-info for codepage 1361
<david dot hedberg at gmail dot com>

svn path=/trunk/; revision=45946
2010-03-06 14:40:19 +00:00
Christoph von Wittich 8592512f2f [RTL]
sync find_query_actctx with wine 1.1.40

svn path=/trunk/; revision=45945
2010-03-06 14:29:56 +00:00
Aleksey Bragin 69f20a953b [RTL]
- Fix Samuel's mistake of assuming that xmlstrs are zero-terminated by adding a xmlstr2unicode function, which returns a UNICODE_STRING representation of xmlstr suitable for printing. No debug log garbage now (disadvantage: more code changes compared to the original code).

svn path=/trunk/; revision=45845
2010-03-04 22:05:34 +00:00
Johannes Anderwald 86a010102c [MMIXER]
- Silence warning for Christoph

svn path=/trunk/; revision=45740
2010-03-01 12:08:36 +00:00
Sylvain Petreolle 141b8fafca [RTL]
Use %S for unicode traces.

svn path=/trunk/; revision=45729
2010-02-28 13:18:23 +00:00
Michael Martin f22ab97f8e [lib/rtl]
- Replace commented out try block with SEH2. Patch by Samuel Serapion.

svn path=/trunk/; revision=45717
2010-02-28 00:53:59 +00:00
Timo Kreuzer 9ea495ba33 Create a branch for header work.
svn path=/branches/header-work/; revision=45691
2010-02-26 22:57:55 +00:00
Colin Finck aaaa6b759a We don't need "csq.h" twice in our tree.
This ancient version didn't even receive the GCC 4.1 compatibility update from years ago, so it's safe to remove it.

svn path=/trunk/; revision=45686
2010-02-26 15:22:39 +00:00
Ged Murphy c5b25b8e9b - Move from using include guards to pragma once.
- Whilst this is non-standard and potentially makes the code less portable, it's supported by both gcc and msvc and should bringg increased compilation speed due to its optimized behaviour (doesn't need to invoke the preprocessor)
- Patch by Amine Khaldi [amine.khaldi@reactos.org]

svn path=/trunk/; revision=45685
2010-02-26 11:43:19 +00:00
Daniel Reimer 90ce7d8b37 XML Compliance Patch for the RBUILD Files. By Samuel Serapion
svn path=/trunk/; revision=45631
2010-02-20 12:41:24 +00:00
Johannes Anderwald dd15553124 [MMIXER, WDMAUD_KERNEL]
- Implement retrieving device path

svn path=/trunk/; revision=45582
2010-02-12 06:18:31 +00:00
Johannes Anderwald a19cbab2fc [WDMAUD_KERNEL]
- Replace mixer / wave support code by mmixer library
[MMIXER]
- Compare device name from 2 character onwards as there are difference in paths in user mode / kernel mode
- Invoke create pin callback if the caller provides it
[WDMAUD.DRV]
- Apply changes from mmixer library

-- Tested in Vbox with Winamp / ReactOS mplay32

svn path=/trunk/; revision=45579
2010-02-11 21:04:57 +00:00
Cameron Gutman f11ee9cfaf - Merge r45531 and r45545 from aicom-network-branch
svn path=/trunk/; revision=45546
2010-02-10 00:55:58 +00:00
Colin Finck 75538f4c0a The big RosBE 1.5 compatibility patch. You will need RosBE 1.5 from this point!
- Set the minimum GCC version to 4.4.0 and minimum Binutils version to 20091016.
- Remove the -fno-unit-at-a-time hacks.
- Remove dgorbachev's temporary hacks for user-mode C++ applications.
- Merge ntoskrnl's "precomp.h" and "ntoskrnl.h" again, the PCH issues have been fixed.
- Use our "ofmt_stub.a" to be compatible with newer MinGW Runtime versions.
- Use LD's new -exclude-all-symbols option to not auto-export all symbols in case no DEF file or __declspec(dllexport) was specified.
  We used to patch our LD version to work around this problem.
- Use LD's --start-group and --end-group parameters to allow a more flexible linking order.
- Use GCC's -fno-set-stack-executable for amd64 and i386 targets to disable adding the __enable_execute_stack code.
- Change the makefile's name to "makefile-$(ARCH).auto" for all architectures.
- Remove some -Wno-error flags.

See issue #4810 for more details.

svn path=/trunk/; revision=45535
2010-02-09 18:14:58 +00:00
Timo Kreuzer 2e97a01a5d add setjmp/longjmp to libcntpr, just like in ms sdks
svn path=/trunk/; revision=45522
2010-02-09 02:34:42 +00:00
Timo Kreuzer eb35955f30 Merge trunk head (r45466)
svn path=/branches/ros-amd64-bringup/; revision=45467
2010-02-06 20:36:45 +00:00
Timo Kreuzer 077f4e3c79 Add x86emu to build
svn path=/branches/ros-amd64-bringup/; revision=45465
2010-02-06 19:14:12 +00:00
Timo Kreuzer b63bed2d38 [X86EMU]
Beginning of a real mode x86 emulator for BIOS calls.

svn path=/branches/ros-amd64-bringup/; revision=45464
2010-02-06 19:13:54 +00:00
Timo Kreuzer 6bfc56886a [RTL]
Prevent RtlLargeInteger functions to be "occupied" by inline functions.

svn path=/branches/ros-amd64-bringup/; revision=45463
2010-02-06 19:12:02 +00:00
Timo Kreuzer 88e4860fb6 [RTL]
__inline__ -> __inline

svn path=/branches/ros-amd64-bringup/; revision=45445
2010-02-06 01:29:37 +00:00
Timo Kreuzer 0e4459beb1 [CRT]
- Remove underscore from _MsgUnimplemented

svn path=/branches/ros-amd64-bringup/; revision=45444
2010-02-06 01:28:58 +00:00
Timo Kreuzer 7e65e8ce41 [RTL]
Make slist.S ML64 compatible

svn path=/branches/ros-amd64-bringup/; revision=45428
2010-02-05 02:51:38 +00:00
Timo Kreuzer 139c298d14 [RTL]
MSVC compatibility fixes: inline -> __inline

svn path=/branches/ros-amd64-bringup/; revision=45426
2010-02-05 01:36:20 +00:00
Timo Kreuzer 28c8b7fbec [AMD64]
Switch from underscore prefixed symbols to unprefixed symbols. (MSVC compatibility)

svn path=/branches/ros-amd64-bringup/; revision=45410
2010-02-04 04:58:09 +00:00
Timo Kreuzer cb076d0fef [CRT]
Add back sin and cos to libcntpr, as they are needed by win32k atm ...

svn path=/branches/ros-amd64-bringup/; revision=45409
2010-02-04 04:45:58 +00:00
Timo Kreuzer f495eb586a Fix setjmp based on the new syntax
svn path=/branches/ros-amd64-bringup/; revision=45397
2010-02-03 18:47:30 +00:00
Timo Kreuzer da4f165f23 inline -> __inline
svn path=/branches/ros-amd64-bringup/; revision=45393
2010-02-03 16:50:34 +00:00
Johannes Anderwald 6c11399f0a [MMEBUDDY]
- Hackfix corruption of audio buffer list which made the playback thread spin forever on an already played buffer.
- Tested with Winamp / VLC / mplay32 with Vbox 3.1.2

svn path=/trunk/; revision=45360
2010-01-31 19:09:30 +00:00
Cameron Gutman 95b2e7519e - Merge some small changes from aicom-network-branch to fix potential memory corruption and remove unused code in oskittcp
- Add a hack to WSHSetSocketInformation so we don't fail with options that aren't implemented yet
 - Fixes bug #5131

svn path=/trunk/; revision=45356
2010-01-31 02:07:23 +00:00
Timo Kreuzer 9943d23d5d fix the same typo once more
svn path=/branches/ros-amd64-bringup/; revision=45295
2010-01-28 02:37:28 +00:00
Timo Kreuzer 01afdbbe91 [CRT]
Implement sin() in C. Code is actually 99% identical to cos.
Note: We are using even exponents for sin, too, as this results in higher precision than using uneven exponents.

svn path=/branches/ros-amd64-bringup/; revision=45294
2010-01-28 01:18:12 +00:00
Timo Kreuzer 80be387663 fix a typo
svn path=/branches/ros-amd64-bringup/; revision=45292
2010-01-28 00:59:40 +00:00
Cameron Gutman 6fcc316845 - Merge aicom-network-branch (still without the NDIS stuff)
- Fixes some nasty bugs and hacks in our TCP implementation

svn path=/trunk/; revision=45291
2010-01-28 00:24:00 +00:00
Timo Kreuzer c21ada51d6 [CRT]
- implement generic C version of cos(). On amd64 machines it will compile into very optimized SSE2 code. No need to use assembly.

svn path=/branches/ros-amd64-bringup/; revision=45290
2010-01-27 23:42:34 +00:00
Timo Kreuzer 9c9f4a9fd7 Revert r45245 - r45247
Although the idea of using mingw-w64's routines is good, we can't because it's using x87. We need SSE2.

svn path=/branches/ros-amd64-bringup/; revision=45255
2010-01-25 22:01:02 +00:00
Samuel Serapion 3ec17c4a18 Fix amd64 libcntpr.
svn path=/branches/ros-amd64-bringup/; revision=45247
2010-01-25 11:54:37 +00:00
Samuel Serapion 2ce7897109 [MSVCRT]
- Convert to spec, based on wine. Tons of stuff missing but compiles, links and runs abiword and firefox.
- Export floating point functions.
[CRT]
- Implement acosf, asinf, atanf, atan2f, copysign, copysignf, exp, expf, fabs, fmod, fmodf, hypotf, ceil, ceilf, cos, cosf, floor, floorf, log, log10, sin, sinf, tan, tanf, ldexp, log10f, logb, logbf, logf, modff, nextafter, nextafterf, powf, sinhf, sqrt, sqrtf, tanf, tanhf in amd64 compatible way. Made possible by mingw-w64.

svn path=/branches/ros-amd64-bringup/; revision=45245
2010-01-25 11:10:06 +00:00
Aleksey Bragin 5c2e1ab00c Jose Catena <jc1@diwaves.com>
- Fix a typo in aulldvrm (one of the dividends was always wrong).
See issue #5139 for more details.

svn path=/trunk/; revision=45211
2010-01-23 19:26:06 +00:00
Timo Kreuzer ed70a6466b fix build with USERMODE = 1
svn path=/branches/ros-amd64-bringup/; revision=45192
2010-01-21 19:48:38 +00:00
Timo Kreuzer 5f457606f3 Merge trunk r45185
svn path=/branches/ros-amd64-bringup/; revision=45186
2010-01-21 18:34:48 +00:00
Cameron Gutman ffdab4c2f5 Merge aicom-network-branch (without NDIS changes for now)
New noteworthy improvements include (in addition to the other improvements made in the commits that were reverted in trunk):
 - Support for sending/receiving packets > 16KB in size
 - Samba-tng works
 - Tracert works
 - Major speed and stability improvements (especially for TCP connections)
 - Use ExAllocatePoolWithTag/ExFreePoolWithTag instead of memtrack

svn path=/trunk/; revision=45172
2010-01-21 03:48:10 +00:00
Timo Kreuzer 801f2e9f36 [RTL]
Fix a bug in RtlFindNextForwardRunSet, that was returning the wrong bit position. Found by Amine Khaldi.

svn path=/trunk/; revision=45167
2010-01-20 23:34:21 +00:00
Timo Kreuzer 74cd1f3fa7 [CRT]
Remove unused variables. Patch by Amine Khaldi.

svn path=/trunk/; revision=45165
2010-01-20 22:56:01 +00:00
Aleksey Bragin 13f71da4f1 [SDK]
- Add missing IIDs to UUID.

svn path=/trunk/; revision=45099
2010-01-16 13:52:51 +00:00
Timo Kreuzer 46d47eb029 [CRT]
Patch by Jose Catena:
vsnprintf: added support for ll size specifier

See issue #5122 for more details.

svn path=/trunk/; revision=45089
2010-01-15 21:00:20 +00:00
Timo Kreuzer 59e66ba7e8 [CRT]
Patch by Jose Catena:
allmul produced wrong results when the higher 32 bits of any of the 64 bit operands are not zero. As the comment correctly said the definition of param locations must change
since esp was altered, but the definitions were not actually changed

See issue #5121 for more details.

svn path=/trunk/; revision=45088
2010-01-15 20:45:36 +00:00
Timo Kreuzer 7af355b0e9 reduce difference to trunk
svn path=/branches/ros-amd64-bringup/; revision=45077
2010-01-14 09:47:01 +00:00
Timo Kreuzer 5e5df9a707 Sync to trunk HEAD (r45072)
svn path=/branches/ros-amd64-bringup/; revision=45074
2010-01-14 08:53:42 +00:00
Timo Kreuzer cffde6eb86 [CRT]
__wine_push_frame and __wine_pop_frame are only used in x86 specific code in cppexcept.c. Move them there instead of trying to implement them for other architectures.

svn path=/branches/ros-amd64-bringup/; revision=45053
2010-01-12 20:09:38 +00:00
Eric Kohl ba16f69763 Removed outdated email addresses.
svn path=/trunk/; revision=45020
2010-01-09 22:43:16 +00:00
Timo Kreuzer 2736e830ea [RTL]
Merge from amd64 branch
35738,37004,37308,37324,37330,37331,37332,37370,37419,37424,37425,37428,37473,37492,37844,37911,37987,40604,41006,43686,43951,43953,43980,43993,44001,44289,44295,44296,44428,44966,44967,44968

- Implement amd64 specific RTL functions: RtlLookupFunctionTable, RtlLookupFunctionEntry, RtlCaptureContext, RtlVirtualUnwind, RtlWalkFrameChain, RtlGetCallersAddress, RtlRaiseException (Timo Kreuzer)
- Implement amd64 asm functions: RtlCompareMemory, DebugService, RtlInterlockedPopEntrySList, RtlInterlockedPushEntrySList and RtlInterlockedFlushSList (Timo Kreuzer)
- Don't use double in rtl's sprintf / swprintf, use double_t union instead. (Stefan Ginsberg)

svn path=/trunk/; revision=44970
2010-01-06 00:39:07 +00:00
Timo Kreuzer ef9b8f7942 [RTL]
Patch by Stefan Ginsberg:
Don't use double in rtl's sprintf / swprintf, use double_t union instead. Minor modifications by me.

svn path=/branches/ros-amd64-bringup/; revision=44968
2010-01-05 23:02:08 +00:00
Timo Kreuzer 7894b5b522 revert changes to exception.x from 44966
svn path=/branches/ros-amd64-bringup/; revision=44967
2010-01-05 22:58:45 +00:00
Timo Kreuzer 51a5da9298 [RTL]
Reduce difference to trunk (wtf happened to actctx.c?)

svn path=/branches/ros-amd64-bringup/; revision=44966
2010-01-05 22:12:20 +00:00
Timo Kreuzer 519d3fe61a add global allowwarning="true" and unhack the other rbuild files
svn path=/branches/ros-amd64-bringup/; revision=44964
2010-01-05 21:18:17 +00:00
Timo Kreuzer 05c33f5b6b [ATL]
Merged from amd64 branch:
- add amd64 specific thunkCode
- get rid of a cast

svn path=/trunk/; revision=44950
2010-01-05 17:38:03 +00:00
Aleksey Bragin 887a166980 Daniel Zimmermann <netzimme@aim.com>
- Implement RtlDnsHostNameToComputerName.
See issue #5092 for more details.

svn path=/trunk/; revision=44948
2010-01-05 16:37:32 +00:00
Timo Kreuzer 1f27265ceb [LSALIB]
Fix ULONG -> pointer cast

svn path=/branches/ros-amd64-bringup/; revision=44941
2010-01-05 00:26:54 +00:00
Timo Kreuzer c6f200a18b Sync to trunk (r44933)
svn path=/branches/ros-amd64-bringup/; revision=44938
2010-01-05 00:11:08 +00:00
Ged Murphy b19ad21200 Fix __STDC_WANT_SECURE_LIB__ redefinition
svn path=/trunk/; revision=44928
2010-01-04 14:02:49 +00:00
Johannes Anderwald c42d9f27cc [MMIXER]
- Implement registering hardware events (volume / mute control changes)
- Fix a bug when querying a source mixer line. The wrong line id was passed which caused the call to fail.

svn path=/trunk/; revision=44872
2010-01-02 01:52:12 +00:00
Eric Kohl a22d21e20c spaces -> tabs
svn path=/trunk/; revision=44794
2009-12-28 12:02:32 +00:00
Eric Kohl b837d58c19 - Lsasrv: Create the LsaAuthenticationPort and add a basic server loop that listens to incoming requests.
- Lsalib: Combine request and reply data of the register request into a connection info struct.

My test application can now connect to the LsaAuthenticationPort.

svn path=/trunk/; revision=44793
2009-12-28 11:59:20 +00:00
Timo Kreuzer 5f039ce636 fix USERMODE=0 compilation
svn path=/branches/ros-amd64-bringup/; revision=44778
2009-12-27 21:30:36 +00:00
Eric Kohl 2db30d58d2 [lsalib]
Fix indentation. No code changes.

svn path=/trunk/; revision=44776
2009-12-27 19:46:13 +00:00
Eric Kohl fc5a89cd69 Move the client-side LSA functions from secur32.dll to the new static library lsalib because these functions will be shared between ntoskrnl.exe, advapi32.dll and secur32.dll.
svn path=/trunk/; revision=44774
2009-12-27 19:10:30 +00:00
Samuel Serapion 6d3684469e sync to trunk (44770)
svn path=/branches/ros-amd64-bringup/; revision=44771
2009-12-27 17:55:04 +00:00
Johannes Anderwald 3a6c7402a5 [MMIXER]
- Store correct mixer handle in the mixer info
- mmixer can now handle set / get volume and on-off (mute) requests

svn path=/trunk/; revision=44756
2009-12-25 01:21:29 +00:00
Gregor Schneider 0567d77694 [msvcrt] Update c++ symbol demangling to Wine 1.1.35 (msvcrt:cpp test buffer overrun)
svn path=/trunk/; revision=44742
2009-12-23 17:48:27 +00:00
Christoph von Wittich 322ce004ae [crt]
import _wcsupr_s from wine 1.1.35

svn path=/trunk/; revision=44725
2009-12-23 10:56:54 +00:00
Christoph von Wittich 17fdbfeb72 [crt]
sync wcscpy_s with wine 1.1.35

svn path=/trunk/; revision=44724
2009-12-23 10:44:24 +00:00
Johannes Anderwald 86558f7d81 [MMIXER]
- Implement a function for controlling the wave pin state

svn path=/trunk/; revision=44720
2009-12-23 02:49:18 +00:00
Johannes Anderwald 43fd6670e8 [MMIXER]
- Fix a bug in the file header

svn path=/trunk/; revision=44717
2009-12-22 18:08:51 +00:00
Johannes Anderwald f45bd7617a [MMIXER]
- Add support for enumerating wave in/out devices. Based on the wdmaud driver code

svn path=/trunk/; revision=44664
2009-12-20 00:55:55 +00:00
Johannes Anderwald cf7f39eaba [MMIXER]
- Fix buffer overflow

svn path=/trunk/; revision=44660
2009-12-19 21:44:39 +00:00
Johannes Anderwald cce0070699 [MMIXER]
- Fix broken check in MMixerAddMixerControl, which only copied the node name on failure
- Add initialization of LineControlsExtraDat LIST_ENTRY type, which resulted in a crash

svn path=/trunk/; revision=44659
2009-12-19 20:45:29 +00:00
Johannes Anderwald 82dfe03d66 [MMIXER]
- Open all filters before starting enumeration. The advantage is that some filters are not opened twice
- Query the Mixer Name from Registry by opening the device interface registry key and querying for the value of FriendlyName. If it cannot be found, try to find the key under the sub key 'Device Parameters'

svn path=/trunk/; revision=44646
2009-12-18 10:25:41 +00:00
Johannes Anderwald 3efe83afa3 - Add mmixer to build
svn path=/trunk/; revision=44560
2009-12-13 11:33:23 +00:00
Johannes Anderwald a20e1844ce [MMIXER]
- Add more error checks
- Fix a bug MMixerGetControlsFromPinByConnectionIndex which pre-early stopped the enumeration of mixer controls
- Only add guids which can be later be resolved to mixer control
- Check if no a topology connection has no links connected

svn path=/trunk/; revision=44559
2009-12-13 11:32:44 +00:00
Samuel Serapion 42610c6d93 -Remove hacks for older gcc versions.
-Black list gcc below 4.4.2
-Black list ld below 20091119.
-99.99% Based on bug 4810
-Speeds up my build by 3 minutes

svn path=/branches/ros-amd64-bringup/; revision=44550
2009-12-12 15:41:43 +00:00
Dmitry Gorbachev 6b2612bba2 Fix typo in _aullrem(), reported by zhangbonian (zhangbonian17*at*163*dot*com), bug #5015.
svn path=/trunk/; revision=44548
2009-12-12 14:28:45 +00:00
Johannes Anderwald c9c03a799f [MMIXER]
- Add mixerline for audio filters which expose their topology on the same filter such as usb audio cards
- Retrieve pin name of the target pin in order to display the correct name for the destination audio mixer line

svn path=/trunk/; revision=44538
2009-12-11 14:01:39 +00:00
Johannes Anderwald 3953b7855d [MMIXER]
- Store MixerList in MixerContext member
- Fix a lot of bugs
- MMixer is now able to enumerate mixers and their associated controls

svn path=/trunk/; revision=44522
2009-12-10 12:27:16 +00:00
Johannes Anderwald bc8c3e9a2d [MMIXER]
- Define all used node types and property guids

svn path=/trunk/; revision=44486
2009-12-09 16:28:12 +00:00
Johannes Anderwald 91b69c9d1d [MMIXER]
- Implement MMixerGetLineInfo, MMixerGetLineControls, MMixerSetControlDetails, MMixerGetControlDetails, MMixerOpen
- MMixer library is now ready for testing

svn path=/trunk/; revision=44482
2009-12-09 16:00:28 +00:00
Johannes Anderwald 757fd23400 [MMIXER]
- Store initialized mixers in a struct MIXER_LIST
- Implement MMixerGetCapabilities

svn path=/trunk/; revision=44479
2009-12-09 09:51:39 +00:00
Samuel Serapion 9ed44b0a95 commit stragglers from main tree
svn path=/branches/ros-amd64-bringup/; revision=44477
2009-12-09 01:20:38 +00:00
Johannes Anderwald b1e100ebd8 [MMIXER]
- Finish porting of code from wdmaud

svn path=/trunk/; revision=44473
2009-12-08 21:10:02 +00:00
Timo Kreuzer ca0ebabfdd Update moldname-msvcrt.def
svn path=/branches/ros-amd64-bringup/; revision=44471
2009-12-08 17:14:33 +00:00
Timo Kreuzer be39596e77 Thanks to ktietz for his awesome dlltool patch!
Will require dlltool 2.20.51.20091118


svn path=/branches/ros-amd64-bringup/; revision=44470
2009-12-08 16:41:01 +00:00
Timo Kreuzer c2d98129d6 Fix 2nd try.
svn path=/branches/ros-amd64-bringup/; revision=44468
2009-12-08 14:32:39 +00:00
Timo Kreuzer d070fd9f2f Try to fix encoded's broken apps.
svn path=/branches/ros-amd64-bringup/; revision=44467
2009-12-08 14:00:42 +00:00
Timo Kreuzer 8d819f40bb Fix regressions.
svn path=/trunk/; revision=44466
2009-12-08 03:06:40 +00:00
Timo Kreuzer 4e6d2d7136 Cleanup test code, improve comments.
svn path=/trunk/; revision=44465
2009-12-08 02:18:42 +00:00
Timo Kreuzer 66fe9a0793 [RTL]
Rewrite the rtl bitmap implementation.
The old one was a little .... suboptimal. The new one should outperform the old one by several orders of magnitude, especially RtlFindClearBits that was literally searching bit by bit.

svn path=/trunk/; revision=44464
2009-12-08 01:02:36 +00:00
Johannes Anderwald 2ddde07951 - Start implementing a mixer library. The mixer library is based directly on the code in the wdmaud driver. The purpose is to provide a generic library which can be used in usermode (wdmaud.drv (Vista Driver Model)/ dsound) or in kernel mode. In addition, it can be used to test mixer implementation.
svn path=/trunk/; revision=44452
2009-12-07 10:28:49 +00:00
Timo Kreuzer 3ab9af72ac - merge r44429
- fix hal_generic_amd64.rbuild
- add missing files

svn path=/trunk/; revision=44430
2009-12-06 02:44:06 +00:00
Timo Kreuzer 7fc8065685 Fix uninitialized variable
svn path=/branches/ros-amd64-bringup/; revision=44428
2009-12-05 22:48:43 +00:00
Gregor Schneider 246ae043bc [rtl]
- Update status to error mapping tables and functions to current Wine sources
- Needed to for ERROR_TIMEOUT, ERROR_SXS_CANT_GEN_ACTCTX, ERROR_MR_MID_NOT_FOUND and several others
- Remove RtlNtStatusToPsxErrno - nobody will miss it
- Fixes ~20 kernel32 actctx winetests

svn path=/trunk/; revision=44410
2009-12-05 13:07:02 +00:00
Samuel Serapion 8744e698e9 Remove broken definitions from oskit bsd headers. Fixes numerous warnings.
svn path=/branches/ros-amd64-bringup/; revision=44396
2009-12-04 00:12:31 +00:00
Samuel Serapion 3c616c6610 fix copy/paste mistake.
svn path=/branches/ros-amd64-bringup/; revision=44382
2009-12-03 18:26:55 +00:00
Samuel Serapion 5da523a6b0 Don't use calloc, fixes building even more modules.
svn path=/branches/ros-amd64-bringup/; revision=44381
2009-12-03 18:10:08 +00:00
Samuel Serapion fe58a95923 Re-add old name hack, fixes building some modules
svn path=/branches/ros-amd64-bringup/; revision=44380
2009-12-03 18:03:22 +00:00
Samuel Serapion 07bd1f96bd Sync to trunk (r44371)
svn path=/branches/ros-amd64-bringup/; revision=44372
2009-12-03 07:26:32 +00:00
Colin Finck dfa9eb6204 [General]
- Remove the "kernel32" library reference in all .rbuild files of user-mode modules, because this one is already added by "mingw_common". Also fix the indentation in some files.

svn path=/trunk/; revision=44368
2009-12-02 20:32:16 +00:00
Michael Martin e2e8b52413 SXS Support Part 1 of 2. All import work done by Samuel Serapión with some small changes my me.
[lib/rtl]
- Import Rtlxx and related functions for Activation Context Support from WINE.
- Implement RtlAllocateActivationContextStack.
- Modify get_manifest_in_manifest_file function to use FileStandardInformation vice FileEndOfFileInformation (currently unsupported) in call to NtQueryInformationFile.
- Add structs RTL_ACTIVATION_CONTEXT_STACK_FRAME and ACTIVATION_CONTEXT_STACK from WINE.
- Add ActivationContextStackPointer to TEB.
- Define QUERY_ACTCTX_FLAG_NO_ADDREF.Will become active with changes to ntdll loader in Part 2.

svn path=/trunk/; revision=44359
2009-12-02 09:43:35 +00:00
Cameron Gutman 29fa274d6d - Create another branch for networking fixes
- TSVN choked repeatedly when attempting to merge ~9000 revs into the branch (tried 3 times on 2 different computers)
 - If someone wants to delete aicom-network-fixes, they are welcome to
 - Lesson learned: Letting a branch get thousands of revs out of date is a horrible idea

svn path=/branches/aicom-network-branch/; revision=44353
2009-12-02 03:23:19 +00:00
Gregor Schneider 09bdd4ffa0 [ntdll]
- Logic change of r37554 is correct, RtlTimeFieldsToTime doesn't normalize invalid input values - remove these codes
- Related to bug #4917, part 1

svn path=/trunk/; revision=44344
2009-12-01 18:46:13 +00:00
Johannes Anderwald 647f63f881 [MMEBUDDY]
- Return correct error code
- Fixes last 4 four winmm_winetest mixer test failures

svn path=/trunk/; revision=44325
2009-11-29 21:17:15 +00:00
Gregor Schneider 9560d47053 [msvcrt]
- Validate the process heap 
- Remove validation as soon as this function is tested

svn path=/trunk/; revision=44313
2009-11-28 19:35:47 +00:00
Gregor Schneider 8e09c97596 [msvcrt]
- Fix buffer calculation in argvtoW, missed unicode character size
- Fixes another crash during GIMP startup, now GIMP starts (bug #3503, part 2)
- Fix same problem in valisttoA/W

svn path=/trunk/; revision=44307
2009-11-28 15:16:36 +00:00
Gregor Schneider b06cec2ffd [msvcrt]
- Use the process heap for malloc and friends
- Fixes a crash during GIMP startup (bug #3503, part 1)

svn path=/trunk/; revision=44306
2009-11-28 15:13:18 +00:00
Gregor Schneider 91523d7181 [msvcrt] Update scanf family with a patch that also went to Wine (http://source.winehq.org/git/wine.git/?a=commit;h=2043035e1749e40e23853d751ac1410d39fc8d27):
Calculate floating point decimals in internally used long double precision.
Fixes bug #4092 (calculator imprecision)

svn path=/trunk/; revision=44304
2009-11-28 15:01:40 +00:00
Aleksey Bragin 212d5ee24e - Revert the oskit locking rewrite in trunk, it's better to test/debug it in the branch first. Reverted revisions numbers: 44268, 44267, 44266, 44250, 44199, 44166-163, 44021, 44010, 43926, 43922, 43883.
svn path=/trunk/; revision=44301
2009-11-28 14:45:21 +00:00
Timo Kreuzer 60bf8d9cd4 Implement "portable" SList code for 64 bit
svn path=/branches/ros-amd64-bringup/; revision=44296
2009-11-27 17:37:07 +00:00
Timo Kreuzer a3ec73cfaf Some more fixes for RtlInterlockedPopEntrySList and RtlInterlockedPushEntrySList
svn path=/branches/ros-amd64-bringup/; revision=44295
2009-11-27 17:30:25 +00:00
Timo Kreuzer ba13b6786a - rewrite the completely broken RtlInterlockedPopEntrySList, implement RtlInterlockedPushEntrySList, RtlInterlockedFlushSList
- use these for ExpInterlocked*
- remove a bunch of Interlocked* functions from amd64 kernel exports

svn path=/branches/ros-amd64-bringup/; revision=44289
2009-11-26 22:40:07 +00:00
Cameron Gutman 3384debaf5 - Initialize SocketError to 0 to prevent a bogus error from GCC
svn path=/trunk/; revision=44286
2009-11-25 18:08:43 +00:00
Cameron Gutman e016a230af - Fix a race condition that occurs when an IRP gets cancelled after it is inserted into the completion queue but before it is completed
svn path=/trunk/; revision=44267
2009-11-22 02:32:47 +00:00
Cameron Gutman 83bc88465f - Remove memtrack and use tags instead (ExAllocatePoolWithTag/ExFreePoolWithTag)
- Cleanup DriverEntry
 - Remove DEFINE_TAG
 - Remove checkpoints in TiCreateFileObject

svn path=/trunk/; revision=44266
2009-11-21 23:53:43 +00:00
Cameron Gutman c71cdeb49d - Disassociate the socket context before closing so we don't get signalled with a freed context (major cause of crashes)
- Signal the connection directly from TCPSocketState
 - Remove some unused code
 - Queue completion requests on a separate list so we don't have to keep locking and unlocking while completing
 - Add better locking to tcpip (not the lib)
 - Remove some unused variables
 - Don't hold the cancel spin lock longer than necessary
 - Check that we successfully got the device description

svn path=/trunk/; revision=44250
2009-11-21 13:00:37 +00:00
Cameron Gutman a2350b62d8 - Implement OskitTCPGetSocketError which retreives so->so_error
- Use OskitTCPGetSocketError to get the actual socket error which occurred when get SEL_FIN
 - Add more cases to TCPTranslateError

svn path=/trunk/; revision=44199
2009-11-16 07:39:52 +00:00
Cameron Gutman f0680faa1a - Fix build (try 3)
- I have no idea how this built for me

svn path=/trunk/; revision=44166
2009-11-14 19:03:37 +00:00
Cameron Gutman f3d4211e56 - Use a spin lock to protect OSKit instead of a recursive mutex
- Remove the now unused recursive mutex code
 - Don't clear the SS_ISCONNECTING flag when soconnect returns EINPROGRESS because it causes a crash during soreceive
 - Lock CONNECTION_ENDPOINT and ADDRESS_FILE structs better
 - Remove incorrect IoMarkIrpPending calls
 - Remove useless ASSERT_LOCKED
 - Don't destroy so_connection when we close a connection
 - Remove useless FileFindConnectionByContext
 - Remove SignalledConnectionsList and SignalledConnectionsLock and simply loop through ConnectionEndpointList for signalled connections
 - Add connections to ConnectionEndpointList in TCPAllocateConnectionEndpoint instead of FileOpenConnection so we don't miss listeners
 - Remove connections from ConnectionEndpointList in TCPFreeConnectionEndpoint instead of FileCloseConnection so we don't miss listeners
 - Use ExInterlockedRemoveHeadList to remove entries in the address file's request lists
 - Remove useless members, flags, and variables in titypes.h and tcp.h
 - Fixes bug 4955 and 4434

svn path=/trunk/; revision=44163
2009-11-14 18:38:02 +00:00
Timo Kreuzer d25b422abb fix x86 build
svn path=/branches/ros-amd64-bringup/; revision=44146
2009-11-14 02:11:01 +00:00
Johannes Anderwald 955b60c3ad - Silence
svn path=/trunk/; revision=44135
2009-11-13 15:00:33 +00:00
Johannes Anderwald ccc63ddced [PSDK]
- Fix MIXEROPENDESC struct(x64 compability issue)
[MMEBUDDY]
- Fix usage of MIXEROPENDESC
[WDMAUD.DRV]
- Implement a listening thread which waits for volume level / mute control changes

svn path=/trunk/; revision=44133
2009-11-13 14:22:11 +00:00
KJK::Hyperion 18d9f647bc modified lib/3rdparty/mingw/mingw.rbuild
oldnames is not an import library and dlltool --add-underscore is not an appropriate way to build it. Delete it for now

modified   base/applications/network/ftp/ftp.rbuild
modified   base/applications/winhlp32/winhlp32.rbuild
modified   base/services/dhcp/dhcp.rbuild
modified   dll/win32/crypt32/crypt32.rbuild
modified   dll/win32/mshtml/mshtml.rbuild
modified   dll/win32/setupapi/setupapi.rbuild
modified   dll/win32/wininet/wininet.rbuild
modified   lib/3rdparty/libxml2/libxml2.rbuild
   Workarounds for the removal of oldnames

modified   dll/directx/d3d8/d3d8.rbuild
   Use a file that actually exists

modified   dll/win32/crtdll/crtdll.rbuild
modified   dll/win32/msvcrt/msvcrt.rbuild
   "mangledsymbols" never did anything: remove it

modified   dll/win32/msvcrt/msvcrt.def
modified   lib/sdk/crt/crt.rbuild
   We don't actually implement j0/j1/jn/y0/y1/yn: _j0 calls __imp__j0, which is an alias for __imp___j0, which redirects back to _j0 in a perfect loop. Remove them for the time being

modified   lib/3rdparty/bzip2/bzip2.rbuild
   This was actually called unbzip2.dll. Who knew

svn path=/trunk/; revision=44090
2009-11-11 03:21:16 +00:00
Timo Kreuzer 843b9ee1eb Merge trunk HEAD (r44067)
svn path=/branches/ros-amd64-bringup/; revision=44069
2009-11-10 02:40:48 +00:00
Cameron Gutman 024d413ccb - Stop using the TCPLock to protect all entries into the IP lib
- Instead use TCPLock only to protect entries into oskittcp

svn path=/trunk/; revision=44021
2009-11-07 20:41:57 +00:00
Cameron Gutman 290a30a5cb - Remove TCPSleep and TCPWakeup (we make all oskittcp sockets non-blocking)
- Crash ROS better in oskittcp_die

svn path=/trunk/; revision=44010
2009-11-07 18:12:58 +00:00
Timo Kreuzer 666dea45e0 [RTL]
- Implement RtlRaiseException

svn path=/branches/ros-amd64-bringup/; revision=44001
2009-11-07 15:26:12 +00:00
Timo Kreuzer 033911d0ff [RTL]
Simplify RtlLookupFunctionTable

svn path=/branches/ros-amd64-bringup/; revision=43993
2009-11-07 03:33:00 +00:00
Timo Kreuzer 4896a4fbb2 use RtlPcToFileHeader instead of RtlpLookupModuleBase
svn path=/branches/ros-amd64-bringup/; revision=43980
2009-11-05 20:57:53 +00:00
Timo Kreuzer 78f7d3afa4 add memcpy symbol, to resolve references created by the compiler
svn path=/branches/ros-amd64-bringup/; revision=43968
2009-11-05 03:24:40 +00:00
Timo Kreuzer 1dac06d95f Hey Arch, next time you change 3rdparty code, either make sure, it's merged upstream or provide a diff, please.
Adding back MSVC fixes.

svn path=/branches/ros-amd64-bringup/; revision=43964
2009-11-04 23:15:07 +00:00
Timo Kreuzer 0252732c7f Fix rbuild file
svn path=/branches/ros-amd64-bringup/; revision=43957
2009-11-04 21:34:46 +00:00
Timo Kreuzer 61675d02e0 Sync mingw lib to version 4.4.1-1a
svn path=/branches/ros-amd64-bringup/; revision=43956
2009-11-04 21:22:53 +00:00
Timo Kreuzer b6c42c50a3 fix RtlAddFunctionTable
svn path=/branches/ros-amd64-bringup/; revision=43953
2009-11-04 21:05:16 +00:00
Timo Kreuzer 3bc05c77d1 Add RtlAddFunctionTable, RtlDeleteFunctionTable, RtlInstallFunctionTableCallback stubs
svn path=/branches/ros-amd64-bringup/; revision=43951
2009-11-04 20:38:19 +00:00
Cameron Gutman 99fec75b6f - Rework our oskittcp signalling
- SignalledConnectionsList is now only used for connections that have pending requests
 - Remove another unused member from CONNECTION_ENDPOINT

svn path=/trunk/; revision=43926
2009-11-02 21:28:25 +00:00
Cameron Gutman 97d6fbe737 - Fix some confusion between SignalState and State which resulted in queued IRPs being lost on socket closure
- Call HandleSignalledConnection directly because the connection may not be in the signalled connections list
 - Remove State from CONNECTION_ENDPOINT to prevent this from happening again

svn path=/trunk/; revision=43922
2009-11-02 20:26:29 +00:00
Stefan Ginsberg f84d5a02f4 - Fix support for /CRASHDEBUG and /NODEBUG; we didn't respect those settings properly and would initialize KD at boot even if they were set.
- Re-enable the breakpoint in vDbgPrintExWithPrefixInternal() as this works properly now. Without this breakpoint some break-in requests got lost if the break-in occurred when handling a debug print (happened a lot at boot).
- Implement Command String support for DbgCommandString() -- we now handle every debug service call.
- Implement NtSetDebugFilterState() and NtQueryDebugFilterState() for KD, meaning we now support debug filters properly.
- Implement KdRefreshDebuggerNotPresent(), KdChangeOption() and KdPowerTransition(). Stub KdSystemDebugControl() to return error status instead of hanging the system.
- Stub the rest of the KD API to print a warning and return a failure packet instead of hanging.
- Set and respect KdpContextSent when getting and setting the thread context -- WinDbg doesn't seem to rely on this, but better safe than sorry.
- Support MP when getting and setting the thread context too -- if the context is operation is for another processor than the current, just get it through the KiProcessorBlock array.
- Initialize the MajorVersion in the KD version block more properly -- the high byte is the major identifier (0 for NT). Add the required DBGKD_MAJOR_TYPES enumeration to wdbgexts.h.
- Simplify setting and clearing the InDbgPrint flag in the TEB to minimize the impact on kernel execution; use 2 dedicated routines instead of a generic one.
- KdpSymbol doesn't return anything, so don't return an ignore status from KdpReportLoadSymbolsStateChange.
- Expose the KdpDefaultRetries and Kd_WIN2000_Mask variables to the registry and add them to KDBG too (unused there).
- No reason to implement KdpSysGetVersion per architecture; move it back to the generic code.
- Add some ARM offsets to the debugger data block that (N/A on other architectures).
- Fix the default size of the DbgPrint log buffer for free builds to save some space. It should be 4 KB for a free build and 32 KB for a checked build.
- Move KeDisableInterrupts to cpu.c as it fits here more than in the IRQ support code in irqobj.c.
- Use KeDisableInterrupts in KeFreezeExecution instead of checking the x86 EFLAG directly.

svn path=/trunk/; revision=43912
2009-11-02 17:45:51 +00:00
Andrew Hill 5a9218f54f [atlnew]
- RosBE doesn't support __ImageBase, so use GetModuleHandleExW(GET_MODULE_HANDLE_EX_FLAG_FROM_ADDRESS) instead.
- Implement CAtlBaseModule constructor.
[browseui]
- Since RosBE built DLLs don't run global constructors, use placement new to construct them in DllMain. This is a *HACK* and a better solution should be found.
- Change DllMain be be extern C so it actually gets used.

svn path=/trunk/; revision=43890
2009-10-31 23:40:09 +00:00
Cameron Gutman e0cc495270 - Don't disconnect the same socket multiple times (once per TDI_SEND IRP cancelled, once per TDI_RECEIVE IRP cancelled, once per TDI_SEND IRP on a closing socket, and once per TDI_RECEIVE IRP on a closing socket)
- Implement support for graceful socket closure
 - Fix some memory leaks

svn path=/trunk/; revision=43883
2009-10-31 18:46:08 +00:00
Cameron Gutman fcec7e501b - Implement OskitTCPDisconnect
svn path=/trunk/; revision=43881
2009-10-31 18:15:23 +00:00
Cameron Gutman 05e33d82e8 - Fix translation for OSK_EAGAIN/OSK_EWOULDBLOCK
- Don't clear other socket state flags when enabling non-blocking mode
 - Remove some incorrect code that plays tricks on oskittcp

svn path=/trunk/; revision=43877
2009-10-31 15:53:19 +00:00
Andrew Hill 8266299b0e [browseui, shell32, explorer_new, include]
- Convert browseui to C++/ATL. As part of this, classes in browseui and now registered with .rgs files.
- Add AddressBand, AddressEditBox, BandProxy, BaseBar, BaseBarSite, BrandBand, InternetToolbar, ShellBrowser, ToolsBand, and TravelLog.
- Add stub implementations of commonbrowser, globalfoldersettings, and regtreeoptions.
- Clean up some msvc compile problems in a few files.
- Reorganize some headers to make them better match the Platform SDK.
- Move InlineIsEqualGUID to guiddef.h.
- Create new header files shlguid_undoc.h, shlobj_undoc.h, and shlwapi_undoc.h to hold undocumented types, functions, and GUIDs.
- Move some undocumented definitions declared in explorer_new/todo.h and undoc.h to new headers.
- Rename a few interfaces in explorer_new to the correct name
- Add definition of RBSTR_CHANGERECT to commctrl.h
- IDeskBarClient inherits from IOleWindow, not IUnknown
- HMONITOR was declared in both dxsdk/axextend.idl and wine/wined3d.idl, but not in wtypes.idl where it belongs
- Added Init and Term to CComModule
- Thanks to encoded for solving the browseui linking problem!

svn path=/trunk/; revision=43872
2009-10-31 14:25:45 +00:00
Cameron Gutman a51c149046 - Add more cases to TCPTranslateError
- Fix a header typo

svn path=/trunk/; revision=43867
2009-10-31 07:34:27 +00:00
Cameron Gutman a06fc827da - Make sure the socket is still open before entering oskittcp
- Remove an unused parameter from OskitTCPBind
 - Return a status value from OskitTCPGetAddress
 - Add debug print for unhandled error codes

svn path=/trunk/; revision=43864
2009-10-31 01:05:31 +00:00
Cameron Gutman 43e17b4127 - Implement OskitTCPSetSockOpt and OskitTCPGetSockOpt (currently unused)
svn path=/trunk/; revision=43861
2009-10-31 00:24:38 +00:00
Cameron Gutman f28d99cab1 - Remove some junk code which does nothing but crash
svn path=/trunk/; revision=43859
2009-10-30 23:39:13 +00:00
Johannes Anderwald 7590cdb16d - Silence debug garbage
svn path=/trunk/; revision=43826
2009-10-29 08:28:03 +00:00
Johannes Anderwald b53f1051ec [WDMAUD.DRV][MMEBUDDY]
- Implement support for DRV_QUERYDEVICEINTERFACESIZE, DRV_QUERYDEVICEINTERFACE for recording / mixer / midi-in midi-out


svn path=/trunk/; revision=43799
2009-10-27 23:28:09 +00:00
Timo Kreuzer 8c70b1e730 Remove fail point support from swprintf, too. Yay boot!
svn path=/branches/ros-amd64-bringup/; revision=43797
2009-10-27 22:56:22 +00:00