Re: [ros-dev] [ros-diffs] [jgardou] 66334: [NTOSKRNL/MM] - MiIsEntireRangeCommitted: Ensure the PTE we are checking is really faulted in. - Prefer MiPteToPde and MiPdeToPte (which should really be cal

2015-02-19 Thread Jérôme Gardou
If it takes me 6 months to understand why, then yes.

Hint: you can make this delay shorter.

Also the title is a bit misleading, it's the PDE that is not faulted in
in case we don't terminate the loop iteration early.

Le 19/02/2015 05:46, Alex Ionescu a écrit :
 it might fix an assert but the patch is incorrect. will this also take 6
 months to revert?
 
 Best regards,
 Alex Ionescu
 
 On Tue, Feb 17, 2015 at 6:19 AM, jgar...@svn.reactos.org wrote:
 
 Author: jgardou
 Date: Tue Feb 17 14:19:05 2015
 New Revision: 66334

 URL: http://svn.reactos.org/svn/reactos?rev=66334view=rev
 Log:
 [NTOSKRNL/MM]
  - MiIsEntireRangeCommitted: Ensure the PTE we are checking is really
 faulted in.
  - Prefer MiPteToPde and MiPdeToPte (which should really be called
 MiFirstPteInPde) instead of MiAddressToPte and MiPteToAddress
 Fixes weird failed ASSERT in page fault handler when using DPH.

 Modified:
 trunk/reactos/ntoskrnl/mm/ARM3/virtual.c

 Modified: trunk/reactos/ntoskrnl/mm/ARM3/virtual.c
 URL:
 http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/mm/ARM3/virtual.c?rev=66334r1=66333r2=66334view=diff

 ==
 --- trunk/reactos/ntoskrnl/mm/ARM3/virtual.c[iso-8859-1] (original)
 +++ trunk/reactos/ntoskrnl/mm/ARM3/virtual.c[iso-8859-1] Tue Feb 17
 14:19:05 2015
 @@ -1994,14 +1994,13 @@
  if (OnBoundary)
  {
  /* Is this PDE demand zero? */
 -PointerPde = MiAddressToPte(PointerPte);
 +PointerPde = MiPteToPde(PointerPte);
  if (PointerPde-u.Long != 0)
  {
  /* It isn't -- is it valid? */
  if (PointerPde-u.Hard.Valid == 0)
  {
  /* Nope, fault it in */
 -PointerPte = MiPteToAddress(PointerPde);
  MiMakeSystemAddressValid(PointerPte, Process);
  }
  }
 @@ -2009,13 +2008,13 @@
  {
  /* The PTE was already valid, so move to the next one */
  PointerPde++;
 -PointerPte = MiPteToAddress(PointerPde);
 +PointerPte = MiPdeToPte(PointerPde);

  /* Is the entire VAD committed? If not, fail */
  if (!Vad-u.VadFlags.MemCommit) return FALSE;

 -/* Everything is committed so far past the range, return
 true */
 -if (PointerPte  LastPte) return TRUE;
 +/* New loop iteration with our new, on-boundary PTE. */
 +continue;
  }
  }




 
 
 
 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev
 

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 66342: [WIN32SS/NTGDI] - Reject bits data early in SetBitmapBits when it's clear that they can't fit in the destination bitmap. Fixes ugly Office 2007 rulers showin

2015-02-18 Thread Jérôme Gardou
I don't really see what we could be doing wrong here. We're not
responsible for the data an application passes to us.

If we're not capable of correctly giving back the tuple (width,height,
bpp) which permits to calculate the buffer size, we'd better stop
everything and start thinking about raising goats in Greenland.

Le 18/02/2015 09:40, Timo Kreuzer a écrit :
 
 Is this a bug in Office 2007 or are we doing something wrong here?
 
 
 Am 17.02.2015 um 21:41 schrieb jgar...@svn.reactos.org:
 Author: jgardou
 Date: Tue Feb 17 20:41:51 2015
 New Revision: 66342

 URL: http://svn.reactos.org/svn/reactos?rev=66342view=rev
 Log:
 [WIN32SS/NTGDI]
   - Reject bits data early in SetBitmapBits when it's clear that they
 can't fit in the destination bitmap.
 Fixes ugly Office 2007 rulers showing garbage.

 Modified:
  trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c

 Modified: trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c
 URL:
 http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c?rev=66342r1=66341r2=66342view=diff

 ==

 --- trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c[iso-8859-1] (original)
 +++ trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c[iso-8859-1] Tue Feb
 17 20:41:51 2015
 @@ -11,7 +11,8 @@
   #define NDEBUG
   #include debug.h
   -void
 +static
 +int
   NTAPI
   UnsafeSetBitmapBits(
   PSURFACE psurf,
 @@ -32,6 +33,9 @@
   lDeltaDst = psurf-SurfObj.lDelta;
   lDeltaSrc = WIDTH_BYTES_ALIGN16(nWidth, cBitsPixel);
   +if (cjBits  (cjBits  (lDeltaSrc * nHeight)))
 +return 0;
 +
   while (nHeight--)
   {
   /* Copy one line */
 @@ -40,6 +44,7 @@
   pjDst += lDeltaDst;
   }
   +return 1;
   }
 HBITMAP
 @@ -538,9 +543,8 @@
 _SEH2_TRY
   {
 -ProbeForRead(pUnsafeBits, Bytes, 1);
 -UnsafeSetBitmapBits(psurf, Bytes, pUnsafeBits);
 -ret = 1;
 +ProbeForRead(pUnsafeBits, Bytes, sizeof(WORD));
 +ret = UnsafeSetBitmapBits(psurf, Bytes, pUnsafeBits);
   }
   _SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
   {



 
 
 
 
 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev
 

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 66161: [NTDLL] - use the edx register to store the function pointer to the syscall trampoline. This is how google Chrome checks if an exported function is a system

2015-02-04 Thread Jérôme Gardou
Not really. They still could use the same trampoline mechanism, with a
function pointer to some kind of user-mode dispatcher, like we and
windows do with the syscall dispatcher. They just understandably don't
care enough to do it.

Le 04/02/2015 18:36, Hermès BÉLUSCA - MAÏTO a écrit :
 About the Wine bug report...: ils l'ont dans le XXX ?
 
 -Message d'origine-
 De : Ros-dev [mailto:ros-dev-boun...@reactos.org] De la part de Jérôme Gardou
 Envoyé : mercredi 4 février 2015 18:02
 À : ros-dev@reactos.org
 Objet : Re: [ros-dev] [ros-diffs] [jgardou] 66161: [NTDLL] - use the edx 
 register to store the function pointer to the syscall trampoline. This is how 
 google Chrome checks if an exported function is a system call or not. See 
 https:...
 
 Uh, sorry for the horriblly long diff. I guess someone initially committed 
 the file with CRLF file endings :-/
 
 Le 04/02/2015 17:58, jgar...@svn.reactos.org a écrit :
 Author: jgardou
 Date: Wed Feb  4 16:58:41 2015
 New Revision: 66161

 URL: http://svn.reactos.org/svn/reactos?rev=66161view=rev
 Log:
 [NTDLL]
  - use the edx register to store the function pointer to the syscall 
 trampoline.
 This is how google Chrome checks if an exported function is a system call or 
 not.
 See 
 https://chromium.googlesource.com/chromium/src.git/+/master/sandbox/wi
 n/src/service_resolver_32.cc and 
 https://bugs.winehq.org/show_bug.cgi?id=21232 for details

 Modified:
 trunk/reactos/include/asm/syscalls.inc

 Modified: trunk/reactos/include/asm/syscalls.inc
 URL: 
 http://svn.reactos.org/svn/reactos/trunk/reactos/include/asm/syscalls.
 inc?rev=66161r1=66160r2=66161view=diff
 ==
 --- trunk/reactos/include/asm/syscalls.inc   [iso-8859-1] (original)
 +++ trunk/reactos/include/asm/syscalls.inc   [iso-8859-1] Wed Feb  4 
 16:58:41 2015
 @@ -1,109 +1,109 @@
 -
 -#ifdef _M_IX86
 -#define KUSER_SHARED_SYSCALL HEX(7ffe0300) -#define KGDT_R0_CODE 8 
 -MACRO(STUBCODE_U, Name, SyscallId, ArgCount)
 -StackBytes = 4 * ArgCount
 -FPO 0, 0, 0, 0, 0, FRAME_FPO
 -mov eax, SyscallId
 -mov ecx, KUSER_SHARED_SYSCALL
 -call dword ptr [ecx]
 -ret StackBytes
 -ENDM
 -MACRO(STUBCODE_K, Name, SyscallId, ArgCount)
 -StackBytes = 4 * ArgCount
 -FPO 0, 0, 0, 0, 0, FRAME_FPO
 -mov eax, SyscallId
 -lea edx, [esp + 4]
 -pushfd
 -push KGDT_R0_CODE
 -call _KiSystemService
 -ret StackBytes
 -ENDM
 -#elif defined(_M_AMD64)
 -MACRO(STUBCODE_U, Name, SyscallId, ArgCount)
 -.ENDPROLOG
 -mov eax, SyscallId
 -mov r10, rcx
 -syscall
 -ret
 -ENDM
 -MACRO(STUBCODE_K, Name, SyscallId, ArgCount)
 -.ENDPROLOG
 -EXTERN NtName:PROC
 -lea rax, NtName[rip]
 -mov r10, ArgCount * 8
 -jmp KiZwSystemService
 -ENDM
 -#elif defined(_M_ARM)
 -MACRO(STUBCODE_U, Name, SyscallId, ArgCount)
 -swi #SyscallId
 -bx lr
 -ENDM
 -MACRO(STUBCODE_K, Name, SyscallId, ArgCount)
 -mov ip, lr
 -swi #SyscallId
 -bx ip
 -ENDM
 -#elif defined(_M_PPC)
 -MACRO(STUBCODE_U, Name, SyscallId, ArgCount)
 -stwu 1,-16(1)
 -mflr 0
 -stw  0,0(1)
 -li   0, SyscallId
 -sc
 -lwz 0,0(1)
 -mtlr 0
 -addi 1,1,16
 -blr
 -ENDM
 -#define STUBCODE_K STUBCODE_U
 -#elif defined(_M_MIPS)
 -MACRO(STUBCODE_U, Name, SyscallId, ArgCount)
 -li $8, KUSER_SHARED_SYSCALL
 -lw $8,0($8)
 -j $8
 -nop
 -ENDM
 -MACRO(STUBCODE_K, Name, SyscallId, ArgCount)
 -j KiSystemService
 -nop
 -ENDM
 -#else
 -#error unsupported architecture
 -#endif
 -
 -#ifdef _M_IX86
 -MACRO(MAKE_LABEL, Name, StackBytes)
 -PUBLIC _Name@StackBytes
 -_Name@StackBytes:
 -ENDM
 -MACRO(START_PROC, Name, StackBytes)
 -PUBLIC _Name@StackBytes
 -.PROC _Name@StackBytes
 -ENDM
 -#else
 -MACRO(MAKE_LABEL, Name, StackBytes)
 -PUBLIC Name
 -Name:
 -ENDM
 -MACRO(START_PROC, Name, StackBytes)
 -PUBLIC Name
 -.PROC Name
 -ENDM
 -#endif
 -
 -MACRO(STUB_U, Name, ArgCount)
 -MAKE_LABEL ZwName, %ArgCount * 4
 -START_PROC NtName, %ArgCount * 4
 -STUBCODE_U Name, SyscallId, %ArgCount
 -.ENDP
 -SyscallId = SyscallId + 1
 -ENDM
 -
 -MACRO(STUB_K, Name, ArgCount)
 -START_PROC ZwName, %ArgCount * 4
 -STUBCODE_K Name, SyscallId, %ArgCount
 -.ENDP
 -SyscallId = SyscallId + 1
 -ENDM
 +
 +#ifdef _M_IX86
 +#define KUSER_SHARED_SYSCALL HEX(7ffe0300) #define KGDT_R0_CODE 8 
 +MACRO(STUBCODE_U, Name, SyscallId, ArgCount)
 +StackBytes = 4 * ArgCount
 +FPO 0, 0, 0, 0, 0, FRAME_FPO
 +mov eax, SyscallId
 +mov edx, KUSER_SHARED_SYSCALL
 +call dword ptr [edx]
 +ret StackBytes
 +ENDM
 +MACRO(STUBCODE_K, Name, SyscallId, ArgCount)
 +StackBytes = 4 * ArgCount
 +FPO 0, 0, 0, 0, 0, FRAME_FPO
 +mov eax, SyscallId
 +lea edx, [esp + 4]
 +pushfd
 +push KGDT_R0_CODE
 +call _KiSystemService
 +ret StackBytes
 +ENDM
 +#elif defined(_M_AMD64)
 +MACRO(STUBCODE_U, Name, SyscallId

Re: [ros-dev] [ros-diffs] [pschweitzer] 65501: [FASTFAT] Set clean shutdown bit on dismount

2014-11-27 Thread Jérôme Gardou
Hey Pierre!

This flag
 +if (DeviceExt-VolumeFcb-Flags  VCB_CLEAR_DIRTY)
 +{
 +/* Set clean shutdown bit */
 +Status = GetNextCluster(DeviceExt, 1, eocMark);
 +if (NT_SUCCESS(Status))
 +{
 +eocMark |= DeviceExt-CleanShutBitMask;
 +if (NT_SUCCESS(WriteCluster(DeviceExt, 1, eocMark)))
and that one
 +DeviceExt-VolumeFcb-Flags = ~VCB_IS_DIRTY;
 +}
 +}
 +
  /* Flush volume  files */
  VfatFlushVolume(DeviceExt, (PVFATFCB)FileObject-FsContext);
  
 
 
don't really seem to match. Or is the former a part of a OR combination
defining the latter ?

Cheers.
Jérôme.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 64911: [USER32] - Fix LookupIconIdFromDirectoryEx, returning 0 when no matching entry is found. - Fix error handling when opening a cursor file. - Various code beau

2014-10-23 Thread Jérôme Gardou
Of course.

Le 23/10/2014 14:22, Thomas Faber a écrit :
 On 2014-10-23 11:32, jgar...@svn.reactos.org wrote:
 -if ( dwFileSize  (sizeof(*dir) + 
 sizeof(dir-idEntries[0])*(dir-idCount-1)) )
 +if (dwFileSize  (sizeof(*dir) + FIELD_OFFSET(CURSORICONFILEDIR, 
 idEntries[dir-idCount])))
 
 Did you mean to remove the sizeof(*dir)?
 
 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev
 

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [hbelusca] 64747: [NTVDM]: Zero-fill memory with RtlZeroMemory (that exists also in NT mode), and use sizeof(object) instead of sizeof(type_of_object).

2014-10-16 Thread Jérôme Gardou

RtlZeroMemory(ptr, sizeof(ptr)) is almost always a bug ;-)

Le 16/10/2014 12:19, Hermès BÉLUSCA - MAÏTO a écrit :

De : Ros-dev [mailto:ros-dev-boun...@reactos.org] De la part de Timo Kreuzer
Envoyé : mercredi 15 octobre 2014 21:11
À : ros-dev@reactos.org
Objet : Re: [ros-dev] [ros-diffs] [hbelusca] 64747: [NTVDM]: Zero-fill
memory with RtlZeroMemory (that exists also in NT mode), and use
sizeof(object) instead of sizeof(type_of_object).



Looks like bugs

Can you develop your point?





Am 15.10.2014 00:46, schrieb hbelu...@svn.reactos.org:

Author: hbelusca
Date: Tue Oct 14 22:46:40 2014
New Revision: 64747

URL: http://svn.reactos.org/svn/reactos?rev=64747view=rev
Log:
[NTVDM]: Zero-fill memory with RtlZeroMemory (that exists also in NT

mode), and use sizeof(object) instead of sizeof(type_of_object).


   /* Clear the current directory buffer */
-ZeroMemory(CurrentDirectories, sizeof(CurrentDirectories));
+RtlZeroMemory(CurrentDirectories, sizeof(CurrentDirectories));
@@ -2901,7 +2901,7 @@
   WCHAR Buffer[256];
   
   /* Clear the current directory buffer */

-ZeroMemory(CurrentDirectories, sizeof(CurrentDirectories));
+RtlZeroMemory(CurrentDirectories, sizeof(CurrentDirectories));
@@ -1901,7 +1901,7 @@
   
   VOID VgaClearMemory(VOID)

   {
-ZeroMemory(VgaMemory, sizeof(VgaMemory));
+RtlZeroMemory(VgaMemory, sizeof(VgaMemory));
   }
   
   

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 64311: [WIN32K] - Simplify IntRemoveWindowProp - Complain loudly if a NULL list entry sneaks into a window property list. CORE-8562

2014-09-26 Thread Jérôme Gardou

Uh oh, seems like I screwed up these two.

The spec2def part of this commit should indeed belong to r64312.

Le 26/09/2014 14:43, jgar...@svn.reactos.org a écrit :

Author: jgardou
Date: Fri Sep 26 12:43:12 2014
New Revision: 64311

URL: http://svn.reactos.org/svn/reactos?rev=64311view=rev
Log:
[WIN32K]
  - Simplify IntRemoveWindowProp
  - Complain loudly if a NULL list entry sneaks into a window property list.
CORE-8562

Modified:
 trunk/reactos/tools/spec2def/spec2def.c
 trunk/reactos/win32ss/user/ntuser/prop.c

Modified: trunk/reactos/tools/spec2def/spec2def.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/spec2def/spec2def.c?rev=64311r1=64310r2=64311view=diff
==
--- trunk/reactos/tools/spec2def/spec2def.c [iso-8859-1] (original)
+++ trunk/reactos/tools/spec2def/spec2def.c [iso-8859-1] Fri Sep 26 
12:43:12 2014
@@ -38,6 +38,7 @@
  typedef int (*PFNOUTLINE)(FILE *, EXPORT *);
  int gbMSComp = 0;
  int gbImportLib = 0;
+int gbTracing = 0;
  int giArch = ARCH_X86;
  char *pszArchString = i386;
  char *pszArchString2;
@@ -52,6 +53,9 @@
  FL_STUB = 2,
  FL_NONAME = 4,
  FL_ORDINAL = 8,
+FL_NORELAY = 16,
+FL_RET64 = 32,
+FL_REGISTER = 64,
  };

  enum
