Commit graph

20777 commits

Author SHA1 Message Date
Alex Ionescu 322d8b7398 - Enable ROS_LEAN_AND_MEAN if you want 50% smaller binaries and a 20MB reduction in memory usage.
- Create a new module type: exportdriver for drivers which also export files. Not supremely useful right now, but it helps us decrease compilation time of normal drivers by not running useless commands on them. Later we'll also strip out their export table. We can also make exportdrivers automatically read their .def file instead of specfiygone one.

svn path=/trunk/; revision=22339
2006-06-13 04:50:14 +00:00
Brandon Turner 1aeb0661d4 * When comparing two strings, you do not need to check what comes after them.
* You do not need to look for the next space in the "command" to run on if success, that will be handled later on, and causes it to skip over to much if it done in both spots

svn path=/trunk/; revision=22334
2006-06-13 00:26:08 +00:00
James Tabor fb2ac07e08 Wine patch by Thomas Kho: Fix behavior when selecting disabled menu items.
svn path=/trunk/; revision=22333
2006-06-12 23:23:50 +00:00
Ged Murphy f3025b54e9 missed this little blighter ....
svn path=/trunk/; revision=22331
2006-06-12 22:40:56 +00:00
Ged Murphy 5c4e6cbf06 - sync from Wine-0_9_5 to Wine-0_9_15
- there are a few small differences between ROS comctl32 and Wine comctl32, in listview.c and treeview.c. I've dropped the Wine versions in for now, as they appear to be trivial. I'll insert our small alterations after testing, if required. For now, we are using 100% Wine code.
- We are failing some comctl32 Wine tests in ROS, but passing more than previous.


Sync to Wine-0_9_15:
Mikoaj Zalewski <mikolaj@zalewski.pl>
- comctl32: header: Put the new item in place of the hot divider instead of swapping.
- comctl32: header: Draw the drag image and hot dividers while dragging an item.
- comctl32: header: Fix an order-related bug in HEADER_InternalHitTest.
- comctl32: header: Implement HDM_SETHOTDIVIDER.
- comctl32: header: Implement HDM_CREATEDRAGIMAGE.
- comctl32: listview: Apply the HDS_DRAGDROP header style if needed.
- comctl32: header: Update the rects in HEADER_Refresh if needed.
- comctl32: header: Ignore out-of-range iOrder in SetItemT.
Paul Vriens <Paul.Vriens@xs4all.nl>
- comctl32/header: Check Null before accessing struct member.
Alexandre Julliard <julliard@winehq.org>
- comctl32: Dialog procedures should be called with CallWindowProc.
 
Sync to Wine-0_9_14:
Mikoaj Zalewski <mikolaj@zalewski.pl>
- comctl32: header: Don't try to draw items outside the clipping rect.
- comctl32: header: Make the column resizing smooth in full drag mode.
Jonathan Ernst <jonathan@ernstfamily.ch>
- Update the address of the Free Software Foundation.
- Uniformization of French main menu accelerators.
 
Sync to Wine-0_9_13:
Mikoaj Zalewski <mikolaj@zalewski.pl>
- comctl32: Add Str_SetPtrWtoA analogue to Str_SetPtrAtoW.
qingdoa daoo <qingdao33122@yahoo.com>
- comctl32: Change return code comparison in AVI control.
- comctl32: Fix an unsigned comparison to zero.
- comctl32: Update first visible when appropiate in the TVI_SORT case.
Saulius Krasuckas <saulius2@ar.fi.lt>
- comctl32: Increase FILEVERSION up to 5.81.4704.1100.
 
Sync to Wine-0_9_12:
Mike Hearn <mike@plan99.net>
- comctl32: Add OOM codepath in imagelist control.
Antonio Codazzi <f_sophia@libero.it>
- comctl32: Italian language updates.
- comctl32: Esperanto language support.
 
