Commit graph

37773 commits

Author SHA1 Message Date
Stefan Ginsberg 93109445ba - npapi.h: Correct definitions of function pointer prototypes.
- ntifs.h & cmdata.h : Don't use array size of 0. Fixes C4200.
- wdm.h: Correct definition of 64-bit SLIST_HEADER. Add explicit casts to avoid /W4 warnings in RtlEnlargedUnsignedDivide.
- winddk.h: Add MSVC intrinsic __readfsbyte for KeGetCurrentProcessorNumber. Misc fixes.
- Fix various msvc issues in cmd, setupapi, usetup, win32csr, winlogon, msafd, ws2_32 and ext2lib, most notably:
  - cmd & doskey: Don't use fishy gcc extension to allocate variable-sized arrays from the stack. Use the heap instead.
- Disable warning C4733 for mingw_main too (was only done for mingw_wmain previously).
- advapi32: Pass the correct handles to TRACE -- spotted by MSVC.
- Set the specified register in ecx in MSVC versions of Ke386Wrmsr and Ke386Rdmsr instead of reading from/writing to a random MSR. Yay /W4.

svn path=/trunk/; revision=42342
2009-08-02 17:38:27 +00:00
Gregor Schneider 3283ffdef8 Cleanup in win32k/dib:
- Replace old headers with new ones, programmers added according to svn blame info
- Apply consistent 2pt indentation because of the many indentation levels in this code; getting rid of a tab and 2/3/4pt mixture 
- Rename universal StretchBlt file to reflect content

svn path=/trunk/; revision=42339
2009-08-02 15:49:17 +00:00
Jeffrey Morlan 54817d5b14 Fix many incompatibilities in DIR switch parsing, including those noted in Bug 4744.
svn path=/trunk/; revision=42338
2009-08-02 15:16:03 +00:00
Johannes Anderwald 3871f9be2f - Implement KsStreamPointerDelete, KsStreamPointerScheduleTimeout, KsStreamPointerCancelTimeout, KsPinGetFirstCloneStreamPointer, KsStreamPointerGetNextClone
- Partly Implement IKsPin_DispatchDeviceIoControl, IKsPin_Close

svn path=/trunk/; revision=42337
2009-08-02 14:40:15 +00:00
Johannes Anderwald aae0987d13 [KS]
- Acquire Spinlock at dpc level
- Release cancel spinlock at correct level
[PORTCLS]
- Check if current partially processed irp has been cancelled and complete it in that case
- Silence debug flood

svn path=/trunk/; revision=42335
2009-08-02 12:38:08 +00:00
Johannes Anderwald 9061b8ee40 [KS]
- Implement KsQueryInformationFile
- Properly implement KsStreamIo
- Fix a desastreous bug in KsRemoveIrpFromCancelableQueue
- Implement KsMoveIrpsOnCancelableQueue
[PORTCLS]
- Switch portcls to use the provided ks irp queue function instead of the homegrown IRP_MAPPING routines. Irp queueing is now faster and consumes less memory
- Return an allocated silence buffer when there are no mappings available
- HACK-Remove: Don't pre-complete any audio buffers now anymore. If you experience audio stuttering, let me know
[SYSAUDIO, PORTCLS, KMIXER]
- FastRead / FastWrite routines must store their return values in the status block as KsStreamIo now checks these

svn path=/trunk/; revision=42334
2009-08-02 11:40:38 +00:00
Hervé Poussineau 47f744578f [rbuild] Copy files to livecd output directory only if they have changed
svn path=/trunk/; revision=42330
2009-08-02 08:06:17 +00:00
Hervé Poussineau 85161ab551 [rbuild] Fix wrapping of long lines in generated makefile
svn path=/trunk/; revision=42329
2009-08-02 08:06:04 +00:00
Timo Kreuzer b779385488 Add regtests/gdi
Tests for gdi, written in winetest style so it can be easily plugged into sysreg. Currently containing some xlate tests. More to come.

svn path=/trunk/; revision=42328
2009-08-02 00:26:51 +00:00
Stefan Ginsberg 478b2c3e4e - Properly define dummy unions/structs for MSVC too.
svn path=/trunk/; revision=42327
2009-08-01 19:10:16 +00:00
Gregor Schneider 1221835ea5 FloodFill:
- Remove unneeded casts when setting the initial flood start, add debug print for flood region location (silenced)
- Improve memory guards, free memory on error

svn path=/trunk/; revision=42324
2009-08-01 17:58:28 +00:00
Gregor Schneider c152d5480d FloodFill:
-Get rid of global variables for flood control
-Translate the provided color to the surface, not the other way around (improves speed)
-Rename the function to reflect the functionality
-Add comments on how to implement support for hatched brushes and non-standard surfaces
-Thanks to tkreuzer for feedback

