Commit graph

38296 commits

Author SHA1 Message Date
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
ReactOS Portable Systems Group
3e04cabe4e - Create a double-mapping PTE for the shared user data region and fault it in whenever a process touches that address.
- Remove the old hack which used the PCR's page frame number to create a fake PTE each time to reference it, basing on the fact that the shared user data region was on the same page as the PCR on certain architectures.

svn path=/trunk/; revision=42252
2009-07-27 02:13:19 +00:00
ReactOS Portable Systems Group
059da34e93 - Create \dev\physmem section during section initialization, not later.
- Setup SharedUserData settings during Phase 0, not Phase 1. Fixes an old bug where the Inbv driver assumed ReactOS was in "server mode" simply because the default SharedUserData->NtProductType was "0" (which is an invalid product type, but it's != NtProductTypeNt).
  - Also fixed it such that this reports NtProductServer, which is what ReactOS reports to be (Windows 2003 Server SP 1).
- Initialize the modified page writer and balancer thread in phase 1, not phase 2.
  - Phase 2 should make the executive pageable, but I don't think this is supported yet...


svn path=/trunk/; revision=42251
2009-07-27 00:52:44 +00:00
ReactOS Portable Systems Group
e754e12bd3 - Fix a ridiculous copy-paste-error-while-writing-the-commit-log error. Sorry for breaking the build!
svn path=/trunk/; revision=42250
2009-07-27 00:17:38 +00:00
ReactOS Portable Systems Group
5899e14bd1 - Delete the blaoted, overweight and slow nonpaged pool implementation.
- Plug-in support to use the ARM nonpaged pool instead.
- This patch has been tested for over 2 months and all known regressions were fixed.
  - Thanks to Aleksey Bragin for providing a pool regression suite.
  - Thanks to Aleksey Bragin for providing initial implementation details and code from older attempts.
  - Thanks to http://uninformed.org/?v=4&a=2&t=txt and http://www.dfrws.org/2008/proceedings/p58-schuster_pres.pdf for allocation strategies.


svn path=/trunk/; revision=42249
2009-07-27 00:14:56 +00:00