Sync to Wine-0_9_11:
Rein Klazes <wijn@wanadoo.nl>
- comctl32: Do not free LPSTR_TEXTCALLBACK tooltip texts.
James Hawkins <truiken@gmail.com>
- comctl32: A couple fixes for tab icon offsets.
Thomas Weidenmueller <wine-patches@reactsoft.com>
- comctl32: Rebar size fix.
Mike McCormack <mike@codeweavers.com>
- comctl32: Having an MRU list without a compare function works in Windows.
 
Sync to Wine-0_9_10:
Andrñs Kovñcs <andras@csevego.net>
- comctl32: Added Hungarian translation.
Mike McCormack <mike@codeweavers.com>
- comctl32: Fix some gcc 4.1 warnings caused by windowsx.h macros.
 
Sync to Wine-0_9_9:
Vitaliy Margolen <wine-patch@kievinfo.com>
- comctl32: Remove/swap limits if min > max in MCM_SETRANGE.
  We should swap min & max only when both limits are being
  set. Otherwise limit that being set should invalidate other limit
  (remove it).
- comctl32: Don't change month range in MCM_SETRANGE. Add tests for this.
 
Sync to Wine-0_9_8:
Vitaliy Margolen <wine-patch@kievinfo.com>
- comctl32: Fix invalid date/time check in MCM_SETRANGE: ignore time and fail on bad date.
Francois Gouget <fgouget@free.fr>
- Assorted spelling fixes.
Petr Tesarik <hat@tesarici.cz>
- comctl32: Czech language resources encoding fix.
Fatih Ac <fasici@linux-sevenler.org>
- comctl32: Turkish translation.
 
Sync to Wine-0_9_7:
Alexandre Julliard <julliard@winehq.org>
- Fixed creation of PS_ALTERNATE pens.
 
Sync to Wine-0_9_6:
Phil Krylov <phil@newstar.rinet.ru>
- comctl32: Call UpdateWindow() after changing statusbar text.
Thomas Weidenmueller <wine-patches@reactsoft.com>
- comctl32: Reduce memory usage of the syslink control.
- comctl32: Some painting fixes for the syslink control.
Mike McCormack <mike@codeweavers.com>
- comctl32: Invalidate the entire progress bar any time it changes.

svn path=/trunk/; revision=22329
2006-06-12 22:35:32 +00:00
Ged Murphy f921860cdc enable all tests
svn path=/trunk/; revision=22328
2006-06-12 20:26:30 +00:00
Johannes Anderwald 5eae6f4526 fix build prob #take one
svn path=/trunk/; revision=22327
2006-06-12 18:09:47 +00:00
Ged Murphy ef4faef9dd fix build
svn path=/trunk/; revision=22326
2006-06-12 17:58:59 +00:00
Johannes Anderwald f4176159a9 fix typo in solitaire.cpp
patch by Wildcat (bug 1555)

svn path=/trunk/; revision=22325
2006-06-12 17:51:03 +00:00
Johannes Anderwald 2424761624 set focus back after messagebox
fix formating of previous commit

svn path=/trunk/; revision=22324
2006-06-12 17:44:57 +00:00
Johannes Anderwald e522810b81 set focus back to computer name when invalid name was entered
bug report by keytotime (bug 1569)

svn path=/trunk/; revision=22323
2006-06-12 17:40:35 +00:00
Johannes Anderwald b0338a0f3f add freeldr_fdebug rbuild
svn path=/trunk/; revision=22322
2006-06-12 17:30:21 +00:00
Johannes Anderwald 9f9d9a1613 add norwegian translation
patch by LMH1 (bug 1575)