svn path=/trunk/; revision=42323
2009-08-01 14:39:40 +00:00
Gregor Schneider f8ffccf7de GetWindowLongPtr returns a LONG_PTR, so be it
svn path=/trunk/; revision=42322
2009-08-01 11:32:48 +00:00
Gregor Schneider 7163d097d0 - Handle WM_SETREDRAW messages differently in the DefWndProc, ported from current Wine
- Fixes mIRC riched component regression, no more riched20 reverts for releases needed
See issue #4098 for more details.

svn path=/trunk/; revision=42321
2009-08-01 11:26:40 +00:00
Gregor Schneider 3002ba1042 Fix a typo in EngMovePointer
svn path=/trunk/; revision=42318
2009-07-31 19:55:16 +00:00
Stefan Ginsberg e28ef8646f - ...mised this one
svn path=/trunk/; revision=42317
2009-07-31 18:40:19 +00:00
Gregor Schneider 04ae85ed31 Remove leftover debug print
svn path=/trunk/; revision=42316
2009-07-31 18:32:33 +00:00
Stefan Ginsberg f037eef079 - Fix gdi32 build due to missing ";"
svn path=/trunk/; revision=42315
2009-07-31 18:30:37 +00:00
Stefan Ginsberg a8889958e3 - delayimp.h: Use FORCEINLINE instead of static __inline__
- winbase.h: Make winbase.h usable by MSVC
- winuser.h: Add missing const specifiers to GetTabbedTextExtentA/W, TabbedTextOutA/W, ToAscii/Ex and ToUnicode/Ex
- Make gdi32, user32, beepmidi and csrss drmk build in msvc
- Fix most msvc issues in win32k -- a few remain
- Make ntoskrnl compile with /W1 again

svn path=/trunk/; revision=42314
2009-07-31 18:21:24 +00:00
Gregor Schneider d5ec42ec61 - Use system wide caret width and height if one of those parameters is zero
- Ref: http://msdn.microsoft.com/en-us/library/ms648399(VS.85).aspx
- Allows to show the caret in riched20a components (Wordpad f.e.)
See issue #1559 for more details.

svn path=/trunk/; revision=42313
2009-07-31 17:11:21 +00:00
Dmitry Gorbachev a180d74579 Fix _M_X86 -> _M_IX86.
svn path=/trunk/; revision=42312
2009-07-31 16:32:22 +00:00
Gregor Schneider 3e5f2f10f3 - Implement Floodfill: iterative four neighbors version
- Details for this algorithm are described in the comments
- Nice with the paint clone since the bucket fill tool works now

svn path=/trunk/; revision=42311
2009-07-31 15:41:09 +00:00
Johannes Anderwald ace530421a - Partly Implement KsRegisterFilterWithNoKSPins
- Implement _KsEdit

svn path=/trunk/; revision=42310
2009-07-31 10:10:26 +00:00
Gregor Schneider 3f5c25c304 Don't try to delete non existing XLateObjects (NULL brushes return those for example)
svn path=/trunk/; revision=42309
2009-07-30 21:12:06 +00:00
Dmitry Gorbachev cdd031231c - Fix a bug in GPF handler, do not hang in it.
- Initialize Esp field in TSS.

svn path=/trunk/; revision=42306
2009-07-30 17:54:21 +00:00
Dmitry Gorbachev a640545b8b Add a hack in KiSystemStartupReal function until Better Times.
svn path=/trunk/; revision=42305
2009-07-30 17:54:01 +00:00
Johannes Anderwald cd03260db2 - Partly Implement KsCacheMedium
- Implement KsHandleSizedListQuery
- Remove KsGetChildCreateParameter, it is not exported in NT 5.1 KS

