ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

ReactOS Community > ReactOS Wiki

Fixing plan

From ReactOS

Jump to: navigation, search

A plan how to get ReactOS fixed (a serious thing). Please, put well-formed, informative description of what should be fixed in order to "make ReactOS work". Linking to other wiki pages is good.

Contents

Build tools

  • Make rbuild suck less: dependencies caching, or up to a full rewrite, and decent support for other compilers than GCC, specifically MSVC.

See why Rbuild_sucks

regtests

  • Improve reliability, so it does not randomly fail.
  • Fix crashing/hanging winetests, so we run all tests
    • I'm still of the opinion that this isn't the right way to go. Tests even crash under Wine or Windows from time to time.
      We should rather implement a feature for recovering from crashes. --Colin Finck 22:05, 22 December 2008 (UTC)
    • Crashing tests are not the problem, crashing ros is the problem. I mean these crashes should be fixed asap. --ThePhysicist 16:40, 24 December 2008 (UTC)
      • We still need a way to resume the test suite after a critical crash --kjkhyperion 04:40, 26 December 2008 (UTC)
  • Have a list in the tree that describes what tests currently fail, report regressions to that list (Buildbot page)

Drivers

  • FASTFAT - fix existing, or rewrite to have a real file system driver working in Windows 2003 (in progress, by Aleksey Bragin, Alex Vlasov, Pierre Schweitzer).
  • CDFS - same thing.
  • kdcom - implement missing stuff, to be able to connect WinDbg — (actually, completely new kdcom is needed, plus missing KD64 support in kernel -- Stefan) (in progress by Stefan Ginsberg, Aleksey Bragin, Timo Kreuzer)
    • A working version was committed to x64 branch, needs testing on x86 though. Could need some improvements. --ThePhysicist 00:41, 23 February 2009 (UTC)

Kernel

  • Mm: step-by-step rewrite.
major rewrite done by ARM team. update status? -- Lone Rifle 08:45, 26 November 2009 (UTC)
  • Cc: Finish Arty's Cc, look into cc-rewrite-branch, or fix NoCc.

Run-Time Library

  • Rewrite heap implementation
  • Add a special heap implementation above it (having guard pages, overwrite/underwrite checks)

Win32 subsystem

  • Font/Text rewrite
    • Based on Windows design using font drivers
    • Write a simple driver for .fon and test it on Windows
      • Began working on a .fon/.fnt font driver on Windows XP, halfway there. --ThePhysicist 00:42, 23 February 2009 (UTC)
    • Make ReactOS load that driver to manage fonts and render glyphs.
    • Convert freetype into a font driver.
    • This is a massive amount of work to be done (complete rewrite).
    • Can and should be done in a branch.
  • Usermode printer driver support
    • Needs almost full implementation.
    • Most NtGdiEng etc functions need to be fixed
    • No real need to do it a branch, as it's unlikely to break anything.
  • NtUser/User32 structure fix
    • Make the structures shared between kernel and user mode more like windows.
    • Get rid of the kernel mode Window structure
    • Difficult to do in a branch, unless all work on user32/ntuser is done in that branch.
  • Fix ntuser window handling
    • The whole code is a huge mess. It seems it has not even a design.
    • It should be redesigned. (Call chains, etc)
    • Depends on NtUser/User32 structure fix
    • Should be done in a branch.
  • Fix timer implementation
    • Firefox, move mouse bug
  • Implement support for EMF (port from wine?)
  • Fix palette handling

KJK::Hyperion's noncommittal statement

I will continue to identify and fix serious obstacles to a smooth development experience as I see fit