gedmurphy(a)svn.reactos.org wrote:
> + case NM_RCLICK:
you should use WM_CONTEXTMENU instead so the menus are also accessible
by using the keyboard.
- Thomas
I'd quite like to see the blog page integrated into the site and made to
look pretty.
I also think it might entice devs to start using the thing. At the moment
there is only about 4 people listed, and of those only Alex every actually
uses it.
Would developers make an effort to start blogging if it was 'spruced up'
and integrated?
If not, I think it should be removed as it looks a bit pitiful as it is and
gives the impression not much is going on (which is obviously not the case)
It doesn't always have to be development related stuff in there. Anything
interesting draws a crowd.
Ged.
************************************************************************
The information contained in this message or any of its
attachments is confidential and is intended for the exclusive
use of the addressee. The information may also be legally
privileged. The views expressed may not be company policy,
but the personal views of the originator. If you are not the
addressee, any disclosure, reproduction, distribution or other
dissemination or use of this communication is strictly prohibited.
If you have received this message in error, please contact
postmaster(a)exideuk.co.uk
<mailto:postmaster@exideuk.co.uk> and then delete this message.
Exide Technologies is an industrial and transportation battery
producer and recycler with operations in 89 countries.
Further information can be found at www.exide.com
I would have to agree with this.
ReactOS.Bugzilla(a)reactos.org wrote:
>http://www.reactos.org/bugzilla/show_bug.cgi?id=1264
>
>
>
>
>
>------- Additional Comments From gvg(a)reactos.org 2006-01-10 19:07 CET -------
>I'd prefer something along the lines of:
>
>FooBarFast:
> non-486 implementation
>
>FooBar486:
> 486 implementation
>
>FooBarInit:
> Store either FooBarFast or FooBar486 in FooBarPtr
>
>FooBarPtr:
> .long FooBarInit
>
> .global ExfFooBar
>ExfFooBar:
> jmp [FooBarPtr]
>
>No self modifying code, at the expense of an indirect jump
>
>
>
I was just taking a look at some ReactOS code this evening and it got
me thinking about what our general strategy for handling invalid
parameters is.
For example, in kernel32.dll there is a function DebugBreakProcess.
This function takes one parameter, a process handle.
This parameter is passed through the following list of functions
unchecked by any of them, until the final one will return a failure...
DebugBreakProcess
DbgUiIssueRemoteBreakIn
RtlCreateUserThread
RtlpCreateUserStack
ZwAllocateVirtualMemory
ObReferenceObjectByHandle
Now I know this isn't a security vulnerability, which is what I was
originally looking for, but it did make me think of the question of
where should bounds checking be added?
In this example, the process handle must be a value greater than zero.
Should this simple check be added to DebugBreakProcess, or all of the
above? Is there some sort of standard that everyone should work to?
e.g. should all functions check their own parameters. Sure it might
make it a little slower due to multiple checks but it would make
ReactOS very robust.
Any thoughts on this?
Martin
PS: Lack of activity recently had been due to uni. exams.
hbirr(a)svn.reactos.org wrote:
>
>- Defined KeIpiGenericCall. It is necessary for the smp build.
>
Hi,
It should be in the w32api DDK, not in the interal headers. Sorry for
removing it if this broke the build, I didn't notice on UP.
Best regards,
Alex Ionescu
It seems the old binutils versions don't have a problem with "cmpxchg8b" but
with "qword ptr". The patch below makes the code compile on older versions
again. Any objections to committing it?
I've created a bug 1264 for keeping track of the "no longer works on i486"
issue.
GvG
Index: ntoskrnl/ex/i386/fastinterlck_asm.S
===================================================================
--- ntoskrnl/ex/i386/fastinterlck_asm.S (revision 20747)
+++ ntoskrnl/ex/i386/fastinterlck_asm.S (working copy)
@@ -405,7 +405,7 @@
/* Get next pointer and do the exchange */
mov ebx, [eax]
- LOCK cmpxchg8b qword ptr [ebp]
+ LOCK cmpxchg8b [ebp]
jnz 1b
/* Restore registers and return */
@@ -449,7 +449,7 @@
lea ecx, [edx+0x10001]
/* Do the exchange */
- LOCK cmpxchg8b qword ptr [ebp]
+ LOCK cmpxchg8b [ebp]
jnz 1b
/* Restore registers and return */
@@ -489,7 +489,7 @@
mov cx, bx
/* Do the exchange */
- LOCK cmpxchg8b qword ptr [ebp]
+ LOCK cmpxchg8b [ebp]
jnz 1b
/* Restore registers and return */
@@ -623,7 +623,7 @@
mov edx, [edx+4]
/* Do the op */
- LOCK cmpxchg8b qword ptr [ebp]
+ LOCK cmpxchg8b [ebp]
/* Restore volatiles */
pop ebp
@@ -655,7 +655,7 @@
mov edx, [edx+4]
/* Do the op */
- LOCK cmpxchg8b qword ptr [ebp]
+ LOCK cmpxchg8b [ebp]
/* Restore volatiles */
pop ebp
ion(a)svn.reactos.org wrote:
> - Fix shamefully dangerously broken Work Thread/Queue/Item implementation:
> * Do not pollute the kernel with 10 real-time threads and 5 high-priority threads in order to manage work items. Work threads are very-low priority (< 7) and should never pre-empt userthreads like they do now. 1 priority 7, 5 priority 5 and 3 priority 4 threads are now properly created.
> * Implement a worker thread balance set manager. On SMP systems, it is able to determine when a new thread should be allocate to execute on a free CPU. On both UP and MP, it is also able to detect if a work queue has deadlocked, and will allocate new dynamic threads to unfreeze the queue.
> * Add check for threads returning with APC disabled, and re-enable APCs if this happend. This hack is used in NT for broken drivers.
> * Lots of code changes to support dynamic threads, which:
> - Can terminate.
> - Use a 10 minute timeout on the kernel queue.
> * Add skeleton code for swapping worker thread stacks as well as worker thread shutdown (not yet implemented).
> * Add WORKER_INVALID bugcheck definition.
> * These changes seem to make ROS a lot more responsive.
>
> - NDK:
> * Make more compatible with MS IFS
> * Fix EX_WORK_QUEUE definition.
> * Fix ETHREAD offsets.
> * Fix RtlIsNameLegalDOS8Dot3 definition.
> * Move splay tree defines to IFS.
>
>
> Updated files:
> trunk/reactos/include/ndk/exfuncs.h
> trunk/reactos/include/ndk/extypes.h
> trunk/reactos/include/ndk/ifssupp.h
> trunk/reactos/include/ndk/iofuncs.h
> trunk/reactos/include/ndk/obfuncs.h
> trunk/reactos/include/ndk/pstypes.h
> trunk/reactos/include/ndk/rtlfuncs.h
> trunk/reactos/include/ndk/rtltypes.h
> trunk/reactos/lib/rtl/dos8dot3.c
> trunk/reactos/ntoskrnl/ex/work.c
> trunk/reactos/ntoskrnl/ntoskrnl.mc
> trunk/reactos/w32api/include/ddk/ntifs.h
>
> _______________________________________________
> Ros-svn mailing list
> Ros-svn(a)reactos.org
> http://www.reactos.org/mailman/listinfo/ros-svn
>
>
After applying this commit, I get a crash during compiling ros on ros
with 'make clean' on a clean tree on my smp machine:
Assertion (Thread->State == Waiting) == (Thread->WaitBlockList != NULL)
failed at ./ntoskrnl/ke/wait.c:722
I don't get a back trace. It may be a problem of the broken ASSERT
statement (DBG=1 and KDBG=0).
- Hartmut
Why is the ReactOS version of wininet out of sync with Wine?
There have been a ton of fixes going into Wine in recent months that
unfortunately ReactOS is missing out on.
--
Rob Shearman
On 08.01.2006 11:23:52 ion(a)svn.reactos.org wrote:
> - userinit, usetup, vmwinst, welcome, winefile, winlogon, winver.
> Updated files:
...
> trunk/reactos/subsys/system/winefile/winefile.c
May I ask what this changes should be for?
Adding "__cdecl" attributes doesn't make much sense for me.
And winefile compiles without problems on MSVC since ages.
Regards,
Martin
cwittich(a)svn.reactos.org wrote:
> - GetFileTitle(szFileName, Globals.szFileTitle, sizeof(Globals.szFileTitle));
>
> + GetFileTitle(szFileName, Globals.szFileTitle, wcslen(Globals.szFileTitle));
This change is wrong, sizeof(Globals.szFileTitle) is correct. The last
parameter is the size of the buffer the second parameter represents.
- Thomas