svn path=/trunk/; revision=22321
2006-06-12 17:28:08 +00:00
Johannes Anderwald 89a00d9caf add rbuild file
svn path=/trunk/; revision=22320
2006-06-12 17:26:41 +00:00
Alex Ionescu 8d3f5096fd - Pretty much the last Ob implementation/optimization patch (Except for a minor fix by Thomas to fix handle sweeping), re-implemented the ObFindObject routine by using some code that I had written almost 2 years ago with help from Thomas and Filip, plus some fixes discovered today while testing.
- Fixed symbolic link and desktop/winsta parse procedures to become NT-compatible now that ObFindObject is as well. Also fixed file/device parse routine for these changes.
- ObFindObject now supports STATUS_REPARSE_OBJECT, and has an optimized path for parsing when a root directory is given, as well as is entirely unicode_string-based.
- Cleaned up ob.h and added ob_x.h for the inlined functions.
- Implemented new Ob tracing system.

svn path=/trunk/; revision=22319
2006-06-12 05:58:08 +00:00
Alex Ionescu 119738339b - Fix a typo that had broken the build -- sorry.
svn path=/trunk/; revision=22318
2006-06-11 22:32:12 +00:00
Alex Ionescu b0dc37752d - Bring out the champagne... one of my first-ever and most ancient ReactOS TODOs: the IopCreateFile hack has been totally removed and we now have a file/device parse routine. It's still nothing like NT's but it's not a hack anymore, and actually works like it should.
svn path=/trunk/; revision=22317
2006-06-11 22:26:54 +00:00
Eric Kohl bc297b2f4b Implement CM_Delete_DevNode_Key and add CM_Delete_DevNode_Key_Ex stub.
svn path=/trunk/; revision=22316
2006-06-11 21:56:08 +00:00
Aleksey Bragin c08140a104 Slightly update the doc to make it correspond to nowadays reality
svn path=/trunk/; revision=22315
2006-06-11 21:05:25 +00:00
Ged Murphy 0262a2684c update the comctl32 wine tests
svn path=/trunk/; revision=22314
2006-06-11 15:51:13 +00:00
Maarten Bosma 64471203f9 Fix size of the startmenu (e.g. Start->Programs) when there are very much entries. Tested under Windows. Fix by slawek from the German forum.
svn path=/trunk/; revision=22313
2006-06-11 15:16:48 +00:00
Eric Kohl 47a7900e91 Implement PNP_AddID.
svn path=/trunk/; revision=22310
2006-06-11 13:20:46 +00:00
Hervé Poussineau b9bcb95e37 Fix non-optimized versions of InterlockedIncrement/InterlockedDecrement.
Fixes bug 916

svn path=/trunk/; revision=22309
2006-06-11 13:00:47 +00:00
Hervé Poussineau f08c410f39 Move Interlocked* functions to architecture-relative directories. This prevents use of inlined assembler.
svn path=/trunk/; revision=22308
2006-06-11 12:27:27 +00:00
Hervé Poussineau 198f03e34b [AUDIT]
According to Fireball, this file is clean because it contains only well-known interlocked operations taking up a few asm instructions