@@ -161,52 +165,126 @@
  OutputHeader_stub(FILE *file)
  {
  fprintf(file, /* This file is autogenerated, do not edit. */\n\n
-#include stubs.h\n\n);
+#include stubs.h\n);
+
+if (gbTracing)
+{
+fprintf(file, #include wine/debug.h\n);
+fprintf(file, #include inttypes.h\n);
+fprintf(file, WINE_DECLARE_DEBUG_CHANNEL(relay);\n);
+}
+
+fprintf(file, \n);
  }

  int
  OutputLine_stub(FILE *file, EXPORT *pexp)
  {
  int i;
+int bRelay = 0;
+int bInPrototype;

  if (pexp-nCallingConvention != CC_STUB 
-(pexp-uFlags  FL_STUB) == 0) return 0;
-
-fprintf(file, int );
-if ((giArch == ARCH_X86) 
-pexp-nCallingConvention == CC_STDCALL)
-{
-fprintf(file, __stdcall );
-}
-
-/* Check for C++ */
-if (pexp-strName.buf[0] == '?')
-{
-fprintf(file, stub_function%d(, pexp-nNumber);
+(pexp-uFlags  FL_STUB) == 0)
+{
+/* Only relay trace stdcall C functions */
+if (!gbTracing || (pexp-nCallingConvention != CC_STDCALL)
+|| (pexp-uFlags  FL_NORELAY)
+|| (pexp-strName.buf[0] == '?'))
+{
+return 0;
+}
+bRelay = 1;
+}
+
+/* Declare the real function */
+if (bRelay)
+{
+fprintf(file, extern );
+bInPrototype = 1;
+}
+
+do
+{
+if (pexp-uFlags  FL_REGISTER)
+{
+/* FIXME: Not sure this is right */
+fprintf(file, void );
+}
+else if (pexp-uFlags  FL_RET64)
+{
+fprintf(file, __int64 );
+}
+else
+{
+fprintf(file, int );
+}
+
+if ((giArch == ARCH_X86) 
+pexp-nCallingConvention == CC_STDCALL)
+{
+fprintf(file, __stdcall );
+}
+
+/* Check for C++ */
+if (pexp-strName.buf[0] == '?')
+{
+fprintf(file, stub_function%d(, pexp-nNumber);
+}
+else
+{
+if (!bRelay || bInPrototype)
+fprintf(file, %.*s(, pexp-strName.len, pexp-strName.buf);
+else
+fprintf(file, $relaytrace$%.*s(, pexp-strName.len, 
pexp-strName.buf);
+}
+
+for (i = 0; i  pexp-nArgCount; i++)
+{
+if (i != 0) fprintf(file, , );
+switch (pexp-anArgs[i])
+{
+case ARG_LONG: fprintf(file, long); break;
+case ARG_PTR:  fprintf(file, void*); break;
+case ARG_STR:  fprintf(file, char*); break;
+case ARG_WSTR: fprintf(file, wchar_t*); break;
+case ARG_DBL:  fprintf(file, double); break;
+case ARG_INT64 :  fprintf(file, __int64); break;
+case ARG_INT128 :  fprintf(file, __int128); break;
+case ARG_FLOAT: fprintf(file, float); break;
+}
+fprintf(file,  a%d, i);
+}
+
+if (bInPrototype)
+{
+fprintf(file, );\n\n);
+}
+} while (bInPrototype--);
+
+if (!bRelay)
+{
+fprintf(file, )\n{\n\tDbgPrint(\WARNING: calling stub %.*s(,
+pexp-strName.len, pexp-strName.buf);
  }
  else
  {
-fprintf(file, %.*s(, pexp-strName.len, pexp-strName.buf);
-}
-
-for (i = 0; i  pexp-nArgCount; i++)
-{
-if (i != 0) fprintf(file, , );
-switch (pexp-anArgs[i])
-{
-case ARG_LONG: fprintf(file, long); break;
-case ARG_PTR:  fprintf(file, void*); break;
-case ARG_STR:  fprintf(file, char*); break;
-case ARG_WSTR: 

Re: [ros-dev] [ros-diffs] [jgardou] 64176: [GDI32] - Fix up values got from win32k in GetOutlineTextMetrics and do not fail if the provided buffersize is only sizeof(OUTLINETEXTMETRICW). CORE-8507 #re

2014-09-17 Thread Jérôme Gardou

Le 17/09/2014 21:32, Timo Kreuzer a écrit :

Am 17.09.2014 11:54, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Wed Sep 17 09:54:14 2014
New Revision: 64176

URL: http://svn.reactos.org/svn/reactos?rev=64176view=rev
Log:
[GDI32]
  - Fix up values got from win32k in GetOutlineTextMetrics and do not fail if 
the provided buffersize is only sizeof(OUTLINETEXTMETRICW).
CORE-8507 #resolve

Modified:
 trunk/reactos/win32ss/gdi/gdi32/objects/font.c

Modified: trunk/reactos/win32ss/gdi/gdi32/objects/font.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/gdi32/objects/font.c?rev=64176r1=64175r2=64176view=diff
==
--- trunk/reactos/win32ss/gdi/gdi32/objects/font.c  [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/gdi32/objects/font.c  [iso-8859-1] Wed Sep 17 
09:54:14 2014
@@ -9,8 +9,19 @@
  
  #include precomp.h
  
+#include math.h

+
  #define NDEBUG
  #include debug.h
+
+/* Rounds a floating point number to integer. The world-to-viewport
+ * transformation process is done in floating point internally. This function
+ * is then used to round these coordinates to integer values.
+ */
+static __inline INT GDI_ROUND(FLOAT val)
+{
+   return (int)floor(val + 0.5);
+}

roundf() is the appropriate function here. The older MS crt headers
don't have the *round*() functions, but VS 2013 headers seem to have
them (according MSDN).
I propose adding them inside some #ifdef, instead of reimplementing them
in different places.

Hmm, why not, but we don't use msvcr120.dll.


For the other functions: strange coding style. Is this taken from wine?


Yes, I thought I added the copyright notice, obviously forgot to do so.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [akhaldi] 64151: [XDK][DDK] * Handle the rest of cases about the order of pragma and symbol declaration.

2014-09-14 Thread Jérôme Gardou
This breaks KDGDB compilation (and most probable KDCOM too if one would 
want to compile it using GCC)


drivers/base/kdgdb/gdb_send.c:77: référence indéfinie vers « 
__imp__KdDebuggerNotPresent »


Le 14/09/2014 17:49, akha...@svn.reactos.org a écrit :

Author: akhaldi
Date: Sun Sep 14 15:49:35 2014
New Revision: 64151

URL: http://svn.reactos.org/svn/reactos?rev=64151view=rev
Log:
[XDK][DDK]
* Handle the rest of cases about the order of pragma and symbol declaration.

Modified:
 trunk/reactos/include/ddk/ntddk.h
 trunk/reactos/include/ddk/ntifs.h
 trunk/reactos/include/ddk/wdm.h
 trunk/reactos/include/xdk/fsrtlfuncs.h
 trunk/reactos/include/xdk/haltypes.h
 trunk/reactos/include/xdk/kdfuncs.h
 trunk/reactos/include/xdk/ketypes.h
 trunk/reactos/include/xdk/mmtypes.h
 trunk/reactos/include/xdk/ntifs.template.h

Modified: trunk/reactos/include/ddk/ntddk.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/ntddk.h?rev=64151r1=64150r2=64151view=diff
==
--- trunk/reactos/include/ddk/ntddk.h   [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/ntddk.h   [iso-8859-1] Sun Sep 14 15:49:35 2014
@@ -1670,8 +1670,8 @@
  extern HAL_DISPATCH HalDispatchTable;
  #define HALDISPATCH (HalDispatchTable)
  #else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(HalDispatchTable)
  extern PHAL_DISPATCH HalDispatchTable;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(HalDispatchTable)
  #define HALDISPATCH HalDispatchTable
  #endif
  


Modified: trunk/reactos/include/ddk/ntifs.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/ntifs.h?rev=64151r1=64150r2=64151view=diff
==
--- trunk/reactos/include/ddk/ntifs.h   [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/ntifs.h   [iso-8859-1] Sun Sep 14 15:49:35 2014
@@ -8396,8 +8396,8 @@
  extern const UCHAR * const FsRtlLegalAnsiCharacterArray;
  #define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray
  #else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(FsRtlLegalAnsiCharacterArray)
  extern const UCHAR * const *FsRtlLegalAnsiCharacterArray;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(FsRtlLegalAnsiCharacterArray)
  #define LEGAL_ANSI_CHARACTER_ARRAY (*FsRtlLegalAnsiCharacterArray)
  #endif
  
@@ -10993,8 +10993,8 @@

  extern PUSHORT NlsOemLeadByteInfo;
  #define NLS_OEM_LEAD_BYTE_INFO NlsOemLeadByteInfo
  #else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsOemLeadByteInfo)
  extern PUSHORT *NlsOemLeadByteInfo;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(NlsOemLeadByteInfo)
  #define NLS_OEM_LEAD_BYTE_INFO (*NlsOemLeadByteInfo)
  #endif
  


Modified: trunk/reactos/include/ddk/wdm.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/ddk/wdm.h?rev=64151r1=64150r2=64151view=diff
==
--- trunk/reactos/include/ddk/wdm.h [iso-8859-1] (original)
+++ trunk/reactos/include/ddk/wdm.h [iso-8859-1] Sun Sep 14 15:49:35 2014
@@ -1661,8 +1661,8 @@
  #elif (NTDDI_VERSION = NTDDI_WINXP)
  extern NTSYSAPI CCHAR KeNumberProcessors;
  #else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(KeNumberProcessors)
  extern PCCHAR KeNumberProcessors;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(KeNumberProcessors)
  #endif
  
  
@@ -1815,8 +1815,8 @@

  } MM_SYSTEMSIZE;
  
  #ifndef _NTSYSTEM_

+__CREATE_NTOS_DATA_IMPORT_ALIAS(Mm64BitPhysicalAddress)
  extern PBOOLEAN Mm64BitPhysicalAddress;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(Mm64BitPhysicalAddress)
  #endif
  extern NTKERNELAPI PVOID MmBadPointer;
  


Modified: trunk/reactos/include/xdk/fsrtlfuncs.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/xdk/fsrtlfuncs.h?rev=64151r1=64150r2=64151view=diff
==
--- trunk/reactos/include/xdk/fsrtlfuncs.h  [iso-8859-1] (original)
+++ trunk/reactos/include/xdk/fsrtlfuncs.h  [iso-8859-1] Sun Sep 14 
15:49:35 2014
@@ -1584,8 +1584,8 @@
  extern const UCHAR * const FsRtlLegalAnsiCharacterArray;
  #define LEGAL_ANSI_CHARACTER_ARRAY FsRtlLegalAnsiCharacterArray
  #else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(FsRtlLegalAnsiCharacterArray)
  extern const UCHAR * const *FsRtlLegalAnsiCharacterArray;
-__CREATE_NTOS_DATA_IMPORT_ALIAS(FsRtlLegalAnsiCharacterArray)
  #define LEGAL_ANSI_CHARACTER_ARRAY (*FsRtlLegalAnsiCharacterArray)
  #endif
  


Modified: trunk/reactos/include/xdk/haltypes.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/xdk/haltypes.h?rev=64151r1=64150r2=64151view=diff
==
--- trunk/reactos/include/xdk/haltypes.h[iso-8859-1] (original)
+++ trunk/reactos/include/xdk/haltypes.h[iso-8859-1] Sun Sep 14 
15:49:35 2014
@@ -273,8 +273,8 @@
  extern HAL_DISPATCH HalDispatchTable;
  #define HALDISPATCH (HalDispatchTable)
  #else
+__CREATE_NTOS_DATA_IMPORT_ALIAS(HalDispatchTable)
  extern PHAL_DISPATCH 

Re: [ros-dev] [ros-diffs] [jgardou] 64121: [KDGDB] - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the GDB remote protocol together. It is not fully functional, but for now it permit

2014-09-13 Thread Jérôme Gardou

Sure, I created https://jira.reactos.org/browse/CORE-8531

I agree it's the way to go, I just still didn't get the reflex to it.

Regards
Jérôme

Le 13/09/2014 17:03, Aleksey Bragin a écrit :
I don't remember who was opposing idea of Jira-based changelogs, but 
IMO it's the way to go. Saves lots of time for the changelog writer, 
and makes sure no important stuff is missed.


Regards,
Aleksey

On 13.09.2014 3:27, Timo Kreuzer wrote:

Oh and btw: I think the targeted way of handling change logs is using
jira tasks, therefore it might be worth creating a jira task for it and
closing it, once you're done with your work, so that it gets the
appropriate consideration in the changelog. I suggest doing that for
everything that is worth mentioning in the changelog.

Am 12.09.2014 23:28, schrieb Jérôme Gardou:

I guess so, I didn't try. But feel free to do! :-p

Regards
Jérôme

Le 12/09/2014 23:25, Aleksey Bragin a écrit :

Absolutely great stuff!

And does it work in Windows? :-)
(not that there is so much demand in that, just for fun)

Regards,
Aleksey


On 12.09.2014 19:35, Pierre Schweitzer wrote:

Awesome, indeed! Any info or tuto about how to use it? About how to
plug
GDB to it?

Cheers,

On 09/12/2014 12:57 AM, Timo Kreuzer wrote:

Awesome stuff!


Am 11.09.2014 22:55, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Thu Sep 11 20:55:42 2014
New Revision: 64121

URL: http://svn.reactos.org/svn/reactos?rev=64121view=rev
Log:
[KDGDB]
   - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol
and the GDB remote protocol together.
It is not fully functional, but for now it permits source-level
debugging in some modules. More will be added as I feel the need
and find the time to work a bit more on it. (That is, unless an
angel comes and resume the work)
To use it, set GDB and _WINKD_ to TRUE in your CMakeCache.txt.
Using separate debug symbols is also a good idea.







___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 64121: [KDGDB] - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the GDB remote protocol together. It is not fully functional, but for now it permit

2014-09-12 Thread Jérôme Gardou
Sure, I will write one as soon as it is functional, but to make it 
short, it is as simple as launching gdb and using target remote 
your_com_port


On ReactOS side, /DEBUGPORT=COMx and you're ready to go.

Enjoy
Jérôme

Le 12/09/2014 17:35, Pierre Schweitzer a écrit :

Awesome, indeed! Any info or tuto about how to use it? About how to plug
GDB to it?

Cheers,

On 09/12/2014 12:57 AM, Timo Kreuzer wrote:

Awesome stuff!


Am 11.09.2014 22:55, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Thu Sep 11 20:55:42 2014
New Revision: 64121

URL: http://svn.reactos.org/svn/reactos?rev=64121view=rev
Log:
[KDGDB]
  - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the GDB 
remote protocol together.
It is not fully functional, but for now it permits source-level debugging in 
some modules. More will be added as I feel the need and find the time to work a 
bit more on it. (That is, unless an angel comes and resume the work)
To use it, set GDB and _WINKD_ to TRUE in your CMakeCache.txt. Using separate 
debug symbols is also a good idea.



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 64121: [KDGDB] - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the GDB remote protocol together. It is not fully functional, but for now it permit

2014-09-12 Thread Jérôme Gardou
I thought about that, but considering the fact that using windbg for a 
GCC compiled OS or GDB for a MSVC compiled OS makes little sense 
(although one could use that for mixed kernel+drivers setup), I decided 
to go the KDCOM way.


I am open to good arguments for doing that another way though.

Jérôme

Le 12/09/2014 18:42, Hermès BÉLUSCA - MAÏTO a écrit :


Ah and I forgot : Jérôme, now you can use /DEBUGPORT=foo to load 
KDfoo.DLL ;) Then your KDfoo.DLL can implement a simple line parser in 
order to interpret any other hypothetical parameters present in the 
bootloader command line (some other KDxxx use that, for example KD1394 
or KDUSB iirc.). One can imagine something like: /DEBUGPORT=GDB:COM1 
to say: “Load KDGDB.DLL and use COM1 for it”. Currently it’s not what 
you did, maybe it would be great to have that? (and using 
/DEBUGPORT=COM1 just for loading KDCOM.DLL, the KD layer for WinDbg ?)


Hermès.

*De :*Ros-dev [mailto:ros-dev-boun...@reactos.org] *De la part de* 
Jérôme Gardou

*Envoyé :* vendredi 12 septembre 2014 18:20
*À :* ros-dev@reactos.org
*Objet :* Re: [ros-dev] [ros-diffs] [jgardou] 64121: [KDGDB] - 
introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the 
GDB remote protocol together. It is not fully functional, but for now 
it permits source-level debuggin...


Sure, I will write one as soon as it is functional, but to make it 
short, it is as simple as launching gdb and using target remote 
your_com_port


On ReactOS side, /DEBUGPORT=COMx and you're ready to go.

Enjoy
Jérôme

Le 12/09/2014 17:35, Pierre Schweitzer a écrit :

Awesome, indeed! Any info or tuto about how to use it? About how to plug

GDB to it?

  


Cheers,

  


On 09/12/2014 12:57 AM, Timo Kreuzer wrote:

Awesome stuff!

  

  


Am 11.09.2014 22:55, schriebjgar...@svn.reactos.org  
mailto:jgar...@svn.reactos.org:

Author: jgardou

Date: Thu Sep 11 20:55:42 2014

New Revision: 64121

  


URL:http://svn.reactos.org/svn/reactos?rev=64121view=rev

Log:

[KDGDB]

  - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and 
the GDB remote protocol together.

It is not fully functional, but for now it permits source-level 
debugging in some modules. More will be added as I feel the need and find the 
time to work a bit more on it. (That is, unless an angel comes and resume the 
work)

To use it, set GDB and _WINKD_ to TRUE in your CMakeCache.txt. 
Using separate debug symbols is also a good idea.

  

  

  


___

Ros-dev mailing list

Ros-dev@reactos.org  mailto:Ros-dev@reactos.org

http://www.reactos.org/mailman/listinfo/ros-dev

  

  





___

Ros-dev mailing list

Ros-dev@reactos.org  mailto:Ros-dev@reactos.org

http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 64121: [KDGDB] - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the GDB remote protocol together. It is not fully functional, but for now it permit

2014-09-12 Thread Jérôme Gardou

This will go away eventually.

Le 12/09/2014 18:40, Hermès BÉLUSCA - MAÏTO a écrit :


And what about this GDB stub there: 
trunk/reactos/ntoskrnl/kd/wrappers/ ? Do we still need it?


Hermès.

*De :*Ros-dev [mailto:ros-dev-boun...@reactos.org] *De la part de* 
Jérôme Gardou

*Envoyé :* vendredi 12 septembre 2014 18:20
*À :* ros-dev@reactos.org
*Objet :* Re: [ros-dev] [ros-diffs] [jgardou] 64121: [KDGDB] - 
introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the 
GDB remote protocol together. It is not fully functional, but for now 
it permits source-level debuggin...


Sure, I will write one as soon as it is functional, but to make it 
short, it is as simple as launching gdb and using target remote 
your_com_port


On ReactOS side, /DEBUGPORT=COMx and you're ready to go.

Enjoy
Jérôme

Le 12/09/2014 17:35, Pierre Schweitzer a écrit :

Awesome, indeed! Any info or tuto about how to use it? About how to plug

GDB to it?

  


Cheers,

  


On 09/12/2014 12:57 AM, Timo Kreuzer wrote:

Awesome stuff!

  

  


Am 11.09.2014 22:55, schriebjgar...@svn.reactos.org  
mailto:jgar...@svn.reactos.org:

Author: jgardou

Date: Thu Sep 11 20:55:42 2014

New Revision: 64121

  


URL:http://svn.reactos.org/svn/reactos?rev=64121view=rev

Log:

[KDGDB]

  - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and 
the GDB remote protocol together.

It is not fully functional, but for now it permits source-level 
debugging in some modules. More will be added as I feel the need and find the 
time to work a bit more on it. (That is, unless an angel comes and resume the 
work)

To use it, set GDB and _WINKD_ to TRUE in your CMakeCache.txt. 
Using separate debug symbols is also a good idea.

  

  

  


___

Ros-dev mailing list

Ros-dev@reactos.org  mailto:Ros-dev@reactos.org

http://www.reactos.org/mailman/listinfo/ros-dev

  

  





___

Ros-dev mailing list

Ros-dev@reactos.org  mailto:Ros-dev@reactos.org

http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 64127: [KDGDB] - Add a callback mechanism permitting to simulate KD send - receive loop without having to actually communicate to GDB - Use that to update the p

2014-09-12 Thread Jérôme Gardou
Yeah you're not the first one to tell me that, and I wasn't really happy 
to write it either.


I like your approach. I will try to do as you suggest.

Thanks
Jérôme

Le 12/09/2014 22:53, Timo Kreuzer a écrit :

while(1); is not really a good solution. It should be something that is
visible in GDB.
But I fear that a KeBugCheck() won't work here, since it will rely on a
working KD connection.
Maybe a KD_ASSERT() macro, that calls KdAssert() on failure or
something, resets the GDB connection somehow, issues a debug print and
then halts.


Am 12.09.2014 22:23, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Fri Sep 12 20:23:08 2014
New Revision: 64127

URL: http://svn.reactos.org/svn/reactos?rev=64127view=rev
Log:
[KDGDB]
  - Add a callback mechanism permitting to simulate KD send - receive loop 
without having to actually communicate to GDB
  - Use that to update the program counter when cont'ing a breakpoint
Now cont'ing an assertion failure is possible, since we actually get beyond the 
int 3 instruction

Modified:
 trunk/reactos/drivers/base/kdgdb/gdb_input.c
 trunk/reactos/drivers/base/kdgdb/kdgdb.h
 trunk/reactos/drivers/base/kdgdb/kdpacket.c

+)
+{
+DBGKD_MANIPULATE_STATE64* State = 
(DBGKD_MANIPULATE_STATE64*)MessageHeader-Buffer;
+
+/* We just confirm that all went well */
+if ((PacketType != PACKET_TYPE_KD_STATE_MANIPULATE)
+|| (State-ApiNumber != DbgKdSetContextApi)
+|| (State-ReturnStatus != STATUS_SUCCESS))
+{
+/* Should we bugcheck ? */
+while (1);
+}
+}
+
+static
+KDSTATUS
+SetContext(
+_Out_ DBGKD_MANIPULATE_STATE64* State,
+_Out_ PSTRING MessageData,
+_Out_ PULONG MessageLength,
+_Inout_ PKD_CONTEXT KdContext,
+_In_opt_ KDP_MANIPULATESTATE_HANDLER ManipulateStateHandler
+)
+{
+State-ApiNumber = DbgKdSetContextApi;
+State-Processor = CurrentStateChange.Processor;
+State-ReturnStatus = STATUS_SUCCESS;
+State-ProcessorLevel = CurrentStateChange.ProcessorLevel;
+MessageData-Length = sizeof(CurrentContext);
+
+if (MessageData-MaximumLength  sizeof(CurrentContext))
+{
+while (1);
+}
+



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 64121: [KDGDB] - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and the GDB remote protocol together. It is not fully functional, but for now it permit

2014-09-12 Thread Jérôme Gardou

I guess so, I didn't try. But feel free to do! :-p

Regards
Jérôme

Le 12/09/2014 23:25, Aleksey Bragin a écrit :

Absolutely great stuff!

And does it work in Windows? :-)
(not that there is so much demand in that, just for fun)

Regards,
Aleksey


On 12.09.2014 19:35, Pierre Schweitzer wrote:

Awesome, indeed! Any info or tuto about how to use it? About how to plug
GDB to it?

Cheers,

On 09/12/2014 12:57 AM, Timo Kreuzer wrote:

Awesome stuff!


Am 11.09.2014 22:55, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Thu Sep 11 20:55:42 2014
New Revision: 64121

URL: http://svn.reactos.org/svn/reactos?rev=64121view=rev
Log:
[KDGDB]
  - introduce KDGDB, a KDCOM-like DLL, wrapping the KD protocol and 
the GDB remote protocol together.
It is not fully functional, but for now it permits source-level 
debugging in some modules. More will be added as I feel the need 
and find the time to work a bit more on it. (That is, unless an 
angel comes and resume the work)
To use it, set GDB and _WINKD_ to TRUE in your CMakeCache.txt. 
Using separate debug symbols is also a good idea.








___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [akhaldi] 64094: [CMAKE/CLANG] * Globally link mingwex for C modules. CORE-8516

2014-09-09 Thread Jérôme Gardou

Hey Amine

Is there any reason to not use our own mingwex build ?

Le 09/09/2014 20:11, akha...@svn.reactos.org a écrit :

Author: akhaldi
Date: Tue Sep  9 18:11:10 2014
New Revision: 64094

URL: http://svn.reactos.org/svn/reactos?rev=64094view=rev
Log:
[CMAKE/CLANG]
* Globally link mingwex for C modules.
CORE-8516

Modified:
 trunk/reactos/toolchain-clang.cmake

Modified: trunk/reactos/toolchain-clang.cmake
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/toolchain-clang.cmake?rev=64094r1=64093r2=64094view=diff
==
--- trunk/reactos/toolchain-clang.cmake [iso-8859-1] (original)
+++ trunk/reactos/toolchain-clang.cmake [iso-8859-1] Tue Sep  9 18:11:10 2014
@@ -56,7 +56,7 @@
  set(CMAKE_ASM_CREATE_STATIC_LIBRARY ${CMAKE_C_CREATE_STATIC_LIBRARY})
  
  # Don't link with anything by default unless we say so

-set(CMAKE_C_STANDARD_LIBRARIES -lgcc CACHE STRING Standard C Libraries)
+set(CMAKE_C_STANDARD_LIBRARIES -lmingwex -lgcc CACHE STRING Standard C 
Libraries)
  
  #MARK_AS_ADVANCED(CLEAR CMAKE_CXX_STANDARD_LIBRARIES)

  set(CMAKE_CXX_STANDARD_LIBRARIES -lgcc CACHE STRING Standard C++ 
Libraries)





___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [tfaber] 63928: [FASTFAT] - Properly handle errors in CcInitializeCacheMap, CcCopyRead and CcCopyWrite CORE-8410

2014-08-24 Thread Jérôme Gardou

Hey Thomas

I think that you want to use _SEH2_YIELD in a few places here, that is, 
unless we want to completely ditch pseh2 in favor of pseh3 ;-)


Regards
Jérôme

Le 24/08/2014 05:28, tfa...@svn.reactos.org a écrit :

Author: tfaber
Date: Sun Aug 24 03:28:01 2014
New Revision: 63928

URL: http://svn.reactos.org/svn/reactos?rev=63928view=rev
Log:
[FASTFAT]
- Properly handle errors in CcInitializeCacheMap, CcCopyRead and CcCopyWrite
CORE-8410

Modified:
 trunk/reactos/drivers/filesystems/fastfat/CMakeLists.txt
 trunk/reactos/drivers/filesystems/fastfat/fcb.c
 trunk/reactos/drivers/filesystems/fastfat/fsctl.c
 trunk/reactos/drivers/filesystems/fastfat/rw.c
 trunk/reactos/drivers/filesystems/fastfat/vfat.h

Modified: trunk/reactos/drivers/filesystems/fastfat/CMakeLists.txt
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/fastfat/CMakeLists.txt?rev=63928r1=63927r2=63928view=diff
==
--- trunk/reactos/drivers/filesystems/fastfat/CMakeLists.txt[iso-8859-1] 
(original)
+++ trunk/reactos/drivers/filesystems/fastfat/CMakeLists.txt[iso-8859-1] 
Sun Aug 24 03:28:01 2014
@@ -26,6 +26,7 @@
  add_library(fastfat SHARED ${SOURCE} vfatfs.rc)
  
  set_module_type(fastfat kernelmodedriver)

+target_link_libraries(fastfat ${PSEH_LIB})
  add_importlibs(fastfat ntoskrnl hal)
  
  add_pch(fastfat vfat.h SOURCE)


Modified: trunk/reactos/drivers/filesystems/fastfat/fcb.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/fastfat/fcb.c?rev=63928r1=63927r2=63928view=diff
==
--- trunk/reactos/drivers/filesystems/fastfat/fcb.c [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/fastfat/fcb.c [iso-8859-1] Sun Aug 24 
03:28:01 2014
@@ -340,12 +340,14 @@
  {
  PFILE_OBJECT fileObject;
  PVFATCCB newCCB;
+NTSTATUS status;
  
  fileObject = IoCreateStreamFileObject (NULL, vcb-StorageDevice);
  
  newCCB = ExAllocateFromNPagedLookasideList(VfatGlobalData-CcbLookasideList);

  if (newCCB == NULL)
  {
+ObDereferenceObject(fileObject);
  return STATUS_INSUFFICIENT_RESOURCES;
  }
  RtlZeroMemory(newCCB, sizeof (VFATCCB));
@@ -356,11 +358,24 @@
  fcb-FileObject = fileObject;
  fcb-RefCount++;
  
-CcInitializeCacheMap(fileObject,

- (PCC_FILE_SIZES)(fcb-RFCB.AllocationSize),
- TRUE,
- VfatGlobalData-CacheMgrCallbacks,
- fcb);
+_SEH2_TRY
+{
+CcInitializeCacheMap(fileObject,
+ (PCC_FILE_SIZES)(fcb-RFCB.AllocationSize),
+ TRUE,
+ VfatGlobalData-CacheMgrCallbacks,
+ fcb);
+}
+_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
+{
+status = _SEH2_GetExceptionCode();
+fcb-RefCount--;
+fcb-FileObject = NULL;
+ExFreeToNPagedLookasideList(VfatGlobalData-CcbLookasideList, newCCB);
+ObDereferenceObject(fileObject);
+return status;
+}
+_SEH2_END;
  
  fcb-Flags |= FCB_CACHE_INITIALIZED;

  return STATUS_SUCCESS;

Modified: trunk/reactos/drivers/filesystems/fastfat/fsctl.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/fastfat/fsctl.c?rev=63928r1=63927r2=63928view=diff
==
--- trunk/reactos/drivers/filesystems/fastfat/fsctl.c   [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/fastfat/fsctl.c   [iso-8859-1] Sun Aug 24 
03:28:01 2014
@@ -550,11 +550,20 @@
  Fcb-RFCB.ValidDataLength = Fcb-RFCB.FileSize;
  Fcb-RFCB.AllocationSize = Fcb-RFCB.FileSize;
  
-CcInitializeCacheMap(DeviceExt-FATFileObject,

- (PCC_FILE_SIZES)(Fcb-RFCB.AllocationSize),
- TRUE,
- VfatGlobalData-CacheMgrCallbacks,
- Fcb);
+_SEH2_TRY
+{
+CcInitializeCacheMap(DeviceExt-FATFileObject,
+ (PCC_FILE_SIZES)(Fcb-RFCB.AllocationSize),
+ TRUE,
+ VfatGlobalData-CacheMgrCallbacks,
+ Fcb);
+}
+_SEH2_EXCEPT(EXCEPTION_EXECUTE_HANDLER)
+{
+Status = _SEH2_GetExceptionCode();
+goto ByeBye;
+}
+_SEH2_END;
  
  DeviceExt-LastAvailableCluster = 2;

  ExInitializeResourceLite(DeviceExt-FatResource);

Modified: trunk/reactos/drivers/filesystems/fastfat/rw.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/fastfat/rw.c?rev=63928r1=63927r2=63928view=diff
==
--- trunk/reactos/drivers/filesystems/fastfat/rw.c  [iso-8859-1] 

Re: [ros-dev] [ros-diffs] [pschweitzer] 62442: [NTOSKRNL] - Implement FsRtlNotifyFilterReportChange - Implement FsRtlNotifyUpdateBuffer - Implement FsRtlCancelNotify - Implement FsRtlNotifyGetLastPart

2014-03-07 Thread Jérôme Gardou

Awesomeness, in its purest art.

Le 07.03.2014 20:33, pschweit...@svn.reactos.org a écrit :

Author: pschweitzer
Date: Fri Mar  7 19:33:38 2014
New Revision: 62442

URL: http://svn.reactos.org/svn/reactos?rev=62442view=rev
Log:
[NTOSKRNL]
- Implement FsRtlNotifyFilterReportChange
- Implement FsRtlNotifyUpdateBuffer
- Implement FsRtlCancelNotify
- Implement FsRtlNotifyGetLastPartOffset
- Fix implementation of FsRtlNotifyFilterChangeDirectory

This finishes the implementation of file system notifications inside the kernel.
Data are properly returned to the caller on changes.

CORE-2582

Modified:
 trunk/reactos/ntoskrnl/fsrtl/notify.c
 trunk/reactos/ntoskrnl/include/internal/fsrtl.h

Modified: trunk/reactos/ntoskrnl/fsrtl/notify.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/fsrtl/notify.c?rev=62442r1=62441r2=62442view=diff
==
--- trunk/reactos/ntoskrnl/fsrtl/notify.c   [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/fsrtl/notify.c   [iso-8859-1] Fri Mar  7 
19:33:38 2014
@@ -12,6 +12,55 @@
  #define NDEBUG
  #include debug.h
  
+/* INLINED FUNCTIONS */

+
+/*
+ * @implemented
+ */
+FORCEINLINE
+VOID
+FsRtlNotifyAcquireFastMutex(IN PREAL_NOTIFY_SYNC RealNotifySync)
+{
+ULONG_PTR CurrentThread = (ULONG_PTR)KeGetCurrentThread();
+
+/* Only acquire fast mutex if it's not already acquired by the current 
thread */
+if (RealNotifySync-OwningThread != CurrentThread)
+{
+ExAcquireFastMutexUnsafe((RealNotifySync-FastMutex));
+RealNotifySync-OwningThread = CurrentThread;
+}
+/* Whatever the case, keep trace of the attempt to acquire fast mutex */
+RealNotifySync-OwnerCount++;
+}
+
+/*
+ * @implemented
+ */
+FORCEINLINE
+VOID
+FsRtlNotifyReleaseFastMutex(IN PREAL_NOTIFY_SYNC RealNotifySync)
+{
+RealNotifySync-OwnerCount--;
+/* Release the fast mutex only if no other instance needs it */
+if (!RealNotifySync-OwnerCount)
+{
+ExReleaseFastMutexUnsafe((RealNotifySync-FastMutex));
+RealNotifySync-OwningThread = (ULONG_PTR)0;
+}
+}
+
+#define FsRtlNotifyGetLastPartOffset(FullLen, TargLen, Type, Chr)  
   \
+for (FullPosition = 0; FullPosition  FullLen; ++FullPosition) 
   \
+if (((Type)NotifyChange-FullDirectoryName-Buffer)[FullPosition] == 
Chr) \
+++FullNumberOfParts;   
   \
+for (LastPartOffset = 0; LastPartOffset  TargLen; ++LastPartOffset) { 
   \
+if ( ((Type)TargetDirectory.Buffer)[LastPartOffset] == Chr) {  
   \
+++TargetNumberOfParts; 
   \
+if (TargetNumberOfParts == FullNumberOfParts)  
   \
+break; 
   \
+}  
   \
+}
+
  /* PRIVATE FUNCTIONS 
*/
  
  VOID

@@ -22,13 +71,161 @@
  FsRtlNotifySetCancelRoutine(IN PIRP Irp,
  IN PNOTIFY_CHANGE NotifyChange OPTIONAL);
  
+/*

+ * @implemented
+ */
  VOID
  NTAPI
  FsRtlCancelNotify(IN PDEVICE_OBJECT DeviceObject,
IN PIRP Irp)
  {
+PVOID Buffer;
+PIRP NotifyIrp;
+ULONG BufferLength;
+PIO_STACK_LOCATION Stack;
+PNOTIFY_CHANGE NotifyChange;
+PREAL_NOTIFY_SYNC RealNotifySync;
+PSECURITY_SUBJECT_CONTEXT SubjectContext = NULL;
+
+/* Get the NOTIFY_CHANGE struct and reset it */
+NotifyChange = (PNOTIFY_CHANGE)Irp-IoStatus.Information;
+Irp-IoStatus.Information = 0;
+/* Reset the cancel routine */
+IoSetCancelRoutine(Irp, NULL);
+/* And release lock */
  IoReleaseCancelSpinLock(Irp-CancelIrql);
-UNIMPLEMENTED;
+/* Get REAL_NOTIFY_SYNC struct */
+RealNotifySync = NotifyChange-NotifySync;
+
+FsRtlNotifyAcquireFastMutex(RealNotifySync);
+
+   _SEH2_TRY
+   {
+   /* Remove the IRP from the notifications list and mark it pending */
+   RemoveEntryList((Irp-Tail.Overlay.ListEntry));
+   IoMarkIrpPending(Irp);
+
+   /* Now, the tricky part - let's find a buffer big enough to hold the 
return data */
+   if (NotifyChange-Buffer  NotifyChange-AllocatedBuffer == NULL 
+   ((Irp-MdlAddress  MmGetSystemAddressForMdl(Irp-MdlAddress) == 
NotifyChange-Buffer) ||
+   NotifyChange-Buffer == Irp-AssociatedIrp.SystemBuffer))
+   {
+   /* Assume we didn't find any */
+   Buffer = NULL;
+   BufferLength = 0;
+
+   /* If we don't have IRPs, check if current buffer is big enough */
+   if (IsListEmpty(NotifyChange-NotifyIrps))
+   {
+   if (NotifyChange-BufferLength = NotifyChange-DataLength)
+   {
+   

Re: [ros-dev] [ros-diffs] [aandrejevic] 60757: [SOFTX86] Remove softx86, as it is no longer used by anything.

2013-10-26 Thread Jérôme Gardou
Hello.

Just nitpicking a bit:

 -target_link_libraries(ntvdm softx86 softx87 fast486)
 +target_link_libraries(ntvdm fast486)
 add_importlibs(ntvdm msvcrt user32 gdi32 kernel32 ntdll)
 -add_dependencies(ntvdm softx86 softx87)
 +add_dependencies(ntvdm fast486)

The call to add_dependencies is useless here, as a call to 
target_link_libraries adds an implicit dependency.

Regards
Jérôme
___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 59174: [WIN32K] - Don't crash if the focus m

2013-06-07 Thread Jérôme Gardou
It happened if explorer.exe get stopped for whatever reason (taskmgr) and there 
are no other window opened. Then press ctrl - alt -del = BSOD.

To my understanding, this is valid for this variable is NULL, so checking it is 
necessary.

Any comments ?

Regards.
Jérôme

ReactOS Development List ros-dev@reactos.org wrote on mer., juin 5th, 2013, 
11:30 :
 What application failed?
 Thanks,
 James
 
 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [pschweitzer] 58960: [RTL] Finally reenable RtlAcquirePrivilege

2013-05-06 Thread Jérôme Gardou
Hey Pierre!

Nice patch series, that takes ReactOS nearer to being secure. A remark though :

  /*
 - * enable the SeSystemtimePrivilege privilege
 + * Call SetLocalTime twice to ensure correct results
   */
 +Ret = SetLocalTime(SetupData-SystemTime) 
 +  SetLocalTime(SetupData-SystemTime);

This is a bit confusing, and the comment doesn't really help. Why would calling 
the function twice ansure correct result ? Also, this is likely to be optimized 
away by the compiler, or at least produce a report in static code analysers.

I know this isn't pure chance. Any hint as to why you wrote it like this ?

Cheers
Jérôme

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [hbelusca] 58824: [KDCOM] - Use the UCHAR type directly instead

2013-04-22 Thread Jérôme Gardou
Hey Hermès !

 +
 +long atol(const char *str);
 +
 Shouldn't this belong to some standard header ?

Cheers
Jérôme

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 58660: [MESA32] * Disable SSE optimizations, as they only cause mayhem.

2013-04-04 Thread Jérôme Gardou
It causes some kernel mode exception. The code deliberately throws an 
SSE exception to see if the OS supports them. The trap handler considers 
this as a k-mode exception and bug checks.


See http://jira.reactos.org/browse/CORE-6776

Timo Kreuzer a écrit :


What exactly does it cause? And shouldn't we rather fix that, instead of
disabling optimizations? mesa is already slow enough.

Am 03.04.2013 14:02, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Wed Apr  3 12:02:58 2013
New Revision: 58660

URL: http://svn.reactos.org/svn/reactos?rev=58660view=rev
Log:
[MESA32]
  * Disable SSE optimizations, as they only cause mayhem.

Modified:
 trunk/reactos/dll/opengl/mesa/src/mesa/CMakeLists.txt

Modified: trunk/reactos/dll/opengl/mesa/src/mesa/CMakeLists.txt
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/opengl/mesa/src/mesa/CMakeLists.txt?rev=58660r1=58659r2=58660view=diff

==

--- trunk/reactos/dll/opengl/mesa/src/mesa/CMakeLists.txt [iso-8859-1]
(original)
+++ trunk/reactos/dll/opengl/mesa/src/mesa/CMakeLists.txt [iso-8859-1]
Wed Apr  3 12:02:58 2013
@@ -33,17 +33,18 @@
  x86/3dnow_xform3.S
  x86/3dnow_xform4.S
  x86/3dnow_normal.S
-x86/sse_xform1.S
-x86/sse_xform2.S
-x86/sse_xform3.S
-x86/sse_xform4.S
-x86/sse_normal.S
+# x86/sse_xform1.S
+# x86/sse_xform2.S
+# x86/sse_xform3.S
+# x86/sse_xform4.S
+# x86/sse_normal.S
  x86/read_rgba_span_x86.S)
  add_definitions(
  -DUSE_X86_ASM
  -DUSE_MMX_ASM
  -DUSE_3DNOW_ASM
--DUSE_SSE_ASM)
+# -DUSE_SSE_ASM
+)
  endif()
  list(APPEND SOURCE






___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [tkreuzer] 58101: [WIN32K] Revert the revert from r58091 and apply a correct fix (passed parameters to RECTL_vSetRect() in wrong order)

2013-01-02 Thread Jérôme Gardou
Thank you for looking into this, I am not really available for coding in 
reactos at the moment.


Greetings.
Jérôme

tkreu...@svn.reactos.org a écrit :

Author: tkreuzer
Date: Wed Jan  2 14:52:34 2013
New Revision: 58101

URL: http://svn.reactos.org/svn/reactos?rev=58101view=rev
Log:
[WIN32K]
Revert the revert from r58091 and apply a correct fix (passed parameters to 
RECTL_vSetRect() in wrong order)

Modified:
 trunk/reactos/win32ss/gdi/ntgdi/dib.h
 trunk/reactos/win32ss/gdi/ntgdi/dibobj.c
 trunk/reactos/win32ss/user/ntuser/clipboard.c
 trunk/reactos/win32ss/user/ntuser/misc/file.c

Modified: trunk/reactos/win32ss/gdi/ntgdi/dib.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/dib.h?rev=58101r1=58100r2=58101view=diff
==
--- trunk/reactos/win32ss/gdi/ntgdi/dib.h [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/dib.h [iso-8859-1] Wed Jan  2 14:52:34 2013
@@ -7,8 +7,11 @@
  INT APIENTRY DIB_GetDIBImageBytes (INT  width, INT height, INT depth);
  HPALETTE FASTCALL DIB_MapPaletteColors(PPALETTE ppal, CONST BITMAPINFO* 
lpbmi);
  HPALETTE FASTCALL BuildDIBPalette (CONST BITMAPINFO *bmi);
+
+/* Those functions permit to tranparently work with a BITMAPCOREINFO structure 
*/
  BITMAPINFO* FASTCALL DIB_ConvertBitmapInfo(CONST BITMAPINFO* bmi, DWORD 
Usage);
-VOID FASTCALL DIB_FreeConvertedBitmapInfo(BITMAPINFO* converted, BITMAPINFO* 
orig);
+/* Pass Usage = -1 if you don't want to convert the BITMAPINFO back to 
BITMAPCOREINFO */
+VOID FASTCALL DIB_FreeConvertedBitmapInfo(BITMAPINFO* converted, BITMAPINFO* 
orig, DWORD Usage);

  INT
  APIENTRY

Modified: trunk/reactos/win32ss/gdi/ntgdi/dibobj.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/dibobj.c?rev=58101r1=58100r2=58101view=diff
==
--- trunk/reactos/win32ss/gdi/ntgdi/dibobj.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/dibobj.c [iso-8859-1] Wed Jan  2 14:52:34 
2013
@@ -584,7 +584,6 @@
  DWORD compr, size ;
  USHORT i;
  int bitmap_type;
-RGBTRIPLE* rgbTriples;
  RGBQUAD* rgbQuads;
  VOID* colorPtr;

@@ -594,7 +593,6 @@
  return 0;

  colorPtr = (LPBYTE)Info + Info-bmiHeader.biSize;
-rgbTriples = colorPtr;
  rgbQuads = colorPtr;

  bitmap_type = DIB_GetBitmapInfo(Info-bmiHeader,
@@ -643,15 +641,6 @@
  switch(bpp)
  {
  case 0: /* Only info */
-if(pbmci)
-{
-pbmci-bmciHeader.bcWidth = (WORD)psurf-SurfObj.sizlBitmap.cx;
-pbmci-bmciHeader.bcHeight = (WORD)((psurf-SurfObj.fjBitmap  
BMF_TOPDOWN) ?
- -psurf-SurfObj.sizlBitmap.cy :
- psurf-SurfObj.sizlBitmap.cy);
-pbmci-bmciHeader.bcPlanes = 1;
-pbmci-bmciHeader.bcBitCount = 
BitsPerFormat(psurf-SurfObj.iBitmapFormat);
-}
  Info-bmiHeader.biWidth = psurf-SurfObj.sizlBitmap.cx;
  Info-bmiHeader.biHeight = (psurf-SurfObj.fjBitmap  BMF_TOPDOWN) ?
 -psurf-SurfObj.sizlBitmap.cy :
@@ -702,16 +691,6 @@
  if(Usage == DIB_RGB_COLORS)
  {
  ULONG colors = min(psurf-ppal-NumColors, 256);
-
-if(pbmci)
-{
-for(i = 0; i  colors; i++)
-{
-rgbTriples[i].rgbtRed = 
psurf-ppal-IndexedColors[i].peRed;
-rgbTriples[i].rgbtGreen = 
psurf-ppal-IndexedColors[i].peGreen;
-rgbTriples[i].rgbtBlue = 
psurf-ppal-IndexedColors[i].peBlue;
-}
-}
  if(colors != 256) Info-bmiHeader.biClrUsed = colors;
  for(i = 0; i  colors; i++)
  {
@@ -724,10 +703,7 @@
  else
  {
  for(i = 0; i  256; i++)
-{
-if(pbmci) ((WORD*)rgbTriples)[i] = i;
  ((WORD*)rgbQuads)[i] = i;
-}
  }
  }
  else
@@ -736,7 +712,6 @@
  {
  for(i = 0; i  256; i++)
  {
-if(pbmci) ((WORD*)rgbTriples)[i] = i;
  ((WORD*)rgbQuads)[i] = i;
  }
  }
@@ -753,13 +728,6 @@
  }
  for (i = 0; i  pDcPal-NumColors; i++)
  {
-if (pbmci)
-{
-rgbTriples[i].rgbtRed   = 
pDcPal-IndexedColors[i].peRed;
-rgbTriples[i].rgbtGreen = 
pDcPal-IndexedColors[i].peGreen;
-rgbTriples[i].rgbtBlue  = 
pDcPal-IndexedColors[i].peBlue;
-}
-
  rgbQuads[i].rgbRed  = pDcPal-IndexedColors[i].peRed;
   

Re: [ros-dev] [ros-diffs] [hbelusca] 58016: [MSVCRT] Export __crtLCMapStringW and correct __crtLCMapStringA: their prototypes are : int CDECL __crtLCMapStringW(LCID lcid, DWORD mapflags, const wchar_t

2012-12-30 Thread Jérôme Gardou
For input strings. I think that's not relevant to us anyway, as wine 
uses this for relay tracing, that we don't use nor have any 
implementation of.


Jérôme.

Hermès BÉLUSCA - MAÏTO a écrit :

So why do 'str' and 'wstr' exist ?

Hermès.

-Message d'origine-
De : ros-dev-boun...@reactos.org [mailto:ros-dev-boun...@reactos.org] De la 
part de Jérôme Gardou
Envoyé : vendredi 28 décembre 2012 00:17
À : ros-dev@reactos.org
Objet : Re: [ros-dev] [ros-diffs] [hbelusca] 58016: [MSVCRT] Export 
__crtLCMapStringW and correct __crtLCMapStringA: their prototypes are : int 
CDECL __crtLCMapStringW(LCID lcid, DWORD mapflags, const wchar_t *src, int 
srclen, wcha...

I think that in the spec files semantics, destination strings are just buffers 
and should be considered as pointers.

hbelu...@svn.reactos.org a écrit :

Author: hbelusca
Date: Wed Dec 26 19:26:08 2012
New Revision: 58016

URL: http://svn.reactos.org/svn/reactos?rev=58016view=rev
Log:
[MSVCRT]
Export __crtLCMapStringW and correct __crtLCMapStringA: their prototypes are :

int CDECL __crtLCMapStringW(LCID lcid, DWORD mapflags, const wchar_t *src,
  int srclen, wchar_t *dst, int dstlen, unsigned int codepage, int
xflag)

and

int CDECL __crtLCMapStringA(LCID lcid, DWORD mapflags, const char* src,
  int srclen, char* dst, int dstlen, unsigned int codepage, int
xflag)

Needed by SVN.

Modified:
  trunk/reactos/dll/win32/msvcrt/msvcrt.spec

Modified: trunk/reactos/dll/win32/msvcrt/msvcrt.spec
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvcrt/msvc
rt.spec?rev=58016r1=58015r2=58016view=diff
==

--- trunk/reactos/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] Wed Dec 26
+++ 19:26:08 2012
@@ -143,8 +143,8 @@
   @ cdecl __crtCompareStringW(long long wstr long wstr long) 
kernel32.CompareStringW
   @ cdecl __crtGetLocaleInfoW(long long ptr long) kernel32.GetLocaleInfoW
   @ cdecl __crtGetStringTypeW(long long wstr long ptr) -@ cdecl
__crtLCMapStringA(long long str long ptr long long long) -# stub
__crtLCMapStringW
+@ cdecl __crtLCMapStringA(long long str long str long long long) @
+cdecl __crtLCMapStringW(long long wstr long wstr long long long)
   @ cdecl __daylight() __p__daylight
   @ cdecl __dllonexit(ptr ptr ptr)
   @ cdecl __doserrno()




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [hbelusca] 58016: [MSVCRT] Export __crtLCMapStringW and correct __crtLCMapStringA: their prototypes are : int CDECL __crtLCMapStringW(LCID lcid, DWORD mapflags, const wchar_t

2012-12-27 Thread Jérôme Gardou
I think that in the spec files semantics, destination strings are just 
buffers and should be considered as pointers.


hbelu...@svn.reactos.org a écrit :

Author: hbelusca
Date: Wed Dec 26 19:26:08 2012
New Revision: 58016

URL: http://svn.reactos.org/svn/reactos?rev=58016view=rev
Log:
[MSVCRT]
Export __crtLCMapStringW and correct __crtLCMapStringA: their prototypes are :

int CDECL __crtLCMapStringW(LCID lcid, DWORD mapflags, const wchar_t *src,
 int srclen, wchar_t *dst, int dstlen, unsigned int codepage, int xflag)

and

int CDECL __crtLCMapStringA(LCID lcid, DWORD mapflags, const char* src,
 int srclen, char* dst, int dstlen, unsigned int codepage, int xflag)

Needed by SVN.

Modified:
 trunk/reactos/dll/win32/msvcrt/msvcrt.spec

Modified: trunk/reactos/dll/win32/msvcrt/msvcrt.spec
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvcrt/msvcrt.spec?rev=58016r1=58015r2=58016view=diff
==
--- trunk/reactos/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] Wed Dec 26 19:26:08 
2012
@@ -143,8 +143,8 @@
  @ cdecl __crtCompareStringW(long long wstr long wstr long) 
kernel32.CompareStringW
  @ cdecl __crtGetLocaleInfoW(long long ptr long) kernel32.GetLocaleInfoW
  @ cdecl __crtGetStringTypeW(long long wstr long ptr)
-@ cdecl __crtLCMapStringA(long long str long ptr long long long)
-# stub __crtLCMapStringW
+@ cdecl __crtLCMapStringA(long long str long str long long long)
+@ cdecl __crtLCMapStringW(long long wstr long wstr long long long)
  @ cdecl __daylight() __p__daylight
  @ cdecl __dllonexit(ptr ptr ptr)
  @ cdecl __doserrno()




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 57909: [INCLUDE/CRT] - _CRT_NON_CONFORMING_SWPRINTFS is not relevant for us.

2012-12-14 Thread Jérôme Gardou
Windows XP and windows 2k3 msvcrt.dll don't export _swprintf, making
any test compiled with this define unusable on them and using swprintf
unusable on this platforms.

Also, from a pure testing point of view, we'd better test functions
that we should export ;-)


Le Fri, 14 Dec 2012 21:33:47 +0100,
Timo Kreuzer timo.kreu...@web.de a écrit :

 
 The reason for this define is to allow swprintf etc., wich is then an 
 alias for _swprintf, which we do implement.
 I don't see why this should be disabled.
 
 
 
 Am 13.12.2012 20:21, schrieb jgar...@svn.reactos.org:
  Author: jgardou
  Date: Thu Dec 13 19:21:30 2012
  New Revision: 57909
 
  URL: http://svn.reactos.org/svn/reactos?rev=57909view=rev
  Log:
  [INCLUDE/CRT]
- _CRT_NON_CONFORMING_SWPRINTFS is not relevant for us.
 
  Modified:
   trunk/reactos/include/crt/stdio.h
   trunk/reactos/include/crt/wchar.h
 
  Modified: trunk/reactos/include/crt/stdio.h
  URL:
  http://svn.reactos.org/svn/reactos/trunk/reactos/include/crt/stdio.h?rev=57909r1=57908r2=57909view=diff
  ==
  --- trunk/reactos/include/crt/stdio.h [iso-8859-1] (original) +++
  trunk/reactos/include/crt/stdio.h [iso-8859-1] Thu Dec 13 19:21:30
  2012 @@ -322,12 +322,14 @@ #include vadefs.h
#endif

  +#if 0 //this is for MSVCRT80 and higher, which we don't use nor
  implement #ifdef _CRT_NON_CONFORMING_SWPRINTFS
#ifndef __cplusplus
#define swprintf _swprintf
#define vswprintf _vswprintf
#define _swprintf_l __swprintf_l
#define _vswprintf_l __vswprintf_l
  +#endif
#endif
#endif

 
  Modified: trunk/reactos/include/crt/wchar.h
  URL:
  http://svn.reactos.org/svn/reactos/trunk/reactos/include/crt/wchar.h?rev=57909r1=57908r2=57909view=diff
  ==
  --- trunk/reactos/include/crt/wchar.h [iso-8859-1] (original) +++
  trunk/reactos/include/crt/wchar.h [iso-8859-1] Thu Dec 13 19:21:30
  2012 @@ -561,12 +561,14 @@ _CRTIMP int __cdecl __swprintf_l(wchar_t
  *_Dest,const wchar_t *_Format,_locale_t _Plocinfo,...); _CRTIMP int
  __cdecl __vswprintf_l(wchar_t *_Dest,const wchar_t
  *_Format,_locale_t _Plocinfo,va_list _Args); +#if 0 //this is for
  MSVCRT80 and higher, which we don't use nor implement #ifdef
  _CRT_NON_CONFORMING_SWPRINTFS #ifndef __cplusplus
#define swprintf _swprintf
#define vswprintf _vswprintf
#define _swprintf_l __swprintf_l
#define _vswprintf_l __vswprintf_l
  +#endif
#endif
#endif

 
 
 
 
 
 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [tfaber] 57485: [SHELL32] - Fix what might finally be the last missing this- instances left over from the C++ conversion (used a regex this time)

2012-10-05 Thread Jérôme Gardou
Isn't there somewhere some compiler warning for such ambiguation?

Le Fri, 05 Oct 2012 10:41:47 +0200,
Thomas Faber thfa...@gmx.de a écrit :

 Yeah, that would certainly be a more sensible convention.
 I wasn't planning on refactoring all of shell32 any time soon
 though. :|
 
 We accept patches™ ;)
 
 
 On 2012-10-05 10:30, Timo Kreuzer wrote:
  Shouldn't member variables rather be prefixed with m_?
  
  
  Am 05.10.2012 01:46, schrieb tfa...@svn.reactos.org:
  Author: tfaber
  Date: Thu Oct  4 23:46:59 2012
  New Revision: 57485
 
  URL: http://svn.reactos.org/svn/reactos?rev=57485view=rev
  Log:
  [SHELL32]
  - Fix what might finally be the last missing this- instances
  left over from the C++ conversion (used a regex this time)
 
  Modified:
   trunk/reactos/dll/win32/shell32/folders/cpanel.cpp
   trunk/reactos/dll/win32/shell32/folders/mycomp.cpp
   trunk/reactos/dll/win32/shell32/shlview.cpp
 
  Modified: trunk/reactos/dll/win32/shell32/folders/cpanel.cpp
  URL:
  http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/cpanel.cpp?rev=57485r1=57484r2=57485view=diff
  ==
  --- trunk/reactos/dll/win32/shell32/folders/cpanel.cpp
  [iso-8859-1] (original) +++
  trunk/reactos/dll/win32/shell32/folders/cpanel.cpp [iso-8859-1]
  Thu Oct  4 23:46:59 2012 @@ -540,7 +540,7 @@ // pObj =
  (IContextMenu *)this; this-apidl = apidl;
  -cidl = cidl;
  +this-cidl = cidl;
pObj-AddRef();
hr = S_OK;
} else if (IsEqualIID(riid, IID_IDataObject)  (cidl =
  1)) {
 
  Modified: trunk/reactos/dll/win32/shell32/folders/mycomp.cpp
  URL:
  http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/folders/mycomp.cpp?rev=57485r1=57484r2=57485view=diff
  ==
  --- trunk/reactos/dll/win32/shell32/folders/mycomp.cpp
  [iso-8859-1] (original) +++
  trunk/reactos/dll/win32/shell32/folders/mycomp.cpp [iso-8859-1]
  Thu Oct  4 23:46:59 2012 @@ -728,7 +728,7 @@ wcscpy(sName, lpName);
SHFree(sName);
  -sName = sName;
  +this-sName = sName;
TRACE(result %s\n, debugstr_w(sName));
return S_OK;
}
 
  Modified: trunk/reactos/dll/win32/shell32/shlview.cpp
  URL:
  http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/shell32/shlview.cpp?rev=57485r1=57484r2=57485view=diff
  ==
  --- trunk/reactos/dll/win32/shell32/shlview.cpp [iso-8859-1]
  (original) +++ trunk/reactos/dll/win32/shell32/shlview.cpp
  [iso-8859-1] Thu Oct  4 23:46:59 2012 @@ -2828,7 +2828,7 @@
  FIXME(partial stub: %p %08x %08x %p\n, this, aspects, advf,
  pAdvSink); /* FIXME: we set the AdviseSink, but never use it to
  send any advice */
  -pAdvSink = pAdvSink;
  +this-pAdvSink = pAdvSink;
dwAspects = aspects;
dwAdvf = advf;
 
 
 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 57171: [MINGWEX] - mark DllMain as a weak symbol for GCC. - supply a stubbed DllMain for MSVC. - DllMain is optional, and some DLLs don't implement it. That doesn't

2012-08-27 Thread Jérôme Gardou

Hi.

Please see the inlined answers.

Timo Kreuzer a écrit :

Hi,

I don't agree with these changes.

If we need a DllEntry in the lib, then we should use the one that is
provided by mingw-w64 (all this code is 100% mingw-w64). It simply
returns true (thats exactly what the one in MS CRT does) and works for
gcc and MSVC.

There is DllEntryPoint in the code base, but no DllMain. Is it what you
are talking about?


Also what's the point of DisableThreadLibraryCalls() here? As you wrote
yourself, no DllMain only means I have nothing more to initialize than
the CRT. But this disables the CRT thread initializion, too.
You have a point. If nothing is given, then the programmer could assume 
that nothing happens.
Regarding CRT thread initialization: DisableThreadLibraryCalls means 
that the DLLs ahs nothing to initialize on thread creation, and that the 
loader can gain some performance in skipping this DLL. We have some Dlls 
that call it, and if this is a problem with our CRT, then this is bad.

Quoting MSDN:
Do not call this function from a DLL that is linked to the static C 
run-time library (CRT). The static CRT requires DLL_THREAD_ATTACH and 
DLL_THREAD_DETATCH notifications to function properly
Reading between the lines, that means that every CRT thread 
initialization is done in msvcrt.dll, and nowhere else. What we link 
statically to our DLLs shouldn't have anything to do on thread 
initializations.



There is also no need for weak symbols, we can simply call the stub
DllMain, since it doesn't (shouldn't) do anything.
As said in the comment, link.exe choses symbols defined in the object 
files it is given, and then in the libraries. So adding a stubbed 
version of dllmain in our library is harmless (unless someone puts his 
DllMain in a static library and links to that library.) I don't really 
know about ld behaviour regarding this case, and the 
--allow-multiple-definition option of ld (see 
http://sourceware.org/binutils/docs-2.22/ld/Options.html#Options ) 
scares me.




Regards,
Timo


Regards.
Jérôme



Am 27.08.2012 01:31, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Sun Aug 26 23:31:49 2012
New Revision: 57171

URL: http://svn.reactos.org/svn/reactos?rev=57171view=rev
Log:
[MINGWEX]
- mark DllMain as a weak symbol for GCC.
- supply a stubbed DllMain for MSVC.
- DllMain is optional, and some DLLs don't implement it. That doesn't
mean that they have no entry point, it means I have nothing more to
initialize than the CRT.

Added:
 trunk/reactos/lib/sdk/crt/startup/mscdllmain.c   (with props)
Modified:
 trunk/reactos/lib/sdk/crt/msvcrtex.cmake
 trunk/reactos/lib/sdk/crt/startup/crtdll.c

Modified: trunk/reactos/lib/sdk/crt/msvcrtex.cmake
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/msvcrtex.cmake?rev=57171r1=57170r2=57171view=diff

==

--- trunk/reactos/lib/sdk/crt/msvcrtex.cmake [iso-8859-1] (original)
+++ trunk/reactos/lib/sdk/crt/msvcrtex.cmake [iso-8859-1] Sun Aug 26
23:31:49 2012
@@ -66,7 +66,9 @@
  endif()
  if(MSVC)
-list(APPEND MSVCRTEX_SOURCE startup/mscmain.c)
+list(APPEND MSVCRTEX_SOURCE
+startup/mscmain.c
+startup/mscdllmain.c)
  else()
  list(APPEND MSVCRTEX_SOURCE startup/gccmain.c)
  endif()

Modified: trunk/reactos/lib/sdk/crt/startup/crtdll.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/startup/crtdll.c?rev=57171r1=57170r2=57171view=diff

==

--- trunk/reactos/lib/sdk/crt/startup/crtdll.c [iso-8859-1] (original)
+++ trunk/reactos/lib/sdk/crt/startup/crtdll.c [iso-8859-1] Sun Aug 26
23:31:49 2012
@@ -50,7 +50,19 @@
  extern int mingw_app_type;
+/*
+ * It is possible that a DLL provides no DllMain entry point.
+ * Mark it as a weak symbol for GCC.
+ * Tests show that at link time, MSVC looks for a function first in
the object files provided, and then
+ * in the libraries. This means that we must provide a basic
implementation in msvcrtex, which will be used
+ * if none is found in the object files provided to link.exe.
+ * This also means that we can't rely on a DllMain function
implemented in a static library when linking a DLL.
+ */
+#ifdef __GNUC__
+extern WINBOOL WINAPI DllMain (HANDLE hDllHandle, DWORD dwReason,
LPVOID lpreserved) __attribute__((weak));
+#else
  extern WINBOOL WINAPI DllMain (HANDLE hDllHandle, DWORD dwReason,
LPVOID lpreserved);
+#endif
  extern WINBOOL WINAPI DllEntryPoint (HANDLE, DWORD, LPVOID);
@@ -198,10 +210,12 @@
  }
if (dwReason == DLL_PROCESS_ATTACH)
  __main ();
-  retcode = DllMain(hDllHandle,dwReason,lpreserved);
+  if(DllMain)
+retcode = DllMain(hDllHandle,dwReason,lpreserved);
if (dwReason == DLL_PROCESS_ATTACH  ! retcode)
  {
-DllMain (hDllHandle, DLL_PROCESS_DETACH, lpreserved);
+if(DllMain)
+  DllMain (hDllHandle, DLL_PROCESS_DETACH, lpreserved);
  DllEntryPoint 

Re: [ros-dev] [ros-diffs] [jgardou] 57129: [WIN32K] - Use the right surface for direct DCs in DIB transfer functions It could have changed with a display settings change

2012-08-22 Thread Jérôme Gardou

Oh, right, I forgot about the lock...

Commit your rewrite :-)

Timo Kreuzer a écrit :


Hmmm
I don't think that this is a good idea. We must call DC_vPrepareForBlit
to lock the surfaces, otherwise we run into race conditions.
And we should really also care for the mouse cursor, otherwise we might
make it unhappy.
Anyway, I don't care about this code, since I already rewrote it :D
Anyway, I think it's time to ASSERT device locks.

Am 22.08.2012 18:45, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Wed Aug 22 16:45:49 2012
New Revision: 57129

URL: http://svn.reactos.org/svn/reactos?rev=57129view=rev
Log:
[WIN32K]
- Use the right surface for direct DCs in DIB transfer functions
It could have changed with a display settings change

Modified:
 trunk/reactos/win32ss/gdi/ntgdi/dibobj.c

Modified: trunk/reactos/win32ss/gdi/ntgdi/dibobj.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/dibobj.c?rev=57129r1=57128r2=57129view=diff

==

--- trunk/reactos/win32ss/gdi/ntgdi/dibobj.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/dibobj.c [iso-8859-1] Wed Aug 22
16:45:49 2012
@@ -447,8 +447,16 @@
  DC_UnlockDc(pDC);
  goto Exit2;
  }
-
-pSurf = pDC-dclevel.pSurface;
+
+/*
+ * Select the right surface.
+ * NOTE: we don't call DC_vPrepareDCsForBlit, because we don't
+ * care about mouse, visible region or brushes in this API.
+ */
+if(pDC-dctype == DCTYPE_DIRECT)
+pSurf = pDC-ppdev-pSurface;
+else
+pSurf = pDC-dclevel.pSurface;
  if (!pSurf)
  {
  DC_UnlockDc(pDC);
@@ -1113,7 +1121,15 @@
  goto cleanup;
  }
-psurfDst = pdc-dclevel.pSurface;
+/*
+ * Select the right surface.
+ * NOTE: we don't call DC_vPrepareDCsForBlit, because we don't
+ * care about mouse, visible region or brushes in this API.
+ */
+if(pdc-dctype == DCTYPE_DIRECT)
+psurfDst = pdc-ppdev-pSurface;
+else
+psurfDst = pdc-dclevel.pSurface;
  if (!psurfDst)
  {
  // CHECKME






___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 56947: [WIN32SS/GDI]

2012-07-23 Thread Jérôme Gardou

OOPS.. Sorry. Changelog should have been:
[WIN32SS/NTGDI]
- Associate NULL surface for newly created memory DCs.

jgar...@svn.reactos.org a écrit :

Author: jgardou
Date: Mon Jul 23 10:12:53 2012
New Revision: 56947

URL: http://svn.reactos.org/svn/reactos?rev=56947view=rev
Log:
[WIN32SS/GDI]

Modified:
 trunk/reactos/win32ss/gdi/eng/engbrush.c
 trunk/reactos/win32ss/gdi/ntgdi/bitblt.c
 trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c
 trunk/reactos/win32ss/gdi/ntgdi/dclife.c
 trunk/reactos/win32ss/gdi/ntgdi/dcobjs.c

Modified: trunk/reactos/win32ss/gdi/eng/engbrush.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/eng/engbrush.c?rev=56947r1=56946r2=56947view=diff
==
--- trunk/reactos/win32ss/gdi/eng/engbrush.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/eng/engbrush.c [iso-8859-1] Mon Jul 23 10:12:53 
2012
@@ -67,6 +67,9 @@
  pebo-crCurrentText = pdc-pdcattr-crForegroundClr;

  pebo-psurfTrg = pdc-dclevel.pSurface;
+/* We are initializing for a new memory DC */
+if(!pebo-psurfTrg)
+pebo-psurfTrg = psurfDefaultBitmap;
  ASSERT(pebo-psurfTrg);
  ASSERT(pebo-psurfTrg-ppal);


Modified: trunk/reactos/win32ss/gdi/ntgdi/bitblt.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/bitblt.c?rev=56947r1=56946r2=56947view=diff
==
--- trunk/reactos/win32ss/gdi/ntgdi/bitblt.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/bitblt.c [iso-8859-1] Mon Jul 23 10:12:53 
2012
@@ -807,9 +807,11 @@
  SURFACE *psurf;
  POINTL BrushOrigin;
  BOOL ret;
-PBRUSH pbrush = pebo-pbrush;
+PBRUSH pbrush;

  ASSERT(pebo);
+pbrush = pebo-pbrush;
+ASSERT(pbrush);

  FIXUP_ROP(dwRop);


Modified: trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c?rev=56947r1=56946r2=56947view=diff
==
--- trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/bitmaps.c [iso-8859-1] Mon Jul 23 10:12:53 
2012
@@ -259,6 +259,7 @@
  DIBSECTION dibs;
  INT Count;
  PSURFACE psurf = Dc-dclevel.pSurface;
+if(!psurf) psurf = psurfDefaultBitmap;
  Count = BITMAP_GetObject(psurf, sizeof(dibs), dibs);

  if (Count == sizeof(BITMAP))

Modified: trunk/reactos/win32ss/gdi/ntgdi/dclife.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/dclife.c?rev=56947r1=56946r2=56947view=diff
==
--- trunk/reactos/win32ss/gdi/ntgdi/dclife.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/dclife.c [iso-8859-1] Mon Jul 23 10:12:53 
2012
@@ -180,7 +180,7 @@
  pdc-dclevel.pSurface = NULL;

  // FIXME: HACK, because our code expects a surface
-pdc-dclevel.pSurface = 
SURFACE_ShareLockSurface(StockObjects[DEFAULT_BITMAP]);
+// pdc-dclevel.pSurface = 
SURFACE_ShareLockSurface(StockObjects[DEFAULT_BITMAP]);

  pdc-erclBounds.left = 0;
  pdc-erclBounds.top = 0;
@@ -271,12 +271,9 @@
pdc-dclevel.ptlBrushOrigin.x = 0;
pdc-dclevel.ptlBrushOrigin.y = 0;
pdc-dcattr.ptlBrushOrigin = pdc-dclevel.ptlBrushOrigin;
-
-/* Initialize EBRUSHOBJs */
-EBRUSHOBJ_vInit(pdc-eboFill, pdc-dclevel.pbrFill, pdc);
-EBRUSHOBJ_vInit(pdc-eboLine, pdc-dclevel.pbrLine, pdc);
+
+/* Init text brush */
  EBRUSHOBJ_vInit(pdc-eboText, pbrDefaultBrush, pdc);
-EBRUSHOBJ_vInit(pdc-eboBackground, pbrDefaultBrush, pdc);

  /* Setup fill data */
pdc-dcattr.jROP2 = R2_COPYPEN;
@@ -424,9 +421,8 @@
  pdc-dclevel.pbrFill = BRUSH_ShareLockBrush(pdc-pdcattr-hbrush);
  pdc-dclevel.pbrLine = PEN_ShareLockPen(pdc-pdcattr-hpen);

-/* Update the EBRUSHOBJs */
-EBRUSHOBJ_vUpdate(pdc-eboFill, pdc-dclevel.pbrFill, pdc);
-EBRUSHOBJ_vUpdate(pdc-eboLine, pdc-dclevel.pbrLine, pdc);
+/* Mark them as dirty */
+pdc-pdcattr-ulDirty_ |= DIRTY_FILL|DIRTY_LINE;

  /* Allocate or free DC attribute */
  if (ulOwner == GDI_OBJ_HMGR_PUBLIC || ulOwner == GDI_OBJ_HMGR_NONE)
@@ -796,7 +792,7 @@
  DC_bAllocDcAttr(pdcNew);

  // HACK!
-DC_vSelectSurface(pdcNew, psurfDefaultBitmap);
+//DC_vSelectSurface(pdcNew, psurfDefaultBitmap);

  DC_UnlockDc(pdcNew);


Modified: trunk/reactos/win32ss/gdi/ntgdi/dcobjs.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/win32ss/gdi/ntgdi/dcobjs.c?rev=56947r1=56946r2=56947view=diff
==
--- trunk/reactos/win32ss/gdi/ntgdi/dcobjs.c [iso-8859-1] (original)
+++ trunk/reactos/win32ss/gdi/ntgdi/dcobjs.c [iso-8859-1] Mon Jul 23 10:12:53 
2012
@@ -230,9 +230,10 

Re: [ros-dev] [ros-diffs] [akhaldi] 56104: [CMAKE] * Fix a typo.

2012-03-10 Thread Jérôme Gardou

Le 10/03/2012 19:02, akha...@svn.reactos.org a écrit :

Author: akhaldi
Date: Sat Mar 10 18:02:40 2012
New Revision: 56104

URL: http://svn.reactos.org/svn/reactos?rev=56104view=rev
Log:
[CMAKE]
* Fix a typo.

Modified:
 trunk/reactos/cmake/msvc.cmake

Modified: trunk/reactos/cmake/msvc.cmake
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/msvc.cmake?rev=56104r1=56103r2=56104view=diff
==
--- trunk/reactos/cmake/msvc.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/msvc.cmake [iso-8859-1] Sat Mar 10 18:02:40 2012
@@ -178,7 +178,7 @@

  # add our library
  # NOTE: as stub file and def file are generated in one pass, 
depending on one is like depending on the other
-_add_library(lib${_file} STATIC EXCLUDE_FROM_ALL
+add_library(lib${_file} STATIC EXCLUDE_FROM_ALL
  ${CMAKE_CURRENT_BINARY_DIR}/lib${_file}_stubs.asm)

  # set correct link rule



it wasn't a typo :-)

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 56082: [DAMN_IT] - addendum to r56081

2012-03-07 Thread Jérôme Gardou

Le 07/03/2012 22:50, Jérôme Gardou a écrit :

Hey!

Can't we add tests to the regular tree, and disable them with a onig 
flag or something. This is getting retarded, and we must be the only 
project separating tests and runtime in their tree.
Every tester should just build them (not speaking about 
developers...), and we include them in nightly builds. For me this 
separation is just pointless...


regards.
Jérôme

In onig flag, you should read config flag...

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 55770: [NTOSKRNL/MM] - finally, release user shared data at process address space cleanup. - release PDE pages that might not be freed at process end. - Let the cal

2012-02-20 Thread Jérôme Gardou

Le 21/02/2012 01:32, jgar...@svn.reactos.org a écrit :

Author: jgardou
Date: Tue Feb 21 00:32:24 2012
New Revision: 55770

URL: http://svn.reactos.org/svn/reactos?rev=55770view=rev
Log:
[NTOSKRNL/MM]
  - finally, release user shared data at process address space cleanup.
  - release PDE pages that might not be freed at process end.
  - Let the caller handle PDE release when deleting a PTE
  - restore Richard's ASSERT : All user PDE pages are now freed!

Addendum to log :
When a page maps a Prototype PTE, we can't know if it must be 
deleted before dropping shared reference. Modify ASSERT accordingly.
Restore the ASSERTion that only page fault should provocate the 
creation of the PDE and modify PDE refcounting in pageout code accordingly.


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [janderwald] 55447: [DISK_NEW] - Fix compilation of new disk driver - Patch by Alex Ionescu

2012-02-06 Thread Jérôme Gardou

Le 06/02/2012 07:50, janderw...@svn.reactos.org a écrit :


+if(ARCH MATCHES i386)
+add_target_compile_flags(disk -mrtd -fno-builtin -Wno-unused-variable 
-Wno-pointer-sign)
+endif()
+


Hey!

Those look very GCC centric. The corresponding flag for MSVC to -mrtd 
would be /Gz. As for other flags, I'm unsure of what -fno-builtin would 
correspond to, and others are only for warnings.


Cheers.
Jérôme.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [janderwald] 55447: [DISK_NEW] - Fix compilation of new disk driver - Patch by Alex Ionescu

2012-02-06 Thread Jérôme Gardou

Le 06/02/2012 19:58, Alex Ionescu a écrit :

All of these are only for GCC because MSVC already compiles this correctly.

On 2012-02-06, at 10:07 AM, Jérôme Gardou wrote:


Le 06/02/2012 07:50, janderw...@svn.reactos.org a écrit :

+if(ARCH MATCHES i386)
+add_target_compile_flags(disk -mrtd -fno-builtin -Wno-unused-variable 
-Wno-pointer-sign)
+endif()
+


Hey!

Those look very GCC centric. The corresponding flag for MSVC to -mrtd would be 
/Gz. As for other flags, I'm unsure of what -fno-builtin would correspond to, 
and others are only for warnings.

Cheers.
Jérôme.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev
Are you sure that /Gz is default with cl.exe ? Anyway, those flags 
should be wrapped with if (NOT MSVC) condition.


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [project-tools] Revision 1363: [ROSBE-UNIX] Implement support for pre-build post-build hook scripts in RosBE-Unix.

2012-01-29 Thread Jérôme Gardou

Le 28/01/2012 23:30, Colin Finck a écrit :

pschweit...@svn.reactos.org wrote:
 touch boot/bootdata/packages/reactos.dff.in

We can't put this one-liner into the CMakeLists.txt file?
execute_process should do the job if there is no touch command in 
CMake itself.


Your change makes RosBE depend on a very specific file in a very 
specific path of the source tree (= tree change only possible with an 
updated RosBE). In addition, these hooks separate the build logic 
between CMake and RosBE and pave the way for even more source tree 
dependent changes in RosBE. I like to avoid this.



- Colin

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev
I don't know why this is needed at all, but in cmake files you can use 
cmake -E touch for portability (windows have no default touch afaik)


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


[ros-dev] December 2011 meeting minutes

2012-01-17 Thread Jérôme Gardou

Hello everybody.

You will find attached to this e-mail the minutes for the meeting of 2011.
A topic as also been opened on the ReactOS forum 
:http://reactos.org/forum/viewtopic.php?f=2t=10352 
http://reactos.org/forum/viewtopic.php?f=2t=10352


I'm deeply sorry for the delay.

Regards.
Jérôme


2011-12.meeting_minutes.rtf
Description: MS-Word document
___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

[ros-dev] November meeting minutes are there.

2011-12-03 Thread Jérôme Gardou

You will find them on the forum :
http://reactos.org/forum/viewtopic.php?f=2t=9918

Best regards.
Jérôme

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 54462: [RTL] - explicitly truncate some values, so it doesn't count as an error for compiler/MSVC runtime checker

2011-11-23 Thread Jérôme Gardou
Here the variable is an ULONGLONG and we pass it to a macro that casts 
it to a DWORD, and that's what it should do. Although casting and 
truncating is the same from a normal compiler point of view, a run 
time checker would raise a warning if you cast a value superior to 
0x to a DWORD. Truncating it explicitly tells it yes, I 
truncate this value, not for avoiding compiler warning, but because 
that's what I want. See r54460 to see which kind of bugs such checkers 
could help to fix.


See also http://msdn.microsoft.com/en-us/magazine/cc301374.aspx for some 
in depth details, and, of course, cl documentation.

Also, gcc has this kind of functionalities, it's called GNAT.

Mit freundlichen Grüssen. :-)
Jérôme

Le 24/11/2011 00:03, Timo Kreuzer a écrit :

That doesn't make much sense.
Whats the point of the LOWORD() macro, if not truncating it ?
Fix the macro if its broken.


Am 20.11.2011 20:45, schrieb jgar...@svn.reactos.org:

Author: jgardou
Date: Sun Nov 20 19:45:06 2011
New Revision: 54462

URL: http://svn.reactos.org/svn/reactos?rev=54462view=rev
Log:
[RTL]
- explicitly truncate some values, so it doesn't count as an error 
for compiler/MSVC runtime checker


Modified:
 trunk/reactos/lib/rtl/image.c

Modified: trunk/reactos/lib/rtl/image.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/rtl/image.c?rev=54462r1=54461r2=54462view=diff
== 


--- trunk/reactos/lib/rtl/image.c [iso-8859-1] (original)
+++ trunk/reactos/lib/rtl/image.c [iso-8859-1] Sun Nov 20 19:45:06 2011
@@ -369,7 +369,7 @@
  {
  SHORT Offset;
  USHORT Type;
-USHORT i;
+ULONG i;
  PUSHORT ShortPtr;
  PULONG LongPtr;
  PULONGLONG LongLongPtr;
@@ -379,7 +379,6 @@
  Offset = SWAPW(*TypeOffset)  0xFFF;
  Type = SWAPW(*TypeOffset)  12;
  ShortPtr = (PUSHORT)(RVA(Address, Offset));
-
  /*
  * Don't relocate within the relocation section itself.
  * GCC/LD generates sometimes relocation records for the 
relocation section.

@@ -398,16 +397,16 @@
  break;

  case IMAGE_REL_BASED_HIGH:
-*ShortPtr = HIWORD(MAKELONG(0, *ShortPtr) + (LONG)Delta);
+*ShortPtr = HIWORD(MAKELONG(0, *ShortPtr) + (Delta  
0x));

  break;

  case IMAGE_REL_BASED_LOW:
-*ShortPtr = SWAPW(*ShortPtr) + LOWORD(Delta);
+*ShortPtr = SWAPW(*ShortPtr) + LOWORD(Delta  0x);
  break;

  case IMAGE_REL_BASED_HIGHLOW:
  LongPtr = (PULONG)RVA(Address, Offset);
-*LongPtr = SWAPD(*LongPtr) + (ULONG)Delta;
+*LongPtr = SWAPD(*LongPtr) + (Delta  0x);
  break;

  case IMAGE_REL_BASED_DIR64:






___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Qemu Recoverable Assertion when Loading Gecko

2011-11-18 Thread Jérôme Gardou

Le 18/11/2011 01:07, James Tabor a écrit :

Head up on this one. It's recoverable by just typing cont and it goes on.

(dll/ntdll/ldr/ldrutils.c:1177) Overlapping DLL:
C:\ReactOS\system32\oleaut32.dll
WARNING:  MmFlushVirtualMemory at ntoskrnl/mm/ARM3/virtual.c:1044 is
UNIMPLEMENTED!
fixme:(dll/win32/wintrust/register.c:1161) stub
(dll/ntdll/ldr/ldrutils.c:1138) LDR: LdrpMapDll Relocating Image Name
C:\ReactOS\system32\mshtml.dll (7665 -  014C)
(dll/ntdll/ldr/ldrutils.c:1177) Overlapping DLL:
C:\ReactOS\System32\setupapi.dll
(ntoskrnl/se/semgr.c:299) SidInToken Calls: 4
Assertion 'RtlCheckBit(MiUserPfnBitMap, (ULONG)Page)' failed at
ntoskrnl/mm/freelist.c line 127
Entered debugger on embedded INT3 at 0x0008:0x80904efe.
kdb:  bt
Eip:
NTOSKRNL.EXE:104eff (lib/rtl/i386/debug_asm.S:35 (_DbgBreakPoint@0))
Frames:
NTOSKRNL.EXE:c283d (ntoskrnl/mm/freelist.c:127 (MmRemoveLRUUserPage@4))
NTOSKRNL.EXE:c18de (ntoskrnl/mm/balance.c:134 (MmReleasePageMemoryConsumer@8))
NTOSKRNL.EXE:cbf6a (ntoskrnl/mm/section.c:2365 (MmPageOutSectionView@16))
NTOSKRNL.EXE:c822c (ntoskrnl/mm/rmap.c:143 (MmPageOutPhysicalAddress@4))
NTOSKRNL.EXE:c17a9 (ntoskrnl/mm/balance.c:177 (MmTrimUserMemory))
NTOSKRNL.EXE:c141c (ntoskrnl/mm/balance.c:366 (MiBalancerThread@4))
NTOSKRNL.EXE:f2972 (ntoskrnl/ps/thread.c:156 (PspSystemThreadStartup@8))
NTOSKRNL.EXE:5a6a (ntoskrnl/ke/i386/thrdini.c:78 (KiThreadStartup@0))
NTOSKRNL.EXE:f290e (ntoskrnl/ps/thread.c:625 (PsCreateSystemThread@28))
fcdebd80
NTOSKRNL.EXE:152e5 (ntoskrnl/ke/wait.c:527 (KeWaitForSingleObject@20))
NTOSKRNL.EXE:c524e (ntoskrnl/mm/mminit.c:292 (MmMpwThreadMain@4))
NTOSKRNL.EXE:f2972 (ntoskrnl/ps/thread.c:156 (PspSystemThreadStartup@8))
NTOSKRNL.EXE:5a6a (ntoskrnl/ke/i386/thrdini.c:78 (KiThreadStartup@0))
NTOSKRNL.EXE:f290e (ntoskrnl/ps/thread.c:625 (PsCreateSystemThread@28))
fce4fab0
0001
kdb:  cont
Assertion 'RtlCheckBit(MiUserPfnBitMap, (ULONG)Page)' failed at
ntoskrnl/mm/freelist.c line 127
Entered debugger on embedded INT3 at 0x0008:0x80904efe.
kdb:  cont
(subsystems/win32/win32k/ntuser/keyboard.c:1066) err: No Window for Translate.
(dll/ntdll/ldr/ldrutils.c:1138) LDR: LdrpMapDll Relocating Image Name
xul.dll (1000 -  01DB)
(dll/ntdll/ldr/ldrutils.c:1177) Overlapping DLL: C:\ReactOS\system32\
\1.0.0\wine_gecko\xpcom.dll

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Hi James!

I put this ASSERT here to check, as Cameron just pointed, that we don't 
remove a PFN entry from user bitmap when it already has or never was in 
it. I hoped someone would trigger it. I think you deserve a thank you :-)


So let's just fix this one, it can't do any harm.

Btw, do you mean by loading gecko, the very instant when mshtml.dll 
gets registered in 3rd stage? Isn't it startling how it coincides with 
bug 5857 ?


Best regards.
Jérôme

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Qemu Recoverable Assertion when Loading Gecko

2011-11-18 Thread Jérôme Gardou

Le 18/11/2011 21:08, James Tabor a écrit :

Hi!

2011/11/18 Jérôme Gardoujerome.gar...@laposte.net:

Hi James!

I put this ASSERT here to check, as Cameron just pointed, that we don't
remove a PFN entry from user bitmap when it already has or never was in it.
I hoped someone would trigger it. I think you deserve a thank you :-)

So let's just fix this one, it can't do any harm.

Btw, do you mean by loading gecko, the very instant when mshtml.dll gets
registered in 3rd stage? Isn't it startling how it coincides with bug 5857 ?

Best regards.
Jérôme

Something the installer was doing I guess, in most cases more than 10
hits at this point. Running DOSEmu hits it every time to the point of
having to kill Qemu. The fix for me last night was commenting the
assert out. To continue my testing.

Hoping I'm not the only one but if I am, QEMU emulator version 0.13.0
(qemu-kvm-0.13.0) Fedroa 12/13/14. Haven't tested Slackware 13.x and
hardware yet.

Thanks,
James

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Out of curiosity, how much RAm did you allocate for your VM ?

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [tkreuzer] 53399: [VMWINST] Fix amd64 build [NTDLL] add missing amd64 specific exports [MSVCRT*] Fix mangled c++ exports for amd64 [OLEAUT32] Add amd64 adm stub for call_meth

2011-09-04 Thread Jérôme Gardou

Le 23/08/2011 10:58, tkreu...@svn.reactos.org a écrit :

Author: tkreuzer
Date: Tue Aug 23 08:58:15 2011
New Revision: 53399

URL: http://svn.reactos.org/svn/reactos?rev=53399view=rev
Log:
[VMWINST] Fix amd64 build


What about :
[VMWINST] Get rid of this useless relic.
I mean it's something we have to maintain, it was written for 
antediluvian vmware versions, and I see no reason to have such a thing. 
I may as well write an application to install specific ATI card drivers, 
or intel chipset drivers...


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [tkreuzer] 53399: [VMWINST] Fix amd64 build

2011-09-04 Thread Jérôme Gardou

Le 04/09/2011 17:29, Bernd Blaauw a écrit :

Op 4-9-2011 17:10, Jérôme Gardou schreef:

Le 23/08/2011 10:58, tkreu...@svn.reactos.org a écrit :
What about :
[VMWINST] Get rid of this useless relic.
I mean it's something we have to maintain, it was written for
antediluvian vmware versions, and I see no reason to have such a thing.
I may as well write an application to install specific ATI card drivers,
or intel chipset drivers...


Well you got multiple options:
* ensure the VMware installer (MSI) can run properly so people can 
install their drivers. Makes VMWINST obsolete.
* ensure ReactOS can deal with a directory containing the bare VMware 
drivers (requiring 7zip to extract them from VMware 7 ISO).

* convert the Linux opensource VMware drivers into NT ones
* update this relic tool to finally (also) work with modern VMware ISO 
contents structure.


Nice and all that people can show off Quake2, Furmark etc in 
VirtualBox..now prove the same for other virtualisation products and 
real hardware graphics cards (Nvidia and AMD/ATI for starters, Intel 
graphics if you aim at business desktops).


Demonstrate equal progress in all used/supported platforms. Show 
VMWINST is an obsolete relic by proving VMware drivers can install on 
trunk ReactOS, including the added 3D support (OpenGL only I guess, 
but good enough for now).


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev
Please, stop asking us to port opensource linux drivers into NT ones. 
And also don't answer to this sentence and try to explain us why it 
would be so good for this project.
There's no offence meant, it's just that we don't have interest into it, 
and we lack manpower anyway.


Also, Aleksey noted that he still had use of this, I won't touch it.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [cmihail] 53543: [shell32.dll] - Fix bug related to correct error code returning in delete_files. The value of 1026 was revealed to be returned by windows 2003 server. Score

2011-09-03 Thread Jérôme Gardou

Hello Claudiu!

I notice some weird tab/spaces modifications here.

Regards.
Jérôme.

Le 03/09/2011 16:20, cmih...@svn.reactos.org a écrit :

Author: cmihail
Date: Sat Sep  3 14:20:03 2011
New Revision: 53543

URL: http://svn.reactos.org/svn/reactos?rev=53543view=rev
Log:
[shell32.dll]
- Fix bug related to correct error code returning in delete_files. The value of 
1026 was revealed to be returned by windows 2003 server. Score several passed 
winetests.
- Fix a bug in ShellLink::SetShowCmd and score one more passed winetest

Modified:
 branches/shell32_new-bringup/dll/win32/shell32/shelllink.cpp
 branches/shell32_new-bringup/dll/win32/shell32/shlfileop.cpp





___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [jgardou] 53547: [VGA_NEW] - fix some warnings

2011-09-03 Thread Jérôme Gardou
Yuou're right... It was a bad mistake in my local copy which caused the 
warnings to appear.


Thanks for pointing this out.
BTW, I took a look at it, and our headers have the NTAPI calling 
convention, whereas WDK ones haven't.


Le 03/09/2011 18:21, Alex Ionescu a écrit :

These changes are wrong :(

Please use the correct compiler flag instead (-mrtd)

Best regards,
Alex Ionescu




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 53547: [VGA_NEW] - fix some warnings

2011-09-03 Thread Jérôme Gardou

May I ask what the change is?

Le 03/09/2011 22:53, Dmitry Gorbachev a écrit :

BTW, -mrtd has recently (in April) changed its behavior in GCC trunk.
If reactos needs this flag, then maybe somebody should ask the author
of that change (Kai) to provide another flag (say, -mold-rtd) instead
of it.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 53481: [WIDL] - reenable -Oif flag, it's too good to be disabled With this commit, advapi32:service winetest suffers only 2 failures.

2011-08-28 Thread Jérôme Gardou

Feel free to disable it again if probems occur.

Probable bugs are hard to test alone, so I'm waiting for test bot to 
confirm this fixes things without breaking others.


Regards.
Jérôme.

Le 28/08/2011 17:37, jgar...@svn.reactos.org a écrit :

Author: jgardou
Date: Sun Aug 28 15:37:01 2011
New Revision: 53481

URL: http://svn.reactos.org/svn/reactos?rev=53481view=rev
Log:
[WIDL]
- reenable -Oif flag, it's too good to be disabled
With this commit, advapi32:service winetest suffers only 2 failures.

Modified:
 trunk/reactos/cmake/idl-support.cmake
 trunk/reactos/tools/rbuild/backend/mingw/rules.mak

Modified: trunk/reactos/cmake/idl-support.cmake
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/cmake/idl-support.cmake?rev=53481r1=53480r2=53481view=diff
==
--- trunk/reactos/cmake/idl-support.cmake [iso-8859-1] (original)
+++ trunk/reactos/cmake/idl-support.cmake [iso-8859-1] Sun Aug 28 15:37:01 2011
@@ -22,8 +22,8 @@
  set(IDL_HEADER_ARG -h -o) #.h
  set(IDL_HEADER_ARG2 -h -H) #.h
  set(IDL_TYPELIB_ARG -t -o) #.tlb
-set(IDL_SERVER_ARG -s -o) #.c for server library
-set(IDL_CLIENT_ARG -c -o) #.c for stub client library
+set(IDL_SERVER_ARG -Oif -s -o) #.c for server library
+set(IDL_CLIENT_ARG -Oif -c -o) #.c for stub client library
  set(IDL_PROXY_ARG -p -o)
  set(IDL_INTERFACE_ARG -u -o)
  if(ARCH MATCHES i386)
@@ -169,6 +169,6 @@
  list(APPEND IID_SOURCES ${NAME}_i.c)
  endforeach()
  add_library(${TARGET} ${IID_SOURCES})
-add_dependencies(${TARGET} psdk)
+   add_dependencies(${TARGET} psdk)
  set_target_properties(${TARGET} PROPERTIES EXCLUDE_FROM_ALL TRUE)
  endfunction()

Modified: trunk/reactos/tools/rbuild/backend/mingw/rules.mak
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/rbuild/backend/mingw/rules.mak?rev=53481r1=53480r2=53481view=diff
==
--- trunk/reactos/tools/rbuild/backend/mingw/rules.mak [iso-8859-1] (original)
+++ trunk/reactos/tools/rbuild/backend/mingw/rules.mak [iso-8859-1] Sun Aug 28 
15:37:01 2011
@@ -264,7 +264,7 @@

  ${call RBUILD_intermediate_path_noext,$(2)}_c: $(2) $(3) $$(widl_TARGET) | 
${call RBUILD_intermediate_dir,$(2)}
$$(ECHO_WIDL)
-   $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_c.h -c -C 
${call RBUILD_intermediate_path_noext,$(2)}_c.c $(2)
+   $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
RBUILD_dir,$(2)}} -Oif -h -H ${call RBUILD_intermediate_path_noext,$(2)}_c.h -c 
-C ${call RBUILD_intermediate_path_noext,$(2)}_c.c $(2)
$${checkpoint} $$@$(NUL)

  ${call RBUILD_CC,$(1),${call 
RBUILD_intermediate_path_noext,$(2)}_c.c,,,${call 
RBUILD_intermediate_path_noext,$(2)}_c.o}
@@ -280,7 +280,7 @@

  ${call RBUILD_intermediate_path_noext,$(2)}_s: $(2) $(3) $$(widl_TARGET) | 
${call RBUILD_intermediate_dir,$(2)}
$$(ECHO_WIDL)
-   $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
RBUILD_dir,$(2)}} -h -H ${call RBUILD_intermediate_path_noext,$(2)}_s.h -s -S 
${call RBUILD_intermediate_path_noext,$(2)}_s.c $(2)
+   $$(Q)$$(widl_TARGET) ${call RBUILD_midlflags,$(1),$(4),-I${call 
RBUILD_dir,$(2)}} -Oif -h -H ${call RBUILD_intermediate_path_noext,$(2)}_s.h -s 
-S ${call RBUILD_intermediate_path_noext,$(2)}_s.c $(2)
$${checkpoint} $$@$(NUL)

  ${call RBUILD_CC,$(1),${call 
RBUILD_intermediate_path_noext,$(2)}_s.c,,,${call 
RBUILD_intermediate_path_noext,$(2)}_s.o}





___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] [ros-diffs] [ekohl] 53469: [WIDL] Revert parts of r53171: Remove the -Oif flag for WIDL because the NT4 stub code generated by the current WIDL is heavily broken with respect to the rang

2011-08-27 Thread Jérôme Gardou

Please see inlined answers.

Le 28/08/2011 00:29, Eric Kohl a écrit :

Hello Jérôme!


I'm not sure about what you mean for range attribute, but I notice that
typedef [context_handle] PVOID my_handle;
makes widl thinks that any value of the my_handle type is passed by
pointer, whereas midl considers it is passed by value.

Did you try to find the bug in WIDL?

In fact, it was our bug, fixed in r53477.



Could you be more precise about range attributes and others? please.

I should better have written range attributes and probably others!

The range attribute is used in the svcctl.idl file and enables range 
checks in rpcrt4.dll. This is a nice feature, but WIDL is messing up 
the ranges if a range attribute is used with function parameters.


For example:
DWORD Test(
[in] SC_RPC_HANDLE hSCManager,
[in, range(0, 1024)] DWORD dwParam1,
[in, range(0, 255)] DWORD dwParam2);

WIDL will emit the same range type (range 0-255) for both parameters 
because the range attribute is assigned to the DWORD type and it is 
overwritten whenever a new range attribute is used with the DWORD type.
In the end all DWORD type parameters that have a range attribute will 
use the range that is used by the last DWORD type with a range 
attribute (dwParam2 in this case) in the idl file. This will cause 
some 'funny' effects if dwParam1 is greater than 255. :-/
OK, I guess we'd have to open a bug on wine side, I'm not comfortable 
enough with WIDL code to fix it myself.
BTW, I think it is more important to have a working RPC system in 
ReactOS than a windows-compatible one. The compatibility issues can be 
fixed later, but if you break RPC today by fixing compatibility issues 
you will render ReactOS unusable. So please be very careful when you 
make changes to rpcrt4 or WIDL.
I fully agree with that, but just try to reenable -Oif, and look at 
advapi32:service winetest results. You'd be surprised : no skipped 
tests, and some others are actually fixed! (while others are broken, 
most probably because of this range thing) So it's more than a nice 
feature. You can already see it fixes one eventlog test by looking at 
the link Olaf provided (look for eventlog.c:206).


Regards,
Eric

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Regards.
Jérôme.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] August meeting

2011-08-25 Thread Jérôme Gardou

Hi.

I won't be able to attend the meeting tonight. As for the votings, Amine 
knows my feelings about the two issues concerned, so I give him my vote, 
if such a thing is doable.


Regards.
Jérôme.

Le 25/08/2011 18:14, Pierre Schweitzer a écrit :

Hi,
I've just sent the emails containing the credentials to all the users.

As a public reminder, the meeting will take place on the IRC server 
fezile.reactos.org port 6667, no SSL) on channel #meeting.

Please don't forget to log in with the given nickname and then provide the 
password you received.
The meeting will be open for reading to everyone.

The IRC server will be open a short time before meeting starts (at 19UTC, so in 
a bit less than 3 hours).

Regards,
Pierre.

ReactOS Development Listros-dev@reactos.org  wrote on Wed, August 24th, 2011, 
11:30 AM:

Hi,
this is a reminder about the Status meeting, which is to happen
tomorrow, 25th of August at 19:00 UTC. Please don't miss it.

Proposed agenda for the meeting:
1. Arwinss adoption voting.
2. CMake adoption voting.
3. Release preparation status report, deciding on the next release date.
4. Driver signing. Discussing possible threats and deciding on an
official position wrt driver signing in future.
4. Party related to GSoC results.

I propose to move individual devs status reports to ros-dev mailing
list, because there is no reason to just sit in the irc channel and
listen to them for hours.

List of participants:
- Giannis Adamopoulos (smiley1_)
- Johannes Anderwald (janderwald)
- Javier Agustìn Fernàndez Arroyo (elhoir)
- Maciej Bialas (niski)
- Jan Blomqvist-Kinander (JaixBly)
- Aleksey Bragin (abragin)
- Thomas Faber (ThFabba)
- Colin Finck (Colin_Finck)
- Jérôme Gardou (zefklop)
- Danny Götte (dangerground)
- Cameron Gutman (aicom)
- Ziliang Guo (ZWabbit)
- Rafal Harabien (rafalh)
- Andrew Hill (ash77)
- Kamil Hornicek (Pigglesworth)
- Gabriel Ilardi (gabriel_it)
- Alex Ionescu (Alex_Ionescu)
- Amine Khaldi (AmineKhaldi)
- Igor Koshpaev (tower)
- Timo Kreuzer (tkreuzer)
- Matthias Kupfer (Collibri)
- Michael Martin (mjmartin)
- Victor Martinez (vicmarcal)
- Roel Messiant (Mephisto)
- Claudiu Mihail (KlausM)
- Andrew Munger (WaxDragon)
- Ged Murphy (GedMurphy)
- Igor Paliychuk (igorko)
- Sylvain Petreolle (Usurp)
- Hervé Poussineau (hpoussin)
- Daniel Reimer (dreimer)
- Pierre Schweitzer (HeisSpiter)
- Samuel Serapion (encoded)
- Olaf Siejka (Caemyr)
- James Tabor (jimtabor)
- Christoph von Wittich (Christoph_vW)
- Art Yerkes (arty)

WBR,
Aleksey Bragin.
___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [ekohl] 53201: [ADVAPI32] Fix EnumServicesStatusEx[A/W]: - If lpServices is NULL or cbBufSize is less than sizeof(ENUM_SERVICE_STATUS_PROCESS) pass a pointer to an internal s

2011-08-13 Thread Jérôme Gardou
Passing [in] and [unique] to RQueryServiceonfigW is not a solution 
either. It was a quick and dirty hack to get things working.


I'm working on a proper solution right now, unless you already have 
something in your hat :-)


Le 13/08/2011 12:53, ek...@svn.reactos.org a écrit :

Author: ekohl
Date: Sat Aug 13 10:53:15 2011
New Revision: 53201

URL: http://svn.reactos.org/svn/reactos?rev=53201view=rev
Log:
[ADVAPI32]
Fix EnumServicesStatusEx[A/W]:
- If lpServices is NULL or cbBufSize is less than 
sizeof(ENUM_SERVICE_STATUS_PROCESS) pass a pointer to an internal status buffer 
to REnumServicesStatusExA/W. Adding 'in' and 'unique' attributes in the idl 
file is NOT an option because this is not compatible with Windows.
- Check the InfoLevel.

Modified:
 trunk/reactos/dll/win32/advapi32/service/scm.c

Modified: trunk/reactos/dll/win32/advapi32/service/scm.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/advapi32/service/scm.c?rev=53201r1=53200r2=53201view=diff
==
--- trunk/reactos/dll/win32/advapi32/service/scm.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/advapi32/service/scm.c [iso-8859-1] Sat Aug 13 
10:53:15 2011
@@ -1150,7 +1150,9 @@
LPDWORD lpResumeHandle,
LPCSTR pszGroupName)
  {
+ENUM_SERVICE_STATUS_PROCESSA ServiceStatus;
  LPENUM_SERVICE_STATUS_PROCESSA lpStatusPtr;
+DWORD dwBufferSize;
  DWORD dwError;
  DWORD dwCount;

@@ -1166,6 +1168,18 @@
  {
  SetLastError(ERROR_INVALID_HANDLE);
  return FALSE;
+}
+
+if (lpServices == NULL ||
+cbBufSize  sizeof(ENUM_SERVICE_STATUS_PROCESSA))
+{
+lpStatusPtr =ServiceStatus;
+dwBufferSize = sizeof(ENUM_SERVICE_STATUS_PROCESSA);
+}
+else
+{
+lpStatusPtr = (LPENUM_SERVICE_STATUS_PROCESSA)lpServices;
+dwBufferSize = cbBufSize;
  }

  RpcTryExcept
@@ -1174,8 +1188,8 @@
   InfoLevel,
   dwServiceType,
   dwServiceState,
- (LPBYTE)lpServices,
- cbBufSize,
+ (LPBYTE)lpStatusPtr,
+ dwBufferSize,
   pcbBytesNeeded,
   lpServicesReturned,
   lpResumeHandle,
@@ -1189,18 +1203,20 @@

  if (dwError == ERROR_SUCCESS || dwError == ERROR_MORE_DATA)
  {
-lpStatusPtr = (LPENUM_SERVICE_STATUS_PROCESSA)lpServices;
-for (dwCount = 0; dwCount  *lpServicesReturned; dwCount++)
+if (InfoLevel == SC_ENUM_PROCESS_INFO)
  {
-if (lpStatusPtr-lpServiceName)
-lpStatusPtr-lpServiceName =
-(LPSTR)((ULONG_PTR)lpServices + 
(ULONG_PTR)lpStatusPtr-lpServiceName);
-
-if (lpStatusPtr-lpDisplayName)
-lpStatusPtr-lpDisplayName =
-(LPSTR)((ULONG_PTR)lpServices + 
(ULONG_PTR)lpStatusPtr-lpDisplayName);
-
-lpStatusPtr++;
+for (dwCount = 0; dwCount  *lpServicesReturned; dwCount++)
+{
+if (lpStatusPtr-lpServiceName)
+lpStatusPtr-lpServiceName =
+(LPSTR)((ULONG_PTR)lpServices + 
(ULONG_PTR)lpStatusPtr-lpServiceName);
+
+if (lpStatusPtr-lpDisplayName)
+lpStatusPtr-lpDisplayName =
+(LPSTR)((ULONG_PTR)lpServices + 
(ULONG_PTR)lpStatusPtr-lpDisplayName);
+
+lpStatusPtr++;
+}
  }
  }

@@ -1234,11 +1250,31 @@
LPDWORD lpResumeHandle,
LPCWSTR pszGroupName)
  {
+ENUM_SERVICE_STATUS_PROCESSW ServiceStatus;
  LPENUM_SERVICE_STATUS_PROCESSW lpStatusPtr;
+DWORD dwBufferSize;
  DWORD dwError;
  DWORD dwCount;

  TRACE(EnumServicesStatusExW() called\n);
+
+if (InfoLevel != SC_ENUM_PROCESS_INFO)
+{
+SetLastError(ERROR_INVALID_LEVEL);
+return FALSE;
+}
+
+if (lpServices == NULL ||
+cbBufSize  sizeof(ENUM_SERVICE_STATUS_PROCESSW))
+{
+lpStatusPtr =ServiceStatus;
+dwBufferSize = sizeof(ENUM_SERVICE_STATUS_PROCESSW);
+}
+else
+{
+lpStatusPtr = (LPENUM_SERVICE_STATUS_PROCESSW)lpServices;
+dwBufferSize = cbBufSize;
+}

  RpcTryExcept
  {
@@ -1246,8 +1282,8 @@
   InfoLevel,
   dwServiceType,
   dwServiceState,
- (LPBYTE)lpServices,
- cbBufSize,
+   

Re: [ros-dev] [ros-diffs] [jgardou] 53152: [RPCRT4] - restore lost ros specific change. Thanks Vic.

2011-08-09 Thread Jérôme Gardou

Don't worry, it's part of the plan!

Le 09/08/2011 23:29, Ged Murphy a écrit :

Call me nuts, but why don't you add a ros_diff patch so it doesn't get
lost again???
From: jgar...@svn.reactos.org
Sent: 09 August 2011 18:43
To: ros-di...@reactos.org
Subject: [ros-diffs] [jgardou] 53152: [RPCRT4] - restore lost ros
specific change. Thanks Vic.
Author: jgardou
Date: Tue Aug  9 17:43:37 2011
New Revision: 53152

URL: http://svn.reactos.org/svn/reactos?rev=53152view=rev
Log:
[RPCRT4]
- restore lost ros specific change.
Thanks Vic.

Modified:
 trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c

Modified: trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c?rev=53152r1=53151r2=53152view=diff
==
--- trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/rpcrt4/ndr_marshall.c [iso-8859-1] Tue Aug
  9 17:43:37 2011
@@ -6159,6 +6159,7 @@
  case RPC_FC_WCHAR:
  case RPC_FC_SHORT:
  case RPC_FC_USHORT:
+case RPC_FC_ENUM16:
  {
  USHORT d;
  align_pointer(pStubMsg-Buffer, sizeof(USHORT));

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 53158: [TOOLS] - sync wpp, widl and wrc with wine 1.3.26

2011-08-09 Thread Jérôme Gardou

CMake users : please don't forget to rebuild your host tools :-)

Non cmake user : don't worry, this user unfriendly-ness is being worked on.

Le 10/08/2011 00:51, jgar...@svn.reactos.org a écrit :

Author: jgardou
Date: Tue Aug  9 22:51:55 2011
New Revision: 53158

URL: http://svn.reactos.org/svn/reactos?rev=53158view=rev
Log:
[TOOLS]
- sync wpp, widl and wrc with wine 1.3.26

Added:
 trunk/reactos/tools/wrc/po.c   (with props)
Modified:
 trunk/reactos/include/host/nls.h
 trunk/reactos/include/host/wine/wpp.h
 trunk/reactos/tools/widl/client.c
 trunk/reactos/tools/widl/expr.c
 trunk/reactos/tools/widl/hash.c
 trunk/reactos/tools/widl/header.c
 trunk/reactos/tools/widl/header.h
 trunk/reactos/tools/widl/parser.l
 trunk/reactos/tools/widl/parser.tab.c
 trunk/reactos/tools/widl/parser.tab.h
 trunk/reactos/tools/widl/parser.y
 trunk/reactos/tools/widl/parser.yy.c
 trunk/reactos/tools/widl/proxy.c
 trunk/reactos/tools/widl/register.c
 trunk/reactos/tools/widl/server.c
 trunk/reactos/tools/widl/typegen.c
 trunk/reactos/tools/widl/typegen.h
 trunk/reactos/tools/widl/typelib.c
 trunk/reactos/tools/widl/typelib_struct.h
 trunk/reactos/tools/widl/utils.c
 trunk/reactos/tools/widl/utils.h
 trunk/reactos/tools/widl/widl.c
 trunk/reactos/tools/widl/widl.h
 trunk/reactos/tools/widl/widl.rbuild
 trunk/reactos/tools/widl/widltypes.h
 trunk/reactos/tools/widl/write_msft.c
 trunk/reactos/tools/wpp/lex.yy.c
 trunk/reactos/tools/wpp/ppl.l
 trunk/reactos/tools/wpp/ppy.tab.c
 trunk/reactos/tools/wpp/ppy.tab.h
 trunk/reactos/tools/wpp/ppy.y
 trunk/reactos/tools/wpp/preproc.c
 trunk/reactos/tools/wpp/wpp.c
 trunk/reactos/tools/wpp/wpp_private.h
 trunk/reactos/tools/wrc/CMakeLists.txt
 trunk/reactos/tools/wrc/dumpres.c
 trunk/reactos/tools/wrc/genres.c
 trunk/reactos/tools/wrc/lex.yy.c
 trunk/reactos/tools/wrc/newstruc.c
 trunk/reactos/tools/wrc/newstruc.h
 trunk/reactos/tools/wrc/parser.h
 trunk/reactos/tools/wrc/parser.l
 trunk/reactos/tools/wrc/parser.tab.c
 trunk/reactos/tools/wrc/parser.tab.h
 trunk/reactos/tools/wrc/parser.y
 trunk/reactos/tools/wrc/translation.c
 trunk/reactos/tools/wrc/utils.c
 trunk/reactos/tools/wrc/utils.h
 trunk/reactos/tools/wrc/wrc.c
 trunk/reactos/tools/wrc/wrc.h
 trunk/reactos/tools/wrc/wrc.rbuild
 trunk/reactos/tools/wrc/wrcrostypes.h
 trunk/reactos/tools/wrc/wrctypes.h

[This mail would be too long, it was shortened to contain the URLs only.]

Modified: trunk/reactos/include/host/nls.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/host/nls.h?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/include/host/wine/wpp.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/include/host/wine/wpp.h?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/client.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/client.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/expr.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/expr.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/hash.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/hash.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/header.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/header.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/header.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/header.h?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/parser.l
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/parser.l?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/parser.tab.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/parser.tab.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/parser.tab.h
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/parser.tab.h?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/parser.y
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/parser.y?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/parser.yy.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/parser.yy.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/proxy.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/proxy.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/register.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/register.c?rev=53158r1=53157r2=53158view=diff

Modified: trunk/reactos/tools/widl/server.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/tools/widl/server.c?rev=53158r1=53157r2=53158view=diff

Modified: 

Re: [ros-dev] [ros-diffs] [jgardou] 53085: [FREELDR] - Add back apparently lost line of r52098. Patch by Alex Ionescu, tested by Igor Paliychuk. See issue #6292 for more details.

2011-08-05 Thread Jérôme Gardou

Credits go to Cameron Gutman for the idea.

Le 05/08/2011 19:54, jgar...@svn.reactos.org a écrit :

Author: jgardou
Date: Fri Aug  5 17:54:06 2011
New Revision: 53085

URL: http://svn.reactos.org/svn/reactos?rev=53085view=rev
Log:
[FREELDR]
- Add back apparently lost line of r52098.
Patch by Alex Ionescu, tested by Igor Paliychuk.
See issue #6292 for more details.

Modified:
 trunk/reactos/boot/freeldr/freeldr/arcemul/mm.c

Modified: trunk/reactos/boot/freeldr/freeldr/arcemul/mm.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/boot/freeldr/freeldr/arcemul/mm.c?rev=53085r1=53084r2=53085view=diff
==
--- trunk/reactos/boot/freeldr/freeldr/arcemul/mm.c [iso-8859-1] (original)
+++ trunk/reactos/boot/freeldr/freeldr/arcemul/mm.c [iso-8859-1] Fri Aug  5 
17:54:06 2011
@@ -30,6 +30,7 @@
  { { MemoryFirmwareTemporary, 0x80, 0x10 }, 4, }, // File system read 
buffer. FILESYSBUFFER
  { { MemoryFirmwareTemporary, 0x90, 0x10 }, 5, }, // Disk read buffer for 
int 13h. DISKREADBUFFER
  { { MemoryFirmwarePermanent, 0xA0, 0x60 }, 6, }, // ROM / Video
+   { { MemorySpecialMemory, 0xFFF, 1 }, 7, }, // unusable memory
  #elif __arm__ // This needs to be done per-platform specific way

  #endif





___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] Broken Windows_AMD64_1 VBox-Test

2011-08-03 Thread Jérôme Gardou

Hi!

Author: osiejka
Date: Tue Aug  2 22:54:30 2011
New Revision: 53038

URL:http://svn.reactos.org/svn/reactos?rev=53038view=rev
Log:
[CSRSRV]
- don't hack the dll entry point name. Patch by Thomas Faber

I think this fixed it, no?



Le 03/08/2011 09:06, James Tabor a écrit :

Hi!
I think this broke it
[ros-diffs] [jgardou] 53025: [CMAKE/GCC] - fix entry point for native dlls

Thanks,
James

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 52840: [CRT] - get back atexit handling as it was before. (reverts 52838, 52829, 52828) Thanks to Kai and Timo for the explanation

2011-07-24 Thread Jérôme Gardou

Reverts 52836, 52829 and 52828, sorry.

Le 24/07/2011 18:45, jgar...@svn.reactos.org a écrit :

Author: jgardou
Date: Sun Jul 24 16:45:41 2011
New Revision: 52840

URL: http://svn.reactos.org/svn/reactos?rev=52840view=rev
Log:
[CRT]
- get back atexit handling as it was before.
(reverts 52838, 52829, 52828)
Thanks to Kai and Timo for the explanation

Modified:
 trunk/reactos/dll/win32/msvcrt/msvcrt.spec
 trunk/reactos/dll/win32/msvcrt20/msvcrt20.spec
 trunk/reactos/dll/win32/msvcrt40/msvcrt40.spec
 trunk/reactos/lib/3rdparty/mingw/crtexe.c
 trunk/reactos/lib/3rdparty/mingw/mingw.rbuild
 trunk/reactos/lib/sdk/crt/msvcrtex.cmake
 trunk/reactos/lib/sdk/crt/startup/crtdll.c
 trunk/reactos/lib/sdk/crt/startup/crtexe.c

Modified: trunk/reactos/dll/win32/msvcrt/msvcrt.spec
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvcrt/msvcrt.spec?rev=52840r1=52839r2=52840view=diff
==
--- trunk/reactos/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/msvcrt/msvcrt.spec [iso-8859-1] Sun Jul 24 16:45:41 
2011
@@ -1156,7 +1156,7 @@
  @ cdecl asin(double)
  @ cdecl atan(double)
  @ cdecl atan2(double double)
-@ cdecl atexit(ptr)
+@ extern atexit #-- keep this as an extern, thank you
  @ cdecl atof(str)
  @ cdecl atoi(str)
  @ cdecl atol(str)

Modified: trunk/reactos/dll/win32/msvcrt20/msvcrt20.spec
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvcrt20/msvcrt20.spec?rev=52840r1=52839r2=52840view=diff
==
--- trunk/reactos/dll/win32/msvcrt20/msvcrt20.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/msvcrt20/msvcrt20.spec [iso-8859-1] Sun Jul 24 
16:45:41 2011
@@ -937,7 +937,7 @@
  @ cdecl asin(double)
  @ cdecl atan(double)
  @ cdecl atan2(double double)
-@ cdecl atexit(ptr)
+@ extern atexit #-- do not touch this!
  @ cdecl atof(str)
  @ cdecl atoi(str)
  @ cdecl atol(str)

Modified: trunk/reactos/dll/win32/msvcrt40/msvcrt40.spec
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msvcrt40/msvcrt40.spec?rev=52840r1=52839r2=52840view=diff
==
--- trunk/reactos/dll/win32/msvcrt40/msvcrt40.spec [iso-8859-1] (original)
+++ trunk/reactos/dll/win32/msvcrt40/msvcrt40.spec [iso-8859-1] Sun Jul 24 
16:45:41 2011
@@ -975,7 +975,7 @@
  @ cdecl asin(double)
  @ cdecl atan(double)
  @ cdecl atan2(double double)
-@ cdecl atexit(ptr)
+@ extern atexit #-- changing this will kill your cat, understand?
  @ cdecl atof(str)
  @ cdecl atoi(str)
  @ cdecl atol(str)

Modified: trunk/reactos/lib/3rdparty/mingw/crtexe.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/mingw/crtexe.c?rev=52840r1=52839r2=52840view=diff
==
--- trunk/reactos/lib/3rdparty/mingw/crtexe.c [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/mingw/crtexe.c [iso-8859-1] Sun Jul 24 16:45:41 
2011
@@ -71,8 +71,8 @@
  /* TLS initialization hook.  */
  extern const PIMAGE_TLS_CALLBACK __dyn_tls_init_callback;

-//extern _PVFV *__onexitbegin;
-//extern _PVFV *__onexitend;
+extern _PVFV *__onexitbegin;
+extern _PVFV *__onexitend;

  extern int mingw_app_type;

@@ -119,7 +119,7 @@
  __set_app_type(_GUI_APP);
else
  __set_app_type (_CONSOLE_APP);
-//  __onexitbegin = __onexitend = (_PVFV *) _encode_pointer ((_PVFV *)(-1));
+  __onexitbegin = __onexitend = (_PVFV *) _encode_pointer ((_PVFV *)(-1));

* __MINGW_IMP_SYMBOL(_fmode) = _fmode;
* __MINGW_IMP_SYMBOL(_commode) = _commode;

Modified: trunk/reactos/lib/3rdparty/mingw/mingw.rbuild
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/3rdparty/mingw/mingw.rbuild?rev=52840r1=52839r2=52840view=diff
==
--- trunk/reactos/lib/3rdparty/mingw/mingw.rbuild [iso-8859-1] (original)
+++ trunk/reactos/lib/3rdparty/mingw/mingw.rbuild [iso-8859-1] Sun Jul 24 
16:45:41 2011
@@ -12,7 +12,7 @@
include base=ReactOSinclude/reactos/mingw-w64/include
librarykernel32/library
file_newmode.c/file
-   !--fileatonexit.c/file--
+   fileatonexit.c/file
filebinmode.c/file
filecharmax.c/file
filecinitexe.c/file

Modified: trunk/reactos/lib/sdk/crt/msvcrtex.cmake
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/lib/sdk/crt/msvcrtex.cmake?rev=52840r1=52839r2=52840view=diff
==
--- trunk/reactos/lib/sdk/crt/msvcrtex.cmake [iso-8859-1] (original)
+++ trunk/reactos/lib/sdk/crt/msvcrtex.cmake [iso-8859-1] Sun Jul 24 16:45:41 
2011
@@ -17,7 +17,7 @@
  startup/natstart.c
  startup/charmax.c
  startup/merr.c
-#startup/atonexit.c
+startup/atonexit.c
  startup/txtmode.c
  

Re: [ros-dev] cmake rant

2011-07-21 Thread Jérôme Gardou

+1 for Ged.

Le 21/07/2011 18:51, Ged Murphy a écrit :

I'm all for deleting rbuild now and dealing with the consequences.
That would be better than the current situation, which seems rather
ridiculous at the moment.

Right now if you change something, you have to :
- edit the cmakefiles.txt file
- edit the rbuild file
- possibly edit a pspec and spec file
- build with rbuild to check for breakages
- build with cmake to check for breakages

Only then can you commit your changes.
It's not ideal for the people working on this stuff regularly.

Ged.



-Original Message-
From: ros-dev-boun...@reactos.org [mailto:ros-dev-boun...@reactos.org] On
Behalf Of Timo Kreuzer
Sent: 21 July 2011 17:39
To: ReactOS Development List
Subject: [ros-dev] cmake rant

Hi,

Several times now cmake build has been broken. Time for some action!

Last meeting I asked everyone to test/use cmake. It was also mentioned that
if questions arise, we (Amine and me) would be happy to help out. I can't
remember anyone has asked how it works, so I assume noone had any problems.
There's also a pretty good wiki entry describing the whole procedure for
n00bs.

Now people tell me it's complicated, people are complaining that its
ridiculous to have 2 build systems, etc.
And probably noone has ever tried it.

We really need to move on.
I don't like having 2 build systems as well.

Current blocker is the debugging which has some issues, Arty is working on
that. Another problem is a boot problem on real hardware, but no I don't
know on which configuration it doesn't work, so we need more people testing
it on their real hardware setup and report any issues.

Here's a list with current issues:
http://www.reactos.org/wiki/CMake_Todo

So please:
If you are missing something, let us know.
If you like to make it better, make suggestions.
But stop ignoring cmake!

If noone cares and everyone just thinks he can give a s^Z damn until we
officially switch, then we can as well delete all cmake stuff and keep
rbuild. It has a lot of awesome advantages, like you only have to type one
command to build everything and you don't need to install cmake and you can
export whatever you want from kernel32 even if the functions don't exist.
Also you can enjoy the rbuild-loop again and again.

Or we can do it the hard way and delete rbuild, so people are forced to use
cmake. I'm sure this approach would be *really* appreaciated.

Thanks,
Timo


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Monthly meeting reminder

2011-06-26 Thread Jérôme Gardou

Hi!

I'll gladly participate this time. By the way, can I be added to te list?

Regards.
Jérôme.

Le 26/06/2011 19:56, Aleksey Bragin a écrit :
Colin, thanks for providing all required information and setting up 
the irc server. Just a small correction - the list of allowed 
participants now includes Alex Ionescu.


Yes, I beg my pardon about the time, the meeting is going to take 
place at 19:00 UTC. Don't forget to update your calendars!


Updated agenda:
1. Cmake switching
2. New release of ReactOS
3. Website work status
4. GSoC status
5. Developers status.

I don't think we should add more topics, otherwise meeting will take 
too much time. (e.g. DLL wine sync questions could be solved during 
new release discussion).


WBR,
Aleksey.

On Jun 26, 2011, at 5:23 PM, Colin Finck wrote:


Aleksey Bragin alek...@reactos.org wrote:
 Last thursday of this month is quite close, 30th of June, 20:00 UTC

We have voted to begin all further meetings at 19:00 UTC in the last 
meeting.




Colin said that our
private irc server is going to be ready by that date, so if that's 
still

true, Colin - could you please provide details for those who don't
remember where to connect?


Yes, the crash we experienced in March has been fixed, so we can use 
our own server with one-time passwords, logging, voting capabilities 
and without the possibility of netsplits again.


The meeting will be at irc://fezile.reactos.org (Port 6667, no SSL) 
in the channel #meeting.
Note that the IRC service will only be started shortly before the 
meeting.


Please take a look at the list of participants below and reply 
instantly if your name is missing. The list really matters this time 
as it is maintained in the IRC server and you won't get a one-time 
password if you're not on the list.
Observers can always join without being on the list, but not 
participate in the discussions and votings then.


I will wait for additional names till Wednesday before sending out 
the passwords.


Aleksey, please also address the recent inquiries about additional 
points on the meeting agenda and publish an updated agenda.



- Colin


List of participants
=
- Giannis Adamopoulos (smiley1_)
- Johannes Anderwald (janderwald)
- Javier Agustìn Fernàndez Arroyo (elhoir)
- Maciej Bialas (niski)
- Jan Blomqvist-Kinander (JaixBly)
- Aleksey Bragin (abragin)
- Thomas Faber (ThFabba)
- Colin Finck (Colin_Finck)
- Danny Götte (dangerground)
- Andrew Green (greeniekin)
- Cameron Gutman (aicom)
- Ziliang Guo (ZWabbit)
- Rafal Harabien (rafalh)
- Andrew Hill (ash77)
- Kamil Hornicek (Pigglesworth)
- Gabriel Ilardi (gabriel_it)
- Amine Khaldi (AmineKhaldi)
- Timo Kreuzer (tkreuzer)
- Matthias Kupfer (Collibri)
- Michael Martin (mjmartin)
- Victor Martinez (vicmarcal)
- Roel Messiant (Mephisto)
- Claudiu Mihail (KlausM)
- Andrew Munger (WaxDragon)
- Ged Murphy (GedMurphy)
- Sylvain Petreolle (Usurp)
- Hervé Poussineau (hpoussin)
- Daniel Reimer (dreimer)
- Pierre Schweitzer (HeisSpiter)
- Samuel Serapion (encoded)
- Olaf Siejka (Caemyr)
- James Tabor (jimtabor)
- Christoph von Wittich (Christoph_vW)
- Neeraj Yadav (neeraj_rct)
- Art Yerkes (arty)

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 52339: [NTOSKRNL] - don't rely on a boolean being 1 or 0, it's a bad idea (tm)

2011-06-19 Thread Jérôme Gardou
Well, just try this snippet of code in VS 2010, and tell me what you see 
as result :-)

BOOLEAN is what it is : a typedef to BYTE.
PS : no fancy optimization option or whatever

// test_boolean.cpp : définit le point d'entrée pour l'application console.
//

#include iostream
#include Windows.h
#include tchar.h

using namespace std;

BOOLEAN test0x10(int i)
{
return i  0x10;
}


int _tmain(int argc, _TCHAR* argv[])
{
if(test0x10(0x10) == 1)
cout  Alex Ionescu is right  endl;
else if(test0x10(0x10))
cout  Sometimes Alex Ionescu is wrong  endl;
else
cout  Unexpected behaviour!!!  endl;

return 0;
}


Le 18/06/2011 17:22, Alex Ionescu a écrit :

Or rather

1 ? 1 : 0

(just as retarded).

Of course a BOOLEAN is 0 or 1!!!

Best regards,
Alex Ionescu



On Sat, Jun 18, 2011 at 4:22 PM, Alex Ionescuion...@videotron.ca  wrote:

???

This is retarded.

You're doing

0 ? 0 : 1

Best regards,
Alex Ionescu



On Sat, Jun 18, 2011 at 3:45 PM,jgar...@svn.reactos.org  wrote:

Author: jgardou
Date: Sat Jun 18 14:45:08 2011
New Revision: 52339

URL: http://svn.reactos.org/svn/reactos?rev=52339view=rev
Log:
[NTOSKRNL]
  - don't rely on a boolean being 1 or 0, it's a bad idea (tm)

Modified:
trunk/reactos/ntoskrnl/ke/i386/traphdlr.c

Modified: trunk/reactos/ntoskrnl/ke/i386/traphdlr.c
URL: 
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/traphdlr.c?rev=52339r1=52338r2=52339view=diff
==
--- trunk/reactos/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] Sat Jun 18 14:45:08 
2011
@@ -1510,7 +1510,7 @@

 /* Set thread fields */
 Thread-TrapFrame = TrapFrame;
-Thread-PreviousMode = KiUserTrap(TrapFrame);
+Thread-PreviousMode = KiUserTrap(TrapFrame) ? UserMode : KernelMode;

 /* Enable interrupts */
 _enable();




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 52339: [NTOSKRNL] - don't rely on a boolean being 1 or 0, it's a bad idea (tm)

2011-06-19 Thread Jérôme Gardou
I'm not confonding anything, I just consider that calling a function 
which returns a BOOLEAN expecting it will return 0 or 1 is a bad idea, 
because someone might have written the exact same function I've shown 
you as an example.

As a general rule, consider something true when it's not false :-).

Le 19/06/2011 15:29, Alex Ionescu a écrit :

This is a completely different issue. You're confusing bitmask math
with BOOLEAN.

Best regards,
Alex Ionescu



2011/6/19 Jérôme Gardoujerome.gar...@laposte.net:

Well, just try this snippet of code in VS 2010, and tell me what you see as
result :-)
BOOLEAN is what it is : a typedef to BYTE.
PS : no fancy optimization option or whatever

// test_boolean.cpp : définit le point d'entrée pour l'application console.
//

#includeiostream
#includeWindows.h
#includetchar.h

using namespace std;

BOOLEAN test0x10(int i)
{
return i  0x10;
}


int _tmain(int argc, _TCHAR* argv[])
{
if(test0x10(0x10) == 1)
cout  Alex Ionescu is right  endl;
else if(test0x10(0x10))
cout  Sometimes Alex Ionescu is wrong  endl;
else
cout  Unexpected behaviour!!!  endl;

return 0;
}


Le 18/06/2011 17:22, Alex Ionescu a écrit :

Or rather

1 ? 1 : 0

(just as retarded).

Of course a BOOLEAN is 0 or 1!!!

Best regards,
Alex Ionescu



On Sat, Jun 18, 2011 at 4:22 PM, Alex Ionescuion...@videotron.cawrote:

???

This is retarded.

You're doing

0 ? 0 : 1

Best regards,
Alex Ionescu



On Sat, Jun 18, 2011 at 3:45 PM,jgar...@svn.reactos.orgwrote:

Author: jgardou
Date: Sat Jun 18 14:45:08 2011
New Revision: 52339

URL: http://svn.reactos.org/svn/reactos?rev=52339view=rev
Log:
[NTOSKRNL]
  - don't rely on a boolean being 1 or 0, it's a bad idea (tm)

Modified:
trunk/reactos/ntoskrnl/ke/i386/traphdlr.c

Modified: trunk/reactos/ntoskrnl/ke/i386/traphdlr.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/traphdlr.c?rev=52339r1=52338r2=52339view=diff

==
--- trunk/reactos/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] Sat Jun 18
14:45:08 2011
@@ -1510,7 +1510,7 @@

 /* Set thread fields */
 Thread-TrapFrame = TrapFrame;
-Thread-PreviousMode = KiUserTrap(TrapFrame);
+Thread-PreviousMode = KiUserTrap(TrapFrame) ? UserMode :
KernelMode;

 /* Enable interrupts */
 _enable();




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] 1296 [dreimer] Get the cmake path from a system variable called _ROSBE_CMAKEPATH. Hard coding is eeevul!

2011-06-03 Thread Jérôme Gardou

Guess what...

Cmake provides such a GUI

Le 03/06/2011 12:26, victor martinez a écrit :

I am agree with Colin.
The idea of having a Build Environment is not just to make the life 
easier to our devs, but also to have ISOs which we can compare.
If the Environment doesnt bundle *ALL* the tools, then we can have 
devs/testers with different Tools combinations...it can lead to break 
walls with our head.
Also we should try to do the compilation as easier as possible, why 
not creating RosBE 2.0 with GUI frontend? :3



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] 1296 [dreimer] Get the cmake path from a system variable called _ROSBE_CMAKEPATH. Hard coding is eeevul!

2011-06-02 Thread Jérôme Gardou
Fact is that we currently use the bleeding edge fersion of cmake, and we 
may be ahead of it. And it's not that big actually.


Le 03/06/2011 00:01, Zachary Gorden a écrit :
I object highly to the idea of bundling cmake with the BE.  Most 
platforms already have binaries built of cmake, either by the distro 
or for Windows, the people who make cmake provide an installer.  We 
provide the compilers and linkers and we provided rbuild because it 
was our own thing, but cmake is not and has its own environment.


On Thu, Jun 2, 2011 at 4:53 PM, Colin Finck co...@reactos.org 
mailto:co...@reactos.org wrote:


drei...@svn.reactos.org mailto:drei...@svn.reactos.org wrote:
 Get the cmake path from a system variable called _ROSBE_CMAKEPATH.

I hope we're not thinking about requiring the user to install
RosBE and CMake separately.
This would pretty much kill the point of RosBE if people are
forced to get random versions of their build tools from multiple
sources again..


- Colin

___
Ros-dev mailing list
Ros-dev@reactos.org mailto:Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

[ros-dev] Fwd: [NOTEPAD] Patch by Edijs Kolesnikovics: Write default font, weight and point...

2011-04-29 Thread Jérôme Gardou

SaveDword(hKey, _T(iPointSize),   Globals.lfFont.lfHeight);

shouldn't it be

SaveDword(hKey, _T(iPointSize), 
PointSizeFromHeight(Globals.lfFont.lfHeight));


Also, this would permit to simplify code a bit :-)

http://cia.vc/stats/project/ReactOS/.message/3522f92


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Meeting on Thursday

2011-04-01 Thread Jérôme Gardou
Unfortunately, I won't be able to make it either. By the way, even if my 
late activity is hindered by life schedule being quite erratic, could I 
request the honor of being considered as a ReactOS team member.


I'm looking forward the results of this meeting.

Best regards.
Jérôme.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 50991: [NTOSKRNL] - Print supported CPU features. - Simplify detection of non working but claimed SYSENTER support for intel processors - Workaround a virtualbox f

2011-03-07 Thread Jérôme Gardou

Official intel documentation :
http://www.intel.com/Assets/PDF/appnote/241618.pdf, page 30.

As to know how it's made on windows, well, I hope they follow intel docs ;-)

Le 07/03/2011 21:49, Aleksey Bragin a écrit :



On Mar 7, 2011, at 4:33 PM, jgar...@svn.reactos.org wrote:


Author: jgardou
 /* Check if the CPU is too old to support SYSENTER */
-if ((Prcb-CpuType  6) ||
-((Prcb-CpuType == 6)  (Prcb-CpuStep  0x0303)))
+if ((Reg[0]  0x0FFF3FFF)  0x0633)
 {
It was intentionally done over CpuType and CpuStep. Now you criptified 
it back to a raw Reg[0] value and weird hardcoded constant. Could you 
please 1) elaborate this change and 2) if you still think it's 
correct, and if you still tihnk(!) Windows does it same way, then 
rework it to use Prcb-Cpu* instead of these magic values?


Not to say adding a hack for VirtualBox is far from being a beautiful, 
and would need to be *at least* marked so that it's not forgotten.


Thanks,
Aleksey Bragin.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [tkreuzer] 50942: [WIN32K] Do raster operation on 4 bytes instead of only 3. Fixes ... maybe noone has noticed yet ; -)

2011-03-01 Thread Jérôme Gardou


Colin Finck a écrit :


tkreu...@svn.reactos.org wrote:
 Do raster operation on 4 bytes instead of only 3.

Quoting jgardou's commit before:
   - When applying raster operation, do so only on 24 bits, we don't
 support alpha channel in win32k

I have no idea about DIB code, but just from the commit message I 
presume that this change to 24 bits has happened deliberately.



- Colin

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



You broke VLC icons in 32bpp


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Getting a Windows Server 2003 license for the project?

2011-01-14 Thread Jérôme Gardou

I for one, only have a winXP pro license on which I do my tests.

Le 14/01/2011 16:46, Colin Finck a écrit :


Hi everybody,

I've been thinking about getting a license of an English Windows 
Server 2003 Standard 32-Bit for the project.


It could be installed on one of our servers and be made available over 
RDP. This would enable project members to do development and testing 
work on our actual target platform. Considering that some developers 
even use a non-Windows platform for development work, it might 
simplify their work as well.


We may as well use the license for other purposes (Buildslave, 
Testslave, whatever), but at least native building could be done by 
any Windows version. And in this case, I might be able to donate an XP 
Pro license myself (German though).


As I don't know about the needs of the other members, I'd like to hear 
your opinion about my idea. It would also be nice to hear if anybody 
knows a cheap (but legal!) way to get such a license or can even 
donate one (e.g. unused OEM license shipped with a server, unused 
license after getting Server 2008, etc.)
English Windows licenses are rare/expensive on German eBay, so this 
would only be a last resort :-)


Cheers,

Colin


P.S.: If you have the opposite problem and actually need a Linux VM 
available over SSH/RDP (e.g. for testing build system changes), just 
let me know and I could set it up.


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] ReactOS official compatibility target and the new build system

2010-11-13 Thread Jérôme Gardou

Then let's have a kernelbase.dll, as win7 does.

Le 13/11/2010 12:16, Timo Kreuzer a écrit :


I have thought about the multiple Windows version thing some time ago
and had some ideas.
One idea is to Reorganize the functionality, similar to the way it's
done in Windows 7.
some of the win32 dlls would become wrapper dlls and forwarding to the
actual implementations. These wrapper dlls would be tiny and we could
have different sets of wrapper dlls for different windows versions. They
might also forward to different implementations of the same api on
different versions if required. This could be done on runtime, with
something similar to sxs, only user configurable rather than manifest based.

So instead of importing the vista function RegDeleteTree from
kernel32.dll a wine dll would import it from something like
API-ROS-Core-Registry.dll

This way we could as well cleanup our dependency tree and layout stuff
more window 7 alike


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] ReactOS official compatibility target and the new build system

2010-11-13 Thread Jérôme Gardou
So, for kernel we keep our own importibs, adding exports one after the 
other while we implement them, and for user mode dlls we keep win7 
compatible ones?


We need an official stance on this matter.

Le 13/11/2010 03:10, Ged Murphy a écrit :
The target is only win2k3 in the kernel. Everything else is open to 
discussion (in fact, IMO even the kernel compatibility is open to 
discussion)


You should, and must, provide as much functionality as possible with 
the latest versions of Windows.
You can still provide many of the capabilities of Windows 7 using only 
an NT5.2 kernel. It's only the internal architecture which limits 
this, and in terms of many win7 capabilities, this kernel isn't a 
limiting factor.


2010/11/13 Jérôme Gardou jerome.gar...@laposte.net 
mailto:jerome.gar...@laposte.net



As our target is win2k3 sp1 compatibility,


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] ReactOS official compatibility target and the new build system

2010-11-13 Thread Jérôme Gardou

Imagine an even worse written application :
fptr = GetProcAdress(hDll, SomeVistaExport);
if(fptr)
Vista = TRUE;

I know at least one application that does it, and this is... wine tests!

Le 13/11/2010 19:41, Colin Finck a écrit :


Ged Murphy gedmur...@gmail.com wrote:

Usermode should and does report as NT5.2.
It actually doesn't have a choice as the APIs which you use in usermode
to discover the version (GetVersionEx, VerifyVersionInfo) actually query
hardcoded values stored in the kernel.


Sure, but you don't consider the example I've given (VMware Tools 
Installer).
We were already reporting ReactOS as NT 5.2 at that time, but 
obviously the installer just queried the msvcrt.dll version to 
determine its features. And when finding out that it's 42.4.0.0, it 
consequently expected Vista features we were missing.


What I want to say is that we cannot just report ReactOS as NT 5.2 
through the common version functions, but also need to ensure that the 
DLLs have the same versions as their NT 5.2 counterparts.
And when this has been changed, adding APIs of newer Windows versions 
(like wcsncpy_s) would hardly make any sense if we don't need them to 
please some Wine-synced DLLs using newer APIs.



Colin

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 49396: [CMAKE] - put ntdll.def in source files

2010-11-01 Thread Jérôme Gardou

This should work now. Thanks for reporting.

Ged Murphy wrote:

I've just tried to build the cmake branch for the first time and hit the 
following error :


-- xmllite has no base address
-- win32csr has no base address
-- Configuring done
CMake Error in dll/ntdll/CMakeLists.txt:
   Cannot find source file ntdll.def.  Tried extensions .c .C .c++ .cc .cpp
   .cxx .m .M .mm .h .hh .h++ .hm .hpp .hxx .in .txx



Reverting the changes in this revision fixed it.
I know nothing about cmake, but this change appears to have broken the build?

Ged.



-Original Message-
From: ros-diffs-boun...@reactos.org [mailto:ros-diffs-boun...@reactos.org] On 
Behalf Of jgar...@svn.reactos.org
Sent: 01 November 2010 09:32
To: ros-di...@reactos.org
Subject: [ros-diffs] [jgardou] 49396: [CMAKE] - put ntdll.def in source files

Author: jgardou
Date: Mon Nov  1 09:32:04 2010
New Revision: 49396

URL: http://svn.reactos.org/svn/reactos?rev=49396view=rev
Log:
[CMAKE]
   - put ntdll.def in source files

Modified:
 branches/cmake-bringup/dll/ntdll/CMakeLists.txt

Modified: branches/cmake-bringup/dll/ntdll/CMakeLists.txt
URL: 
http://svn.reactos.org/svn/reactos/branches/cmake-bringup/dll/ntdll/CMakeLists.txt?rev=49396r1=49395r2=49396view=diff
==
--- branches/cmake-bringup/dll/ntdll/CMakeLists.txt [iso-8859-1] (original)
+++ branches/cmake-bringup/dll/ntdll/CMakeLists.txt [iso-8859-1] Mon Nov  1 
09:32:04 2010
@@ -21,10 +21,8 @@
  rtl/libsupp.c
  rtl/version.c
  def/ntdll.rc
-def/ntdll.def)
+${CMAKE_CURRENT_BINARY_DIR}/def/ntdll.def)

-set_source_files_properties(def/ntdll.def PROPERTIES EXTERNAL_OBJECT TRUE)
-
  if(ARCH MATCHES i386)
  list(APPEND SOURCE dispatch/i386/dispatch.S)
  elseif(ARCH MATCHES amd64)
@@ -48,7 +46,6 @@
  endif()

  target_link_libraries(ntdll
-${CMAKE_CURRENT_BINARY_DIR}/def/ntdll.def
ntdllsys
libcntpr
pseh)



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


   



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


[ros-dev] Static - dynamic generation of reactos.dff

2010-10-29 Thread Jérôme Gardou

Hi reactos developers.

As many of you know, the cmake branch development is going along and is 
the occasion of many innovations in the way reactos is built.


One of this way is the reactos.dff file. Currently, it is a static file, 
meaning that each time you want to add a module to reactos, you have to 
edit this file. What I propose is to create this file dynamically, when 
parsing the build system file. Adding a reactos module twould then be as 
simple as (!) creating a new build file for this module.


For those who are concerned about slipstreaming or optional files like 
wallpapers or whatever hacking they do with the current reactos.dff, it 
will be as easy as before. There will be a file to edit, which will be 
the static part of it. Whatever you'll write in this file will be 
written back to reactos.dff, so there is no need to worry about that.


What do you think?

Regards.
Jérôme.

PS : The patch is there. It waits for your approval :-)

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 48359: [WIN32K] - Rewrite NtGdiGetDIBitsInternal, with WINE as a reference. - Get back DIB Section creation to classic BITMAPINFO. This si the beginnig of the end f

2010-08-01 Thread Jérôme Gardou

Timo Kreuzer wrote:

Jérôme Gardou schrieb:
   

That's why I began to revert all of this stuff, which is horrible :-)
 

While I completely agree on removing BITMAPCOREHEADER support, I don't
really like other parts.

- Probing the BITMAPINFO and then passing the usermode buffer to the
internal and unprotected function is not enough. The buffer must be copied.
   

OK, it's safer this way.

- The BITMAPV5HEADER is only ~120 bytes and only used once per function
call, so putting the safe buffer on the stack is appropriate. The buffer
needs be large enough for V5 anyway, so why not fixup some values and
make it a full V5 header?
   
No, all values added by V4/V5 headers are for ICM. If there is only a 
BITMAPINFOHEADER there, then we don't have to care about ICM. If we 
convert it to a V5 header, all values will be 0, that's not worth the 
effort.

- The ProbeAndConvert function was added to simplify the code and move
all code that handles the small differences into one central place
instead of having a bunch of if (size  bla) checks in multiple places
just to check whether I can or can not access some member of the
BITMAPINFO or where to get the color masks from. With the conversion all
of the internal code can work the same simple way assuming a full
BITMAPV5INFO is available.
   
The only effort to make here is to take care of where the color buffer 
is : bmi + bmi-bmiHeader.biSize and not bmi-bmiColors. Then check in 
some functions if we have a V4/V5 header to take care of the features 
they have. If we're good enough, we'll just need to call 
DIB_CreateDIBSection, and work with this bitmap created here. That's 
what I did in NtGdiStretchBitmapInternal, NtGdiGetDIBits and 
IntGdiSetDIBits. The major problem is to get the palette created properly.

- When support for BITMAPCOREHEADER gets removed the code become much
less horrible
   

Agree.

Timo

   

Jérôme.

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [jgardou] 48359: [WIN32K] - Rewrite NtGdiGetDIBitsInternal, with WINE as a reference. - Get back DIB Section creation to classic BITMAPINFO. This si the beginnig of the end f

2010-07-30 Thread Jérôme Gardou

That's why I began to revert all of this stuff, which is horrible :-)
Regards.
Jérôme.

James Tabor wrote:

Hi!

BitmapCoreInfo !Should Be! handled in Gdi32 and converted there! The
latest BitmapInfo must be handled in win32k. So not get it confused.
James

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


   



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [akhaldi] 48236: Create a branch forcmake bringup.

2010-07-30 Thread Jérôme Gardou
Having a proper build system and a good tree structure is a mandatory 
step to work efficiently. As long as we have neither of them, it is a 
priority.

That's just my opinion, though...

Gabriel ilardi wrote:
I think that the tree reshuffle should be done separately from the 
cmake branch. I also agree with Ged that it isn't very logical, so 
from this point of view I support the tree restructure.
On the other hand ReactOS is in a really bad shape form a user point 
of view and all the resources should focus on fix the most important 
bugs and regressions listed in http://www.reactos.org/wiki/Buglist. 
The rest of the things
is of a minor importance to me. We can't do everything at the same 
time, we should focus and things of major importance at the moment.

Just my 2 cents.

Gabriel.




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Tree restructure

2010-07-28 Thread Jérôme Gardou



I’d much prefer to go to the audio directory to work on everything from
portcls.sys up to mmsys.cpl. Things could be committed together instead
of separately forcing 2 separate builds on buildbot
 

Yes, but imagine someone who's going to work on Control Panel Applets, e.g.
a UI person (if we had one), who would need to work with all CPLs in the
system. He would need to find them throughout whole tree, ask in ros-dev ML
if he missed any and abandon his idea soon after starting.

   

Isn't it possible to do hard links with svn, git or whatever?

So as in your example, mmsys.cpl would be located in the audio sub tree, 
and hardlinked to the UI/cpl directory.


All modern filesystems support hard links, that wouldn't suprise me if 
modern version control systems would do the same.


What do you think?

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Tree restructure

2010-07-28 Thread Jérôme Gardou

And here is what I said.
http://svnbook.red-bean.com/en/1.0/ch07s03.html

Jérôme Gardou wrote:




I’d much prefer to go to the audio directory to work on everything from
portcls.sys up to mmsys.cpl. Things could be committed together instead
of separately forcing 2 separate builds on buildbot
Yes, but imagine someone who's going to work on Control Panel 
Applets, e.g.

a UI person (if we had one), who would need to work with all CPLs in the
system. He would need to find them throughout whole tree, ask in 
ros-dev ML

if he missed any and abandon his idea soon after starting.


Isn't it possible to do hard links with svn, git or whatever?

So as in your example, mmsys.cpl would be located in the audio sub 
tree, and hardlinked to the UI/cpl directory.


All modern filesystems support hard links, that wouldn't suprise me if 
modern version control systems would do the same.


What do you think?

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev





___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [akhaldi] 48236: Create a branch for cmake bringup.

2010-07-25 Thread Jérôme Gardou

wasn't there already a branch for that task?

Zachary Gorden wrote:
I also support a reshuffling of the directories, but not in the cmake 
branch.  Let that be used JUST for getting cmake up and running and 
if/once that is merged into trunk, then we look into changing the 
structure.  Best not to complicate one task by adding more to it.



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] [ros-diffs] [dreimer] 48036: Bug 5501: [PATCH] Adding Wing32support by Carlo Bramini

2010-07-14 Thread Jérôme Gardou

Alphabetical reordering ?

Aleksey Bragin wrote:


What's that massive reactos.dff change introduced with this rev?

--
From: drei...@svn.reactos.org
Sent: Wednesday, July 14, 2010 2:59 PM
To: ros-di...@reactos.org
Subject: [ros-diffs] [dreimer] 48036: Bug 5501: [PATCH] Adding 
Wing32support by Carlo Bramini



Author: dreimer
Date: Wed Jul 14 10:59:32 2010
New Revision: 48036

URL: http://svn.reactos.org/svn/reactos?rev=48036view=rev
Log:
Bug 5501: [PATCH] Adding Wing32 support by Carlo Bramini

Added:
   trunk/reactos/dll/win32/wing32/
   trunk/reactos/dll/win32/wing32/wing32.c   (with props)
   trunk/reactos/dll/win32/wing32/wing32.rbuild   (with props)
   trunk/reactos/dll/win32/wing32/wing32.spec   (with props)
Modified:
   trunk/reactos/boot/bootdata/packages/reactos.dff
   trunk/reactos/dll/win32/win32.rbuild




___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev





___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Build process changes...

2010-06-16 Thread Jérôme Gardou
I already have ported an autotools project to cmake, so I might 
help there. The big plus of cmake is that it is documented(tm) 
and that we don't have to care of its maintenance. Also, with 
good macros, adding a dll to the build might be as simple as 
REACTOS_ADD_DLL(gdi32) into a txt file.

Le mercredi 16 juin 2010 17:53:13, Timo Kreuzer a écrit :
 Timo Kreuzer schrieb:
  Make a little now.
 
 Uhm.. ? No I dea what I wanted to say. Just ignore this 
sentence ;-)
 
 
 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev

___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] RosBE 1.5 Release Candidates

2010-02-03 Thread Jérôme Gardou
Here is what I get when typing 'make kernel32' :

[LD]   output-i386/dll/win32/kernel32/kernel32.dll
/usr/local/RosBE/i386/lib/gcc/mingw32/4.4.3/libgcc.a(_enable_execute_stack.o): 
In function `_enable_execute_stack':
/home/jeje/Downloads/RosBE-Unix-1.5-RC2/sources/gcc-
build/mingw32/libgcc/../../../gcc/libgcc/../gcc/libgcc2.c:2038: 
undefined reference to `abort'
make: *** [output-i386/dll/win32/kernel32/kernel32.dll] Error 1

This is on fedora 12 64 bits.

Regards
Jérôme.



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Arwinss presentation

2010-01-18 Thread Jérôme Gardou
Because there still exists some features of D3D that OpenGL has not or 
that some manufacturers implement in their D3D drivers but not in their 
opengl ICD.

The funny side of it is that I use wineD3D on my laptop, because intel 
drivers suck!
Jérôme.

Kamil Horníček a écrit :
 What would be the advantage of such an approach? We now use only Wine DX
 libs anyway and wined3d seems to do its job just fine.
 This would go directly against the whole arwinss idea = use tested and known
 to work code from Wine and only spend valuable dev time on parts that are
 reactos specific.

 Kamil



___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev

Re: [ros-dev] Wanting to work on ddraw.

2009-10-20 Thread Jérôme Gardou
Hi everybody.

I just wanted to tell you that even if I was silent for quite some time 
now, I'm still working on this, even more now than RL has calmed down. I 
have begun working on the user side of ddraw. Currently, I implemented 
IDirectDraw:CreatePalette (needs testing!) and almost all 
ddraw-refcount winetests pass when using it on winXP.
Patch is on bugzilla : http://www.reactos.org/bugzilla/show_bug.cgi?id=4909

Regards
Jérôme


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


[ros-dev] Wanting to work on ddraw.

2009-09-26 Thread Jérôme Gardou
Hi everybody.

It's been a long time that I follow this project, even if I was pretty 
quiet, and I think it is now time to make my own contribution.
Some of you might remind some attempts to work on kernel32 winetests., 
and it turned out that I needed something more motivational. I found 
that reactX is an abandoned field, and so I think that it would be a 
real challenge to get things working. I have already some patches, which 
get the ddraw initialization a bit further that where it manages to go 
in trunk.

Regards
Jérôme (aka zefklop)

PS: I'd like to talk with you about that on IRC, but unfortunately I am 
behind  proxy which refuses it


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev


Re: [ros-dev] Let's push winetests farther!

2009-07-23 Thread Jérôme Gardou
I do get this error too, but that does not stop me from doing some 
tests. What I did was to recompile kernel32 as kernel32_test and link 
the winetest to it instead of kernel32, and launch it in winXP. This 
sounds really dirty as it is, but gave me good result. The fixed tests 
on reactos side was a mistake.

Timo Kreuzer wrote:
 Hi,

 Some dlls cannot be properly tested on Window. These are:

 ntdll: it uses direct systemcalls and the system call numbers would 
 need to match the windows system you test it on. If you are very lucky 
 you could find one version of win2k3 that matches our syscalls, but I 
 wouldn't bet on that.

 kernel32: it's communication with csrss is not Windows compatible. We 
 would have to fix (rewrite) our csrss, something that would requite 
 lots of work. And noone loves csrss. (We accept patches. ;-))

 gdi32: It loads and partly works on Windows XP, as the handle manager 
 win32k syscall numbers are now mostly XP compatible. I'm not sure 
 whether this is still true, as there were some changes recently and I 
 don't know on what Windows version those were based. But the winetest 
 results are a desaster, it even fails CreateDC.

 user32: Doesn't work, for a lot of reasons. user32 is a major user of 
 kernel-usermode shared data. Our data structures are not anywhere 
 like Windows ones and probably will never be 100%. Same for the handle 
 manager. Also incompatible is communication with csrss again and 
 several syscalls that are incompatible to Windows. And finally we 
 don't (didn't?) properly initialize the kernel callbacks, making it 
 crash on systemcalls.That may actually be fixed by Jim's recent commits.

 Btw: what are the results you sent? kernel32 on windows XP? I wonder 
 how you managed to get any console output as that wouldn't work with 
 our kernel32 on Windows. For me it doesn't load, even with your patch. 
 WinDbg shows the following debug message:

 output-i386\modules\rostests\winetests\kernel32\kernel32.dll 
 (dll\win32\kernel32\misc\dllmain.c:203) CSR Failed to give us a console

 So I guess you made a mistake ;-)

 Regards,
 Timo

 Jérôme Gardou wrote:
 As you all know, reactos is tested against the wine test suite. While 
 this is a great tool, I think this is not enough to be sure that 
 ReactOS is fully tested.

 I've been trying to fix some kernel32 tests. As you all know, in 
 ReactOS it is written on top of ntdll. So I wanted to fix some tests, 
 and then a question arose : is it that kernel32 calls ntdll the wrong 
 way, or is it that ntdll does the wrong job? The only way to verify 
 this would be to test kernel32.dll out of reactOS, meaning replacing 
 the windows one with the reactos one, and run the test.

 To be brief : I think that a weekly reactos dlls against windows 
 test would be very helpful to be sure that things are done the right 
 way!

 I began with the kernel32:file winetest. I managed to not make it 
 crash when used on winXP, the resulting patch is there : 
 http://www.reactos.org/bugzilla/show_bug.cgi?id=4728 and the result 
 of this test is attached there. As miracles happen, it also fixes 
 some tests on ReactOS. Seems like this is a good approach.

 Jérôme Gardou (aka zefklop on IRC and forums)

 

 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev

 

 ___
 Ros-dev mailing list
 Ros-dev@reactos.org
 http://www.reactos.org/mailman/listinfo/ros-dev


___
Ros-dev mailing list
Ros-dev@reactos.org
http://www.reactos.org/mailman/listinfo/ros-dev