sir_richard(a)svn.reactos.org wrote:
> Author: sir_richard
> Date: Sat Aug 7 05:02:58 2010
> New Revision: 48475
>
> URL: http://svn.reactos.org/svn/reactos?rev=48475&view=rev
> Log:
> [KERNEL32]: While working on the CMAKE branch, Amine and myself discovered a rather serious issue in kernel32 (and perhaps other libraries as well).
I'm sure noone else could have discovered this issue before. cmake was
the key! ;-)
> Unlike rbuild, CMake does not allow you to export non-existant DLL functions (try it: add "poopyhead" in kernel32's exports under RBuild, and will it export "poopyhead", God knowing what that will actually link to).
>
That's an undocumented rbuild feature, called api-out-of-thin-air. To
understand how it works, you must study quantum chaos theory.
> there already exists a function for: *RtlSetLastNtStatusFromWin32Error*.
>
I see, with cmake, this feature works on ntdll as well ;-p
Regards,
Timo
PS: build is broken.
I have a couple of questions/suggestions. Even if it was a mistake to
commit it to trunk, I still express my opinion because I think it's
important for the changes to stay in trunk.
1. Channel-based system is preferred to the plain NDEBUG/DPRINT one.
Kernel32 should not really be an exception. If there is something
wrong, it's better to put some more time into it and fix the actual
problem in that debug library. Everyone who ever tried to debug any
usermode app in ROS, would understand.
2. .pspec file was also invented as a consistent way to be compatible
with different compilers. Winebuild generates stubs for entries
marked as "stub", so it's quite controllable.
3. Everything else is great, nice to see that mess being finally
cleaned up.
WBR,
Aleksey Bragin.
On Aug 7, 2010, at 9:02 AM, sir_richard(a)svn.reactos.org wrote:
> Author: sir_richard
> Date: Sat Aug 7 05:02:58 2010
> New Revision: 48475
>
> URL: http://svn.reactos.org/svn/reactos?rev=48475&view=rev
> Log:
> [KERNEL32]: While working on the CMAKE branch...
tkreuzer(a)svn.reactos.org wrote:
> Author: tkreuzer
> Date: Thu Aug 5 12:23:23 2010
> New Revision: 48461
>
> URL: http://svn.reactos.org/svn/reactos?rev=48461&view=rev
> Log:
> [NTOSKRNL]
> - Fixed FsRtlIsNameInExpression to make it properly handle * in
expressions
> - Fix formatting
> - Patch by Pierre Schweitzer
> - Fixes everything
Could you add a test for this to one of our (Winetest-compatible)
kernel-mode testing frameworks, so that nobody breaks this again?
I know that we haven't decided on a radical test-based development
approach yet, but it would certainly be helpful to avoid long trunk
locks in the future.
Cheers,
Colin
Hi,
trunk is locked due to reaching critical level of regressions again.
Currently the following people have write access:
tkreuzer, sir_richard, fireball.
If you would like to be on bugfix-committers team, please drop me a
line.
WBR,
Aleksey Bragin.