svn path=/trunk/; revision=42303
2009-07-30 16:51:03 +00:00
Johannes Anderwald 974e0eca7e - Implement KsAcquireResetValue, KsCompletePendingRequest, KsAllocateExtraData
svn path=/trunk/; revision=42302
2009-07-30 14:20:13 +00:00
Johannes Anderwald f8107d7dc9 - Implement KsFreeEventList, KsDisableEvent
svn path=/trunk/; revision=42298
2009-07-30 09:43:54 +00:00
Johannes Anderwald 9042c879ed - Implement KsAddEvent, KsDefaultAddEventHandler, KsPinAttachAndGate, KsPinAttachOrGate, KsPinGetAndGate
svn path=/trunk/; revision=42296
2009-07-30 07:31:41 +00:00
Johannes Anderwald 3aba36805e - Implement KsDeviceSetBusData, KsDeviceGetBusData, KsGetPinFromIrp
svn path=/trunk/; revision=42295
2009-07-30 06:29:24 +00:00
Johannes Anderwald 2b1eb860d8 - Add RtlConvertLongToLuid, RtlConvertUlongToLuid
svn path=/trunk/; revision=42294
2009-07-30 06:26:28 +00:00
James Tabor f4eed04d0a - Fix Class ids.
svn path=/trunk/; revision=42293
2009-07-30 01:37:02 +00:00
Gregor Schneider 2f0c6dbb98 user32:
- Restructure and simplify CreateCursorFromData
- Call CreateIconFromResourceEx properly allowing it to create colored icons (although it doesn't care about that yet)
- Fix some comment typos
win32k:
- Don't just copy the pointer to an XLATEOBJ, copy instead. The caller will free it, EngSetPointerShape will do so too (causing either double-frees or memory write errors)

svn path=/trunk/; revision=42291
2009-07-29 18:28:11 +00:00
Johannes Anderwald 76ec995125 - Start Implementing IKsPin interface
- Increment PinInstanceCount when a pin has succcessfully been created
- Implement KsPinAcquireProcessingMutex, KsPinGetConnectedPinDeviceObject, KsPinGetConnectedFileObject, KsPinGetConnectedPinInterface, KsPinGetNextSiblingPin, KsPinGetParentFilter, KsPinRegisterFrameReturnCallback, KsPinRegisterHandshakeCallback, KsPinRegisterIrpCompletionCallback, KsPinRegisterPowerCallbacks, KsPinReleaseProcessingMutex
- Initialize pin dispatch table
- Add create items for allocator, clock, node create requests
- AVStream clients should now be able to instantiated pins, streaming not yet supported

svn path=/trunk/; revision=42283
2009-07-29 09:48:36 +00:00
Johannes Anderwald c0e19ca77b - Add KsGetNextSibling, KsFreeObjectBag
svn path=/trunk/; revision=42282
2009-07-29 09:33:40 +00:00
Stefan Ginsberg 43f03aef8a - Fix 41969 -- the wrong flag got set, creating a broken, unusable debug object. Please make sure you know basic C before trying some clever optimization. Debuggers should now work again...
svn path=/trunk/; revision=42280
2009-07-28 21:48:49 +00:00
Johannes Anderwald 3bf37964b7 - Implement KsAcquireControl, KsReleaseControl
- Add create item for creation of pins and topology nodes
- Implement pin creation handler

svn path=/trunk/; revision=42279
2009-07-28 19:32:22 +00:00
Johannes Anderwald 52e5cc0ba2 - Copy Filter descriptor for each instantiated filter
- Implement KsFilterAddTopologyConnections, KsFilterCreatePinFactory

svn path=/trunk/; revision=42278
2009-07-28 18:38:13 +00:00
Johannes Anderwald 5372462044 - Implement KsFilterAcquireProcessingMutex, KsFilterReleaseProcessingMutex, KsFilterGetChildPinCount, KsFilterRegisterPowerCallbacks, KsGetFilterFromIrp
svn path=/trunk/; revision=42277
2009-07-28 17:01:36 +00:00
Johannes Anderwald fc288c23fc - Add KsPinGetParentFilter prototype
svn path=/trunk/; revision=42276
2009-07-28 16:42:36 +00:00
Johannes Anderwald 64fa3b028f - Implement KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent
- Create object bag for IKsFilter, IKsFilterFactory and IKsDevice

svn path=/trunk/; revision=42275
2009-07-28 16:18:05 +00:00
Johannes Anderwald ca60ae56c0 - Implement KsGetObjectFromFileObject, KsGetObjectFromFileObject, KsGetObjectTypeFromIrp, KsGetParent
svn path=/trunk/; revision=42268
2009-07-28 13:52:57 +00:00
Johannes Anderwald 5e12a7edb1 - Implement KoDriverInitialize, KoDeviceInitialize
- Fix storing of device descriptor in KsInitializeDriver, KsAddDevice

svn path=/trunk/; revision=42264
2009-07-28 10:22:02 +00:00
Aleksey Bragin 88c914b528 - Fix a regression introduced in 40710, which caused all machine-specific memory regions to be concatenated into one big LoaderSpecialMemory. Restore previous behaviour by properly matching Arc and bootloader memory types.
svn path=/trunk/; revision=42263
2009-07-28 10:00:58 +00:00
Ged Murphy 7de1640e35 winsock2.h should come before windows.h
svn path=/trunk/; revision=42257
2009-07-27 19:42:05 +00:00
Johannes Anderwald dd0ab576f9 - Implement KsReferenceBusObject, KsReferenceSoftwareBusObject, KsDereferenceSoftwareBusObject, KsDereferenceBusObject
svn path=/trunk/; revision=42256
2009-07-27 18:40:50 +00:00
Johannes Anderwald b3ea37e803 + portcls
+ ks
- ws2help_new

svn path=/trunk/; revision=42255
2009-07-27 18:18:20 +00:00
Johannes Anderwald aaf60514ff - Remove DriverEntry as ks is kernel mode dll
- Implement KsGetImageNameAndResourceId, KsMapModuleName

svn path=/trunk/; revision=42254
2009-07-27 16:17:24 +00:00
ReactOS Portable Systems Group 1cc5142060 - Remove dead (uncalled) function.
svn path=/trunk/; revision=42253
2009-07-27 02:23:25 +00:00