svn path=/trunk/; revision=22307
2006-06-11 12:15:43 +00:00
Hervé Poussineau df7f875767 Add some tests for interlocked functions
svn path=/trunk/; revision=22306
2006-06-11 12:02:04 +00:00
Alex Ionescu 57dc67574c * Significant improve boot speed and debug log neatness:
- Get rid of a dozen of debug prints that have been straying along for a long time (some for years), most of which I must shamefully admit I am responsible for.
- Fix a critical bug subsystem bug in smss and don't hang the system 15 seconds on boot-up.
- Rebase some problematic modules (and fix wshtcpip's rbuild file) to avoid relocations on bootup and some process startup. 
- Enable lsass startup in winlogon and the registry.
- Only show debug log header when actually debugging to a file.

svn path=/trunk/; revision=22305
2006-06-11 08:25:10 +00:00
Hervé Poussineau ab794adf1d - Support more than one child
- vbemp shouldn't parse the EDID, so return it to videoprt

svn path=/trunk/; revision=22304
2006-06-11 07:57:37 +00:00
Alex Ionescu 259db9be47 - Fix definitions of OB_QUERYNAME_METHOD and OB_OKAYTOCLOSE_METHOD. Add fixme for OB_SECURITY_METHOD, will change it later.
- Simplified NtDuplicateObject to a simple stub around ObDuplicateObject, there is no need to have lengthy hacks for NtCurrentProcess/NtCurrentThread().
- Cleanup ObDuplicateObject to use normal Ob routines instead of grovelling through handle table structures and manually touching the handle count: It now calls ObpIncrementHandleCount and all the underlying operations are done on the duplicated handle. Also access state creation is done if the duplicated handle has different desired access.

svn path=/trunk/; revision=22303
2006-06-11 06:52:56 +00:00
Aleksey Bragin d6a84751c7 - Further improvements to Ob tests (fixing obvious mistakes/etc), however reference tests still cause bugcheck, so they are disabled
- Clean-up is enabled now, so basically it's possible to run the test a number of times in win2k3, and every time it will go from scratch by creating everything. But I have a feeling that deleting object-types causes some type of corruption. To be investigated later.

svn path=/trunk/; revision=22302
2006-06-10 22:39:14 +00:00
Aleksey Bragin 325be5eb8d Alex finally paid attention to my code, so I'm fixing a few things...
svn path=/trunk/; revision=22301
2006-06-10 21:17:43 +00:00
Hervé Poussineau 3e3f927b36 After some tests, change SetupDiClassNameFromGuidExW and SetupDiGetClassDescriptionExW to match Windows XP behavior
svn path=/trunk/; revision=22300
2006-06-10 20:51:18 +00:00
Hervé Poussineau b76c5a1315 Cleanup:
- Check that mandatory arguments are provided
- Better tracing system
- Prepend private function names with SETUP_
- Use MultiByteToUnicode instead of MultiByteToUnicode + HeapAlloc
- ...

svn path=/trunk/; revision=22299
2006-06-10 20:48:17 +00:00
Aleksey Bragin ac6a23b01f [FORMATTING]
Very small cleanup, formatting and typecasting change

svn path=/trunk/; revision=22298
2006-06-10 20:41:54 +00:00
Aleksey Bragin 4b2ae8cc64 Revert accidental change of ntfs.sys driver's Start value made in last commit
svn path=/trunk/; revision=22297
2006-06-10 20:32:25 +00:00
Aleksey Bragin c87c9cee4a Add loading of kernel-mode regression testing driver into hivesys.inf (it's commented out of course by default).
To run km regression tests under windows, one should use kmtloader.exe app
To run them on reactos, one should copy kmtest.sys to reactos\system32\drivers, and uncomment entries in hivesys.inf

svn path=/trunk/; revision=22296
2006-06-10 18:05:44 +00:00
Aleksey Bragin e5502d72f8 - Add create/insert object tests
- Add simple referencing tests (now disabled)
- All tests pass currently on Windows 2003

svn path=/trunk/; revision=22295
2006-06-10 16:37:34 +00:00
Alex Ionescu 51b80d64e3 - Update sweep callback to send the handle number. Patch by Thomas Weidenmueller (w3seek@reactos.org)
- Export ObCloseHandle since it's implemented now
- Implement ObpCreateUnnamedHandle and ObpIncrementUnnamedHandleCount as optimizations for ObInsertObject with unnamed objects.

svn path=/trunk/; revision=22294
2006-06-10 00:41:16 +00:00
Brandon Turner 911fec4841 eol-style:native and some TCHAR fixes
svn path=/trunk/; revision=22293
2006-06-09 15:59:56 +00:00
Hervé Poussineau 6b4f2e1649 Add documentation to SetupDiBuildClassInfoList/SetupDiBuildClassInfoListExA/W
Patch by Christian Gmeiner on wine-patches ML

svn path=/trunk/; revision=22292
2006-06-09 14:16:39 +00:00
Alex Ionescu b9375052c5 - Fix the CmpObjectDelete bugcheck by hacking away some code reponsible for it. The bugcheck is probably the result of the current ref-count bug.
- Remove some more code in IoCreateFile/IopCreateFile to help with deprecating it later.

svn path=/trunk/; revision=22291
2006-06-09 08:49:03 +00:00
Alex Ionescu dc1e926987 - Add the OPEN_PACKET structure to internal headers. Used for the I/O Parse Routine.
- Gut down IopCreateFile to the strict minimum so that only the critical parts remain.
- NT Compatiblity fix in ObFindObject: stop parsing if remaining path is null, this means that the parse routine is done parsing and that -this- is the final object.

svn path=/trunk/; revision=22290
2006-06-09 07:28:26 +00:00
Aleksey Bragin c07a24b350 - Added DPRINT logic in all files (to be used as "TRACE" to aid in debugging of tests)
- Added initial part of Ob tests which uses ObCreateObjectType, NtCreateDirectoryObject, ObCreateObject exported APIs.

svn path=/trunk/; revision=22289
2006-06-08 21:39:51 +00:00
Alex Ionescu 63e1686915 - Remove the heart (but not the brain) of the IopCreateFile hack. A much 'nicer' hack now detects if a filename can't be found, and instead of inserting it into the object directory (wrong!), calling IopCreateFile (wrong!), then having it fail, only to then remove the newly inserted object entry (wrong wrong wrong!), IopCreateFile is now *only* called for real files, otherwise Ob detects the invalid name and fails nicely and quickly.
svn path=/trunk/; revision=22288
2006-06-08 21:36:44 +00:00
Alex Ionescu d7c17c883d - Add Object Header Quota structure/define
- Give Files/Devices a parse routine and currently stubplement it for debugging purposes and trying to figure out a way to kill the IopCreateFile hack.
- Implement ObpChargeQuotaForObject. Using a memory breakpoint in WinDBG I've finally found where the OB_FLAG_CREATE_INFO flag gets masked out. Also attempted a very naive quota charging implementation, but it's a guess and probably wrong (but at least it does...something.)

svn path=/trunk/; revision=22287
2006-06-08 20:58:21 +00:00
Alex Ionescu 1c378756d0 - Kill a bunch of deprecated hacks, because removing hacks is always cool!
svn path=/trunk/; revision=22286
2006-06-08 19:00:22 +00:00
Alex Ionescu 1891e7787c - [FORMATTING]:
- Get rid of ObpGetHandleCountByHandleTable and ObpGetNextHandleByProcessCount.
  - Add some function comment headers.
  - Move ObMakeTemporaryObject, NtMakeTemporaryObject, NtMakePermanentObject to oblife.c
  - Move ObpDeleteNameCheck to obname.c

svn path=/trunk/; revision=22285
2006-06-08 18:24:37 +00:00
Alex Ionescu 1f896561d9 - Rename ObpDeleteHandle to ObpCloseHandleTableEntry and change semantics so that it deals directly with the entry and table. This re-factoring optimizes the case where we already have the entry and don't want to use the handle to get the kernel table and then attach/detach/enter/exit critcal regions (such as when sweeping).
- Implement ObCloseHandle, a new XP Export
- Take old NtClose code and write it in ObpCloseHandle, which is the master function that Ntclose/ObCloseHandle share.
- Complete patch requires ExSweepHandleTable to be modified to return the Handle instead of the entry, so that sweeping can be fixed to properly destroy handles and call their OkayToClose, instead of just decrementing a count.

svn path=/trunk/; revision=22284
2006-06-08 18:09:01 +00:00
Brandon Turner d372aa6165 If treat a backspace more like a normal char.
svn path=/trunk/; revision=22283
2006-06-08 13:07:05 +00:00
Brandon Turner 3545fe53f7 ReadConsole test to show how backspaces should be handled.
svn path=/trunk/; revision=22282
2006-06-08 12:59:32 +00:00