(no subject)

2006-01-10 Thread Curro Amores
I get this error when trying to install j2se with wine, i think is has 
something to do with windows installer, but ihave installed InstMSIA.exe 
manually with wine ( i dont get any error or see any installation box with 
wine InstMSI.exe).


Has somebody tried to install JAva with wine?

This is the output

WINEDBG=+loaddll wine jdk-1_5_0_06-windows-i586-p.exe
wine: Unhandled page fault on read access to 0x80002b1c at address 0x4d5d5b 
(thread 000c), starting debugger...

WineDbg starting on pid 0x9
Unhandled exception: page fault on read access to 0x80002b1c in 32-bit code 
(0x004d5d5b).

In 32 bit mode.
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:1007 GS:0033
EIP:004d5d5b ESP:7fc8fd24 EBP:7fc8fd64 EFLAGS:00010282(   - 00  - RIS1)
EAX:0009 EBX: ECX:80002b08 EDX:000c
ESI:80002b08 EDI:
Stack dump:
0x7fc8fd24:  0048 004d5b8f  004d17c6
0x7fc8fd34:  7fec0b40 004d15a4 00bfd1b0 00911f7c
0x7fc8fd44:  7fc8fd64 00911fa2 7fc8fd34 7fc8f8e0
0x7fc8fd54:  7fc8ff2c 004d53e8 00514a70 
0x7fc8fd64:  7fc8fd84 00bcc611 004d 0001
0x7fc8fd74:  0001 0001 0001 00bfd1b0
0200: sel=1007 base=7befc000 limit=1fff 32-bit rw-
Backtrace:
=1 0x004d5d5b in rpcrt4 (+0x5d5b) (0x004d5d5b)
 2 0x00bcc611 call_dll_entry_point+0x15 in ntdll (0x00bcc611)
 3 0x00bcd252 MODULE_InitDLL+0x12a 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:816] in ntdll 
(0x00bcd252)
 4 0x00bcda98 process_attach+0x98 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:891] in ntdll 
(0x00bcda98)
 5 0x00bcda6e process_attach+0x6e 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:883] in ntdll 
(0x00bcda6e)
 6 0x00bcda6e process_attach+0x6e 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:883] in ntdll 
(0x00bcda6e)
 7 0x00bcfe19 LdrInitializeThunk+0x319(main_file=0x0, unknown2=0x0, 
unknown3=0x0, unknown4=0x0) 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:2001] in ntdll 
(0x00bcfe19)
 8 0x005eff1f start_process+0x8b(arg=0x0) 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/kernel/process.c:1017] in kernel32 
(0x005eff1f)

 9 0x0033185b _IO_vfprintf_internal in libc.so.6 (0x0033185b)
0x004d5d5b: cmpl0x14(%esi),%eax
Modules:
Module  Address Debug info  Name (43 modules)
ELF 0x0025f000-00299000 Deferredadvapi32elf
 \-PE  0x0027-00299000 \   advapi32
ELF 0x002c8000-002cd000 Deferredlibxxf86vm.so.1
ELF 0x002d2000-002ee000 Deferredld-linux.so.2
ELF 0x002ee000-0031c000 Deferredlibfontconfig.so.1
ELF 0x002ee000-0031c000 Deferredlibfontconfig.so.1
ELF 0x002f4000-0041e000 Export  libc.so.6
ELF 0x00346000-0043c000 Deferredlibwine_unicode.so.1
ELF 0x0042-00426000 Deferredlibxxf86dga.so.1
ELF 0x0042-00426000 Deferredlibxxf86dga.so.1
ELF 0x00446000-0044a000 Deferredlibdl.so.2
ELF 0x0044a000-004cb000 Deferredgdi32elf
 \-PE  0x0044c000-0045f000 \   libz.so.1
 \-PE  0x0046-004cb000 \   gdi32
 \-PE  0x0046-004cb000 \   gdi32
PE  0x004d-00522000 Deferredrpcrt4
ELF 0x00537000-00549000 Deferredlibpthread.so.0
ELF 0x0054b000-0055a000 Deferredlibxext.so.6
ELF 0x0055c000-00565000 Deferredlibsm.so.6
ELF 0x00567000-00581000 Deferredlibice.so.6
ELF 0x00583000-005a2000 Deferredlibexpat.so.0
ELF 0x00583000-005a2000 Deferredlibexpat.so.0
PE  0x005b-0067e000 DIA kernel32
PE  0x005b-0067e000 DIA kernel32
PE  0x005b-0067e000 DIA kernel32
PE  0x0068-0086c000 Deferredmsi
ELF 0x0086c000-0097a000 Deferreduser32elf
 \-PE  0x0089-0097a000 \   user32
 \-PE  0x0089-0097a000 \   user32
ELF 0x00975000-009f Deferredlibgl.so.1
ELF 0x00975000-009f Deferredlibgl.so.1
PE  0x009f-00a59000 Deferredwinex11
ELF 0x00b2d000-00b4c000 Deferredximcp.so.2
ELF 0x00b4c000-00b67000 Deferredimm32elf
 \-PE  0x00b5-00b67000 \   imm32
ELF 0x00b99000-00c09000 Stabs   ntdllelf
 \-PE  0x00bb-00c09000 \   ntdll
ELF 0x00ea3000-00ea5000 Deferredxlcutf8load.so.2
ELF 0x00ef1000-00f07000 Deferredmsiexecelf
 \-PE  0x00f0-00f07000 \   msiexec
ELF 0x00fed000-00ff8000 Deferredlibnss_files.so.2
PE  0x65f0-65fc2000 Deferredole32
ELF 0x7bf0-7bf03000 Deferredwine-loader
Threads:
process  tid  prio (all id:s are in hex)
0009 (D) C:\windows\system32\MSIEXEC.EXE
   000c0 ==
0047
   00080
001e
   00262
   

Re: JDK

2006-01-10 Thread Robert Shearman

Curro Amores wrote:

I get this error when trying to install j2se with wine, i think is has 
something to do with windows installer, but ihave installed 
InstMSIA.exe manually with wine ( i dont get any error or see any 
installation box with wine InstMSI.exe).


Has somebody tried to install JAva with wine?

This is the output

WINEDBG=+loaddll wine jdk-1_5_0_06-windows-i586-p.exe
wine: Unhandled page fault on read access to 0x80002b1c at address 
0x4d5d5b (thread 000c), starting debugger...

WineDbg starting on pid 0x9
Unhandled exception: page fault on read access to 0x80002b1c in 32-bit 
code (0x004d5d5b).

In 32 bit mode.
Register dump:
CS:0073 SS:007b DS:007b ES:007b FS:1007 GS:0033
EIP:004d5d5b ESP:7fc8fd24 EBP:7fc8fd64 EFLAGS:00010282(   - 00  - 
RIS1)

EAX:0009 EBX: ECX:80002b08 EDX:000c
ESI:80002b08 EDI:
Stack dump:
0x7fc8fd24:  0048 004d5b8f  004d17c6
0x7fc8fd34:  7fec0b40 004d15a4 00bfd1b0 00911f7c
0x7fc8fd44:  7fc8fd64 00911fa2 7fc8fd34 7fc8f8e0
0x7fc8fd54:  7fc8ff2c 004d53e8 00514a70 
0x7fc8fd64:  7fc8fd84 00bcc611 004d 0001
0x7fc8fd74:  0001 0001 0001 00bfd1b0
0200: sel=1007 base=7befc000 limit=1fff 32-bit rw-
Backtrace:
=1 0x004d5d5b in rpcrt4 (+0x5d5b) (0x004d5d5b)
 2 0x00bcc611 call_dll_entry_point+0x15 in ntdll (0x00bcc611)
 3 0x00bcd252 MODULE_InitDLL+0x12a 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:816] in ntdll 
(0x00bcd252)
 4 0x00bcda98 process_attach+0x98 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:891] in ntdll 
(0x00bcda98)
 5 0x00bcda6e process_attach+0x6e 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:883] in ntdll 
(0x00bcda6e)
 6 0x00bcda6e process_attach+0x6e 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:883] in ntdll 
(0x00bcda6e)
 7 0x00bcfe19 LdrInitializeThunk+0x319(main_file=0x0, unknown2=0x0, 
unknown3=0x0, unknown4=0x0) 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:2001] in ntdll 
(0x00bcfe19)
 8 0x005eff1f start_process+0x8b(arg=0x0) 
[/home/curro/WineHQrpm/wine-0.9.5/dlls/kernel/process.c:1017] in 
kernel32 (0x005eff1f)

 9 0x0033185b _IO_vfprintf_internal in libc.so.6 (0x0033185b)
0x004d5d5b: cmpl0x14(%esi),%eax


...


PE  0x004d-00522000 Deferredrpcrt4
PE  0x0068-0086c000 Deferredmsi
PE  0x65f0-65fc2000 Deferredole32



This isn't a user's list, but you might want to start by setting the 
above three DLLs to builtin. I can't fix bugs in native DLLs, but I can 
in Wine's.


--
Rob Shearman





Re: JDK

2006-01-10 Thread Paul Vriens
 Curro Amores wrote:

 I get this error when trying to install j2se with wine, i think is has
 something to do with windows installer, but ihave installed
 InstMSIA.exe manually with wine ( i dont get any error or see any
 installation box with wine InstMSI.exe).

 Has somebody tried to install JAva with wine?

 This is the output

 WINEDBG=+loaddll wine jdk-1_5_0_06-windows-i586-p.exe
 wine: Unhandled page fault on read access to 0x80002b1c at address
 0x4d5d5b (thread 000c), starting debugger...
 WineDbg starting on pid 0x9
 Unhandled exception: page fault on read access to 0x80002b1c in 32-bit
 code (0x004d5d5b).
 In 32 bit mode.
 Register dump:
 CS:0073 SS:007b DS:007b ES:007b FS:1007 GS:0033
 EIP:004d5d5b ESP:7fc8fd24 EBP:7fc8fd64 EFLAGS:00010282(   - 00  -
 RIS1)
 EAX:0009 EBX: ECX:80002b08 EDX:000c
 ESI:80002b08 EDI:
 Stack dump:
 0x7fc8fd24:  0048 004d5b8f  004d17c6
 0x7fc8fd34:  7fec0b40 004d15a4 00bfd1b0 00911f7c
 0x7fc8fd44:  7fc8fd64 00911fa2 7fc8fd34 7fc8f8e0
 0x7fc8fd54:  7fc8ff2c 004d53e8 00514a70 
 0x7fc8fd64:  7fc8fd84 00bcc611 004d 0001
 0x7fc8fd74:  0001 0001 0001 00bfd1b0
 0200: sel=1007 base=7befc000 limit=1fff 32-bit rw-
 Backtrace:
 =1 0x004d5d5b in rpcrt4 (+0x5d5b) (0x004d5d5b)
  2 0x00bcc611 call_dll_entry_point+0x15 in ntdll (0x00bcc611)
  3 0x00bcd252 MODULE_InitDLL+0x12a
 [/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:816] in ntdll
 (0x00bcd252)
  4 0x00bcda98 process_attach+0x98
 [/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:891] in ntdll
 (0x00bcda98)
  5 0x00bcda6e process_attach+0x6e
 [/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:883] in ntdll
 (0x00bcda6e)
  6 0x00bcda6e process_attach+0x6e
 [/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:883] in ntdll
 (0x00bcda6e)
  7 0x00bcfe19 LdrInitializeThunk+0x319(main_file=0x0, unknown2=0x0,
 unknown3=0x0, unknown4=0x0)
 [/home/curro/WineHQrpm/wine-0.9.5/dlls/ntdll/loader.c:2001] in ntdll
 (0x00bcfe19)
  8 0x005eff1f start_process+0x8b(arg=0x0)
 [/home/curro/WineHQrpm/wine-0.9.5/dlls/kernel/process.c:1017] in
 kernel32 (0x005eff1f)
  9 0x0033185b _IO_vfprintf_internal in libc.so.6 (0x0033185b)
 0x004d5d5b: cmpl0x14(%esi),%eax

 ...

 PE  0x004d-00522000 Deferredrpcrt4
 PE  0x0068-0086c000 Deferredmsi
 PE  0x65f0-65fc2000 Deferredole32


 This isn't a user's list, but you might want to start by setting the
 above three DLLs to builtin. I can't fix bugs in native DLLs, but I can
 in Wine's.

 --
 Rob Shearman

I've just tried the installation (with CVS of yesterday on a pretty clean
wine install) and don't see any issues. I didn't check if it's functional
though. I don't have any native dll's btw.

Paul.





Re: JDK

2006-01-10 Thread Uwe Bonnes
 Robert == Robert Shearman [EMAIL PROTECTED] writes:

Robert Curro Amores wrote:
 I get this error when trying to install j2se with wine, i think is

 PE 0x004d-00522000 Deferred rpcrt4 PE 0x0068-0086c000
 Deferred msi PE 0x65f0-65fc2000 Deferred ole32
 

Robert This isn't a user's list, but you might want to start by setting
Robert the above three DLLs to builtin. I can't fix bugs in native
Robert DLLs, but I can in Wine's.

Robert,

as we are on the devel list, can you tell what bug in what native library
you see? 

Thanks

-- 
Uwe Bonnes[EMAIL PROTECTED]

Institut fuer Kernphysik  Schlossgartenstrasse 9  64289 Darmstadt
- Tel. 06151 162516  Fax. 06151 164321 --




Re: JDK

2006-01-10 Thread Robert Shearman

Uwe Bonnes wrote:


Robert == Robert Shearman [EMAIL PROTECTED] writes:
   



   Robert Curro Amores wrote:
I get this error when trying to install j2se with wine, i think is

PE 0x004d-00522000 Deferred rpcrt4 PE 0x0068-0086c000
Deferred msi PE 0x65f0-65fc2000 Deferred ole32



   Robert This isn't a user's list, but you might want to start by setting
   Robert the above three DLLs to builtin. I can't fix bugs in native
   Robert DLLs, but I can in Wine's.

Robert,

as we are on the devel list, can you tell what bug in what native library
you see? 
 



It expects there to be a Win9x shared heap present, but it isn't under 
NT or Wine. It makes invalid assumptions about the environment in which 
it is running.


--
Rob Shearman





Loader Optimization Benchmarks

2006-01-10 Thread Robert Shearman

Hi,

I thought it would be good to post some benchmarks for the patch I just 
sent to wine-patches:

http://www.winehq.org/pipermail/wine-patches/2006-January/023323.html

I tested the loader code using the following in both cases:
   int i;
   DWORD dwTicksAfter;
   DWORD dwTicksBefore = GetTickCount();
   for (i = 0; i  1000; i++)
   LoadLibrary(ole32);
   dwTicksAfter = GetTickCount();
   trace(time taken = %ld ms\n, dwTicksAfter - dwTicksBefore);


Before the patch:
time taken = 658 ms
time taken = 661 ms
time taken = 661 ms
time taken = 658 ms
time taken = 659 ms

After the patch was applied:
time taken = 12 ms
time taken = 12 ms
time taken = 12 ms
time taken = 13 ms
time taken = 12 ms

So it should be obvious that there are some very real gains from using 
this patch in the test case.


You might think that an application loading a DLL 1000 times is very 
unlikely, but bear in mind that the ole32 marshal tests load ole32 76 
times. It is therefore conceivable that something more complex like 
InstallShield could load ole32 over 100 times.


--
Rob Shearman





Re: Loader Optimization

2006-01-10 Thread Alexandre Julliard
Robert Shearman [EMAIL PROTECTED] writes:

 ChangeLog:
 Optimize for the case where a DLL with no path is requested and it is
 already loaded. This change is correct since RtlDosSearchPath_U did not
 change the path being looked at - if libname contains no path then
 file_part will be the same as libname.

Yes, but the current code checks for the full name first and your
patch doesn't, so it will change the behavior if we have two modules
with the same base name. This will need some test cases.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Re: COMCTL32: Invalidate the entire progress bar any time it changes.

2006-01-10 Thread Dmitry Timoshkov

Mike McCormack [EMAIL PROTECTED] wrote:

This is an old patch, but the code that is in comctl32 now is wrong. 
This fixes it, and there's no known regressions.  Unfortunately there's 
no way to fix this efficiently.


Mike


ChangeLog:
Invalidate the entire progress bar any time it changes.
Fixes the progress bar so it paints properly in InstallShield.


My (old) tests show that native comctl32 invalidates the entire progress bar
once it changes, so that change is OK. But it's smart enough to not invalidate
the background if new bar position is larger than an old one, that reduces
the flicker.

--
Dmitry.




Re: Please read: Wine(HQ) needs a reorganization (AppDB, Bugzilla, etc.)

2006-01-10 Thread n0dalus
On 1/10/06, Molle Bestefich [EMAIL PROTECTED] wrote:

 Switch to Trac, for example.  It will import your Bugzilla bugs in a
 snap and you're ready to go.  User friendly and much simpler and much
 more consistent than Bugzilla.
 http://projects.edgewall.com/trac/


Trac looks interesting, but the demo there seems a bit messy.
Unfortunately it uses SQLite, which may not be able to effectively
handle the huge needs of wine's bug tracking. It says they will try
implement support for other sql servers in later versions, but
currently it doesn't.

n0dalus.




Re: daily winetest generation

2006-01-10 Thread Paul Millar
On Monday 09 Jan 2006 21:50, Rolf Kalbermatter wrote:
 Paul Millar wrote:
  The problem above (at the beginning of this year) was with a
  missing GUID in the compiler, which is now fixed.

 Could you tell me what GUID it was.

Certainly, it was IID_IHttpNegotiate2, as defined by:

DEFINE_GUID(IID_IHttpNegotiate2,0x4f9f9fcb,0xe0f4,0x48eb,0xb7,0xab,0xfa,0x2e,0xa9,0x36,0x5c,0
xb4);

 I'm currently in the process of trying 
 to get compilation of DLLs working again with MSVC and the winapi tools and
 noticed a specific issue with GUIDs. Maybe I can learn a bit here.

If it helps any, I've tied together the current set of patches against MinGW's 
w32api.  They are available from here:
 
http://www.astro.gla.ac.uk/users/paulm/Cross/mingw-w32api-patches-2006-01-09.tar.gz

(BTW, Hans maintains RPMs of modified MinGW here:
  http://mirzam.it.vu.nl/mingw/
)

 For instance the GUIDs IID_IAVIStreaming and CLSID_AVIFile used in
 avifil32.dll are put by wine in the uuid.lib/dll file but the two MS SDKs I
 tried do not seem to provide these exports in either uuid.lib nor
 vfw32.lib(avifil32.dll).

Sorry, can't help you with SDKs.  Both are defined in avifil32.def in MinGW's 
w32api v3.3.

HTH,

Paul.



pgpSx7GTHgvPU.pgp
Description: PGP signature



Re: Please read: Wine(HQ) needs a reorganization (AppDB, Bugzilla, etc.)

2006-01-10 Thread n0dalus
On 1/10/06, Molle Bestefich [EMAIL PROTECTED] wrote:

  Unfortunately it uses SQLite, which may not be able to effectively
  handle the huge needs of wine's bug tracking. It says they will try
  implement support for other sql servers in later versions, but
  currently it doesn't.

 Bull...
 There are commercial products out there that handle millions of
 records of data per hour running on SQLite.  I can't quite imagine
 what you're afraid of.


In my experience SQLite has been several times slower than a
well-configured MySQL server when dealing with large record sets,
complex table structures and blob data. Maybe the newer versions of
SQLite have improved on this though.

n0dalus.




test exploit for WMF / SETABORTPROC vulnerability

2006-01-10 Thread Marcus Meissner
Hi,

If someone needs an exploit for the WMF / SETABORTPROC vulnerability
that works under WINE (0.9.5) to verify fixed packages, feel free
to mail me offline.

Ciao, Marcus




Re: Loader Optimization

2006-01-10 Thread Robert Shearman

Alexandre Julliard wrote:


Robert Shearman [EMAIL PROTECTED] writes:

 


ChangeLog:
Optimize for the case where a DLL with no path is requested and it is
already loaded. This change is correct since RtlDosSearchPath_U did not
change the path being looked at - if libname contains no path then
file_part will be the same as libname.
   



Yes, but the current code checks for the full name first and your
patch doesn't, so it will change the behavior if we have two modules
with the same base name. This will need some test cases.



What sort of tests do you want? I don't think I'll be able to come up 
with anything that can be put into the Wine test framework.


--
Rob Shearman





Re: Loader Optimization

2006-01-10 Thread Alexandre Julliard
Robert Shearman [EMAIL PROTECTED] writes:

 What sort of tests do you want? I don't think I'll be able to come up
 with anything that can be put into the Wine test framework.

Agreed, it's probably not possible to put that in the test framework
since it will need native dlls. All we really need is a small test app
that we can run on Windows to determine the proper behavior.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




RFC: implementation of driver functionality in msacm (RESEND)

2006-01-10 Thread Alex Villací­s Lasso

(resent because previous attempt never appeared in wine-devel)

This patch is the preliminary result of some work I have been doing in 
order to add missing functionality to builtin msacm32.dll. I am 
submitting this to wine-devel rather than wine-patches, and in one big 
patch rather than several because I would like comments on some choices 
I made while adding features. The following is the list of features 
added by the patch:


* Implementation of acmDriverAddW(), and delegation of acmDriverAddA() 
to acmDriverAddW()
* Working implementation of modes of operation of acmDriverAdd[AW]: add 
driver by new registry entry (ACM_DRIVERADDF_NAME), add (local) driver 
by combination of hModule/acmDriverProc (ACM_DRIVERADDF_FUNCTION), add 
notification window for event broadcasts (ACM_DRIVERADDF_NOTIFYHWND)
* Implementation of broadcasts to notification windows on driver 
add/remove, enabling/disabling, and priority changes
* Fix for implementation quirks of acmDriverMessage() in order to allow 
native codecs to display configuration dialogs
* Working implementation of acmDriverPriority(), with support of delayed 
notification broadcasts (for one process only). Includes saving new 
priorities and enabled status to registry

* Loading of codec priorities and enabled status from registry
* Support for ACM_METRIC_DRIVER_SUPPORT in acmMetrics()

I must note that in order to provide support for acmDriverAddW() in 
ACM_DRIVERADDF_FUNCTION mode, it is necessary to treat an 
application-supplied module with an application-supplied driverProc as a 
full-blown winmm driver. Therefore, the patch includes a new procedure 
in winmm called wineAddDriver(), that instructs winmm to build a hDrvr 
from a supplied hModule/driverProc pair, rather than loading both from a 
DLL, as OpenDriver() does. This allows the rest of the code to continue 
using SendDriverMessage() as usual.


Alex Villacís Lasso


wine-msacm-acmDriver.patch.gz
Description: GNU Zip compressed data



Re: ntdll/tests: Load test on win95 again

2006-01-10 Thread Alexandre Julliard
Detlef Riekenberg [EMAIL PROTECTED] writes:

 Changelog:

 - ntdll/tests: Load test on win95 again
  (kernel32,CreateWaitableTimerA not present)

A better fix would be to avoid the call completely, the ntdll tests
shouldn't need to use kernel32 functions.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Re: RESEND: winecfg: Added Use PRIMARY selection option

2006-01-10 Thread Alexandre Julliard
Phil Krylov [EMAIL PROTECTED] writes:

 ChangeLog:

 Added support for Use PRIMARY selection clipboard option.

I don't think we want a new property sheet page for that, it should go
with the other X11 options.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




static COM VTables?

2006-01-10 Thread Stefan Dösinger
Hello,
I just read the constify data todo, and I thought it would be good to make 
the VTables in my ddraw implementation const. The old ddraw implementation 
also declares them static. Is there any advantage in it?

My C book just says that they can only be referenced from the local module, 
which is correct. But are there any other effects?

Stefan


pgprHxSotinLc.pgp
Description: PGP signature



Re: Winelib debugging with eclipse in fc4

2006-01-10 Thread Michael Ost
On Sat, 2006-01-07 at 18:04 +0100, Eric Pouech wrote:
 you could (not tested) alternatively:
 - set winegdb --gdb as the name for executing gdb
 - not reset the AeDebug key
 - set the executable to be the real exec (+ .so extension if run from 
 the build tree)
 that should work also
 you would this way:
 - keep all the preloader stuff, so that your memory layout is better 
 (and the same than when run from command line)
 - still be compatible with the segfault stuff

I'll try that and let you know what I find once my development tree gets
usable again. It's pretty hacked up right now. Thanks ... mo





Re: static COM VTables?

2006-01-10 Thread Robert Shearman

Stefan Dösinger wrote:


Hello,
I just read the constify data todo, and I thought it would be good to make 
the VTables in my ddraw implementation const. The old ddraw implementation 
also declares them static. Is there any advantage in it?


My C book just says that they can only be referenced from the local module, 
which is correct. But are there any other effects?
 



No, that is the only direct effect. However, as it can only be 
referenced from the one module then the compiler will warn if it is not 
used, leading to less dead code. Also, it doesn't put a symbol in the 
ELF name table, which means loading the DLL will be slightly faster.


--
Rob Shearman





Re: Please read: Wine(HQ) needs a reorganization (AppDB, Bugzilla, etc.)

2006-01-10 Thread Lionel Ulmer
On Mon, Jan 09, 2006 at 08:42:06PM -0800, Scott Ritchie wrote:
 Forums are absolutely a good idea. (...)
 The reason is the same reason I post to these forums - they're
 far more usable, well-sorted, and accessable than a mailing list.

The problem is that (AFAIK) most if not all Wine developpers do not share at
all this view (at last for me nothing beats either a mailing list or a
newsgroups :-) ).

So you will have a nice forum full of Wine questions and no developpers who
read them to answer the posts because no-one will care actually reading the
forum.

I may be wrong though thinking that all other Wine developpers are
'dinosaurs' like me :-)

   Lionel

-- 
 Lionel Ulmer - http://www.bbrox.org/




Re: Starter projects for new Wine contributors?

2006-01-10 Thread Detlef Riekenberg
Am Montag, den 09.01.2006, 21:02 -0500 schrieb Al Tobey:

  I'm looking for suggestions for starter projects for
  new contributors that would take something like a week to do,
  and wouldn't require much knowledge of Wine ahead of time.

 Tests!

Another way is: Fixing Tests, that currently fail on Windows.
Test-Results: http://test.winehq.org/data 
Binaries: http://www.astro.gla.ac.uk/users/paulm/WRT/CrossBuilt/

The MinGW Cross-Compiler is used to build the Binaries 

I'm building native Windows-EXE using the Cross-Compiler-Packages from
Hans ( http://mirzam.it.vu.nl/mingw/ )

A recent Example was the failure of ntdll.dll:exception on Win95-WinME
- Run the Test on Windows to find the Problem 
- Fix the Problem 
- Build and run the Wine-Test: make -C dlls/ntdll/tests/ test
- Build the Windows Test: make -C dlls/ntdll/tests/ crosstest
- Run ntdll_crosstest.exe on all available Windows-Versions
  (I'm using qemu for this)
- Create the useful_name.diff
- Mail the Patch to wine-patches
- Wait for Commit



 http://www.winehq.org/site/docs/winedev-guide/testing


-- 
By By ...
  ... Detlef





Re: RFC: implementation of driver functionality in msacm (RESEND)

2006-01-10 Thread Eric Pouech

Alex Villací­s Lasso wrote:

(resent because previous attempt never appeared in wine-devel)

This patch is the preliminary result of some work I have been doing in 
order to add missing functionality to builtin msacm32.dll. I am 
submitting this to wine-devel rather than wine-patches, and in one big 
patch rather than several because I would like comments on some choices 
I made while adding features. 

Even for review it's easier by small chunks...
The following is the list of features 
added by the patch:


* Implementation of acmDriverAddW(), and delegation of acmDriverAddA() 
to acmDriverAddW()
- you shouldn't compute the length of the necessary unicode buffer with 
strlen * sizeof(WCHAR). See rest of the code for good example
- when you free lParamW, lParamW can be another non null value (a window 
handle for example) and you shouldn't free it
* Working implementation of modes of operation of acmDriverAdd[AW]: add 
driver by new registry entry (ACM_DRIVERADDF_NAME), add (local) driver 
by combination of hModule/acmDriverProc (ACM_DRIVERADDF_FUNCTION), add 
notification window for event broadcasts (ACM_DRIVERADDF_NOTIFYHWND)
- I wonder if we should really (internally) register the nofication 
windows the same ways as the other drivers... this is only used for 
notification (one way). I'd rather use a separate internal type
* Implementation of broadcasts to notification windows on driver 
add/remove, enabling/disabling, and priority changes
- MSDN seems to state that differed notification is actually a counter, 
not a simple boolean (whereas enable/disable is a boolean)
* Fix for implementation quirks of acmDriverMessage() in order to allow 
native codecs to display configuration dialogs
this seems rather hackish. did you actually tested this on Windows ? 
Moreover, the size bits look especially suspicious. Where did you get 
the 16 value from ?
* Working implementation of acmDriverPriority(), with support of delayed 
notification broadcasts (for one process only). Includes saving new 
priorities and enabled status to registry

* Loading of codec priorities and enabled status from registry
* Support for ACM_METRIC_DRIVER_SUPPORT in acmMetrics()

I must note that in order to provide support for acmDriverAddW() in 
ACM_DRIVERADDF_FUNCTION mode, it is necessary to treat an 
application-supplied module with an application-supplied driverProc as a 
full-blown winmm driver. Therefore, the patch includes a new procedure 
in winmm called wineAddDriver(), that instructs winmm to build a hDrvr 
from a supplied hModule/driverProc pair, rather than loading both from a 
DLL, as OpenDriver() does. This allows the rest of the code to continue 
using SendDriverMessage() as usual.
this shouldn't be done that way, but rather by reimplementing 
senddrivermessage in msacm32


A+

--
Eric Pouech





Re: RFC: implementation of driver functionality in msacm (RESEND)

2006-01-10 Thread Alex Villací­s Lasso

Eric Pouech wrote:

* Implementation of broadcasts to notification windows on driver 
add/remove, enabling/disabling, and priority changes


- MSDN seems to state that differed notification is actually a 
counter, not a simple boolean (whereas enable/disable is a boolean)


I have just read the MSDN web page, and I see no remark that suggests 
that deferred notification should behave as a counter instead of a 
simple on/off flag. Or maybe I am reading the page incorrectly...


* Fix for implementation quirks of acmDriverMessage() in order to 
allow native codecs to display configuration dialogs


this seems rather hackish. did you actually tested this on Windows ? 
Moreover, the size bits look especially suspicious. Where did you get 
the 16 value from ?


I tested the native msacm32.dll from Windows 98 SE on Wine, and it 
reported a 16-byte struct size to the winemp3 codec. Since the goal was 
to allow native codecs no reason at all for not displaying the 
configuration dialog, I decided to use that size, even when the 
structure size in Wine is only 12 bytes.


* Working implementation of acmDriverPriority(), with support of 
delayed notification broadcasts (for one process only). Includes 
saving new priorities and enabled status to registry

* Loading of codec priorities and enabled status from registry
* Support for ACM_METRIC_DRIVER_SUPPORT in acmMetrics()

I must note that in order to provide support for acmDriverAddW() in 
ACM_DRIVERADDF_FUNCTION mode, it is necessary to treat an 
application-supplied module with an application-supplied driverProc 
as a full-blown winmm driver. Therefore, the patch includes a new 
procedure in winmm called wineAddDriver(), that instructs winmm to 
build a hDrvr from a supplied hModule/driverProc pair, rather than 
loading both from a DLL, as OpenDriver() does. This allows the rest 
of the code to continue using SendDriverMessage() as usual.


this shouldn't be done that way, but rather by reimplementing 
senddrivermessage in msacm32


That was the very thing I didn't want to do. So, while we are at it, 
should it be reimplemented for all codecs, or just the ones supplied by 
the application? Native msacm32 seems to relay to winmm for registered 
codecs, since I can see calls to SendDriverMessage().


Alex Villacís Lasso





Re: WineDbg: Implemented harware assisted breakpoints.

2006-01-10 Thread Eric Pouech

Eric Pouech wrote:
one can now set a hardware breakpoint in winedbg (it will not insert an 
INT 3 command in the code, but rather use the x86 debug registers).

handy for debugging trashed code for example

all the syntaxic forms of the 'break' command can be used for this new 
hbreak command.

(only works on x86 for now)

ChangeLog:
Implemented harware assisted breakpoints


merci de ne pas appliquer tel quel. J'ai une nouvelle version moins buggée.
A+
--
Eric Pouech





Re: RESEND: winecfg: Added Use PRIMARY selection option

2006-01-10 Thread Phil Krylov
On Tue, 10 Jan 2006 20:23:20 +0100
Alexandre Julliard [EMAIL PROTECTED] wrote:

 Phil Krylov [EMAIL PROTECTED] writes:
 
  ChangeLog:
 
  Added support for Use PRIMARY selection clipboard option.
 
 I don't think we want a new property sheet page for that, it should go
 with the other X11 options.

Initially I did it that way, but: 

1) The X11 option page is named Graphics, and clipboard is not
graphics ;)

2) There's no free space on the Graphics page. Should I make it (and the
whole winecfg window) larger?

-- Ph.




Re: RFC: implementation of driver functionality in msacm (RESEND)

2006-01-10 Thread Alex Villací­s Lasso

Eric Pouech wrote:


Alex Villací­s Lasso wrote:


Eric Pouech wrote:

* Implementation of broadcasts to notification windows on driver 
add/remove, enabling/disabling, and priority changes




- MSDN seems to state that differed notification is actually a 
counter, not a simple boolean (whereas enable/disable is a boolean)




I have just read the MSDN web page, and I see no remark that suggests 
that deferred notification should behave as a counter instead of a 
simple on/off flag. Or maybe I am reading the page incorrectly...


well...
ACM_DRIVERPRIORITYF_END Calling task wants to reenable change 
notification broadcasts. An application must call acmDriverPriority 
with ACM_DRIVERPRIORITYF_END for each successful call with the 
ACM_DRIVERPRIORITYF_BEGIN flag. Note that hadid must be NULL, 
dwPriority must be zero, and only the ACM_DRIVERPRIORITYF_END flag can 
be set.



... then I need new glasses :-)



* Fix for implementation quirks of acmDriverMessage() in order to 
allow native codecs to display configuration dialogs




this seems rather hackish. did you actually tested this on Windows ? 
Moreover, the size bits look especially suspicious. Where did you 
get the 16 value from ?




I tested the native msacm32.dll from Windows 98 SE on Wine, and it 
reported a 16-byte struct size to the winemp3 codec. 


how do you know it's a 16 byte struct? there's nothing in the passed 
information that tells you it's 16 bytes AFAICS


Yes, there is:
(begin MSDN quote)


 DRV_CONFIGURE

Directs the installable driver to display its configuration dialog box 
and let the user specify new settings for the given installable driver 
instance.


*Parameters*

/dwDriverId/

Identifier of the installable driver. This is the same value previously 
returned by the driver from the *DRV_OPEN* 
http://msdn.microsoft.com/library/en-us/multimed/htm/_win32_drv_open.asp 
message.


/hdrvr/

Handle of the installable driver instance.

/lParam1/

Handle of the parent window. This window is used as the parent window 
for the configuration dialog box.


/lParam2/

Address of a *DRVCONFIGINFO* 
http://msdn.microsoft.com/library/en-us/multimed/htm/_win32_drvconfiginfo_str.asp 
structure or NULL. If the structure is given, it contains the names of 
the registry key and value associated with the driver.



 DRVCONFIGINFO

Contains the registry key and value names associated with the 
installable driver.


|typedef struct tagDRVCONFIGINFO {
   DWORD dwDCISize; 
   LPCWSTR lpszDCISectionName; 
   LPCWSTR lpszDCIAliasName; 
} DRVCONFIGINFO;

|

*Members*

*dwDCISize*

Size of the structure, in bytes.

*lpszDCISectionName*

Address of a null-terminated, wide-character string specifying the name 
of the registry key associated with the driver.


*lpszDCIAliasName*

Address of a null-terminated, wide-character string specifying the name 
of the registry value associated with the driver.


(end MSDN quote)

I examined the DRVCONFIGINFO structure prepared by native msacm32.dll to 
codecs, in particular the dwDCISize field. Even when the sum of all 
fields in the structure declaration yields 12 bytes, dwDCISize holds a 
value of 16 when supplied by native msacm32.dll. So, I used the same 
value in order to mimic native as close as possible.


Alex Villacís Lasso





Re: RESEND: winecfg: Added Use PRIMARY selection option

2006-01-10 Thread Alexandre Julliard
Phil Krylov [EMAIL PROTECTED] writes:

 Initially I did it that way, but: 

 1) The X11 option page is named Graphics, and clipboard is not
 graphics ;)

DXGrab is not really graphics either... maybe the page should be named
windowing or something along those lines.

 2) There's no free space on the Graphics page. Should I make it (and the
 whole winecfg window) larger?

There's a lot of text in there that could be moved somewhere else,
like a tooltip or an online help. Also the screen depth option should
probably be removed, it's quite useless.

-- 
Alexandre Julliard
[EMAIL PROTECTED]




Mozilla ActiveX Control -- Browser not in a valid state

2006-01-10 Thread Phil Lodwick
Hi,

I have a Borland C++ Builder app that is a simple FORM with a TCppWebBrowser
and a button.  I have two callbacks, one when the form is created, and one
when the user pushes the button.  Both callbacks just navigate to google.


__fastcall TForm1::TForm1(TComponent* Owner)
   : TForm(Owner)
{
CppWebBrowser1-Navigate(WideString(http://www.google.com;));
}

void __fastcall TForm1::DoIt1Click(TObject *Sender)
{
   CppWebBrowser1-Navigate(WideString(http://www.google.com;));
}


On Windows this works as expected.  When the form is displayed, google is
displayed in the browser.  Whenever you push the button the browser is
reloaded.

On Wine with the Mozilla ActiveX Control v1.7.12, when the form is first
loaded nothing is displayed.  WINEDEBUG=+ole shows Browser is not in a valid
state.

Pushing the button subsequent times reloads the web site as expected.

Before I start digging deeper, I was hoping somebody might have some insight
to lead me down the correct path.

Thanks!
Phil




Re: ntdll/tests: Load test on win95 again

2006-01-10 Thread Detlef Riekenberg
Am Dienstag, den 10.01.2006, 20:14 +0100 schrieb Alexandre Julliard:

  - ntdll/tests: Load test on win95 again
   (kernel32,CreateWaitableTimerA not present)
 
 A better fix would be to avoid the call completely, the ntdll tests
 shouldn't need to use kernel32 functions.


I asked the Author of this Tests (Vitaliy) for Help:
--- cut ---
winspool: ntdll_test.exe does not load on win95 and NT3.51, because
  CreateWaitableTimerA does not exist
vitamin: ok, when you fixed them did you ran them on win9x?
winspool: with my Patch, the tests load and some tests work on win9x
  (generated, and a little more)
vitamin: ;-)
vitamin: useless anyway
winspool:is it possible to move the affected Tests somewhere in
  kernel32/tests/
vitamin: no,
vitamin: those tests _have to be there_
vitamin: That's what it tests (OM)
--- cut ---

Removing the kernel32-functions out of ntdll_tests.exe will result in
moving nearly the complete OM-test to kernel32/tests, but the OM is
located in ntdll. This does not match.
Any Hints?


Since NT3.51 and Win95 are unable to load the current ntdll_test.exe,
are we in the Situation to drop WRT-Support for NT3.x and Win95?


While trying to run winetest-latest.exe, i found several failing Tests
(no counter or failed on the WRT-Result-Page).
I picked this one as a start.

-- 
By By ...
  ... Detlef





Need help to fix a failing test

2006-01-10 Thread Kai Blin
Hi folks,

As far as I can see, secur32 tests are failing on all windows platforms
right now. (http://test.winehq.org/data/200601101000/)

Now, this seems to be due to the following:
main.c:475: Test failed: cbMaxToken for NTLM is 1904, not 12000.

I'm pretty sure that I got the 12000 from my win2k system when I
compiled the test code there using the platform sdk that was current
this july. Now, I have no clue where the 1904 comes from, but if windows
really uses a cbMaxToken of 1904, I need to fix that in my code (I
couldn't use the 12000 I thought I had to implement before due to
implementation restrictions. I can easily work with 1904, if those are
correct.) 

Still, I'm sure I didn't pull the 12000 out of my sleeve. Could I ask
someone who runs msvc and a platform sdk to build the secur32 tests, run
them on any windows box and send the results to me?

Thanks in advance,
Kai

-- 
Kai Blin, (blin at gmx dot net)
Are you mentally here at Pizza Hut??




RFC: implementation of driver functionality in msacm

2006-01-10 Thread Alex Villací­s Lasso
This patch is the preliminary result of some work I have been doing in 
order to add missing functionality to builtin msacm32.dll. I am 
submitting this to wine-devel rather than wine-patches, and in one big 
patch rather than several because I would like comments on some choices 
I made while adding features. The following is the list of features 
added by the patch:


* Implementation of acmDriverAddW(), and delegation of acmDriverAddA() 
to acmDriverAddW()
* Working implementation of modes of operation of acmDriverAdd[AW]: add 
driver by new registry entry (ACM_DRIVERADDF_NAME), add (local) driver 
by combination of hModule/acmDriverProc (ACM_DRIVERADDF_FUNCTION), add 
notification window for event broadcasts (ACM_DRIVERADDF_NOTIFYHWND)
* Implementation of broadcasts to notification windows on driver 
add/remove, enabling/disabling, and priority changes
* Fix for implementation quirks of acmDriverMessage() in order to allow 
native codecs to display configuration dialogs
* Working implementation of acmDriverPriority(), with support of delayed 
notification broadcasts (for one process only). Includes saving new 
priorities and enabled status to registry

* Loading of codec priorities and enabled status from registry
* Support for ACM_METRIC_DRIVER_SUPPORT in acmMetrics()

I must note that in order to provide support for acmDriverAddW() in 
ACM_DRIVERADDF_FUNCTION mode, it is necessary to treat an 
application-supplied module with an application-supplied driverProc as a 
full-blown winmm driver. Therefore, the patch includes a new procedure 
in winmm called wineAddDriver(), that instructs winmm to build a hDrvr 
from a supplied hModule/driverProc pair, rather than loading both from a 
DLL, as OpenDriver() does. This allows the rest of the code to continue 
using SendDriverMessage() as usual.


Alex Villacís Lasso

diff -ur wine-0.9.5-cvs/dlls/msacm/driver.c wine-0.9.5-cvs-patch/dlls/msacm/driver.c
--- wine-0.9.5-cvs/dlls/msacm/driver.c	2005-12-20 10:17:52.0 -0500
+++ wine-0.9.5-cvs-patch/dlls/msacm/driver.c	2006-01-09 21:59:49.0 -0500
@@ -40,6 +40,7 @@
 #include msacmdrv.h
 #include wineacm.h
 #include wine/debug.h
+#include wine/unicode.h
 
 WINE_DEFAULT_DEBUG_CHANNEL(msacm);
 
@@ -49,6 +50,10 @@
 MMRESULT WINAPI acmDriverAddA(PHACMDRIVERID phadid, HINSTANCE hinstModule,
 			  LPARAM lParam, DWORD dwPriority, DWORD fdwAdd)
 {
+MMRESULT resultW;
+WCHAR * driverW = NULL;
+LPARAM lParamW = lParam;
+
 TRACE((%p, %p, %08lx, %08lx, %08lx)\n,
   phadid, hinstModule, lParam, dwPriority, fdwAdd);
 
@@ -72,30 +77,100 @@
 	return MMSYSERR_INVALFLAG;
 }
 
-/* FIXME: in fact, should GetModuleFileName(hinstModule) and do a
- * LoadDriver on it, to be sure we can call SendDriverMessage on the
- * hDrvr handle.
- */
-*phadid = (HACMDRIVERID) MSACM_RegisterDriver(NULL, NULL, hinstModule);
-
-/* FIXME: lParam, dwPriority and fdwAdd ignored */
+/* A-W translation of name */
+if ((fdwAdd  ACM_DRIVERADDF_TYPEMASK) == ACM_DRIVERADDF_NAME) {
+unsigned long len = strlen((LPSTR)lParam) + 1;
+driverW = HeapAlloc(MSACM_hHeap, 0, len * sizeof(WCHAR));
+if (!driverW) return MMSYSERR_NOMEM;
+MultiByteToWideChar(CP_ACP, 0, (LPSTR)lParam, -1, driverW, len);
+lParamW = (LPARAM)driverW;
+}
 
-return MMSYSERR_NOERROR;
-}
+resultW = acmDriverAddW(phadid, hinstModule, lParamW, dwPriority, fdwAdd);
+if ((WCHAR *)lParamW != NULL) HeapFree(MSACM_hHeap, 0, driverW);
+return resultW;
+}			  
 
 /***
  *   acmDriverAddW (MSACM32.@)
- * FIXME
- *   Not implemented
+ *
  */
 MMRESULT WINAPI acmDriverAddW(PHACMDRIVERID phadid, HINSTANCE hinstModule,
 			  LPARAM lParam, DWORD dwPriority, DWORD fdwAdd)
 {
-FIXME((%p, %p, %ld, %ld, %ld): stub\n,
-	  phadid, hinstModule, lParam, dwPriority, fdwAdd);
+TRACE((%p, %p, %08lx, %08lx, %08lx)\n,
+  phadid, hinstModule, lParam, dwPriority, fdwAdd);
+
+if (!phadid) {
+WARN(invalid parameter\n);
+	return MMSYSERR_INVALPARAM;
+}
+
+/* Check if any unknown flags */
+if (fdwAdd 
+	~(ACM_DRIVERADDF_FUNCTION|ACM_DRIVERADDF_NOTIFYHWND|
+	  ACM_DRIVERADDF_GLOBAL)) {
+WARN(invalid flag\n);
+	return MMSYSERR_INVALFLAG;
+}
 
-SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
-return MMSYSERR_ERROR;
+/* Check if any incompatible flags */
+if ((fdwAdd  ACM_DRIVERADDF_FUNCTION) 
+	(fdwAdd  ACM_DRIVERADDF_NOTIFYHWND)) {
+WARN(invalid flag\n);
+	return MMSYSERR_INVALFLAG;
+}
+
+switch (fdwAdd  ACM_DRIVERADDF_TYPEMASK) {
+case ACM_DRIVERADDF_NAME:
+/*
+hInstModule (unused)
+lParam  name of value in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Drivers32
+dwPriority  (unused, set to 0)
+ */
+*phadid = (HACMDRIVERID) 

Re: ntdll/tests: Load test on win95 again

2006-01-10 Thread Vitaliy Margolen
Tuesday, January 10, 2006, 4:00:51 PM, Detlef Riekenberg wrote:
 Am Dienstag, den 10.01.2006, 20:14 +0100 schrieb Alexandre Julliard:

  - ntdll/tests: Load test on win95 again
   (kernel32,CreateWaitableTimerA not present)
 
 A better fix would be to avoid the call completely, the ntdll tests
 shouldn't need to use kernel32 functions.

[snip]

 Removing the kernel32-functions out of ntdll_tests.exe will result in
 moving nearly the complete OM-test to kernel32/tests, but the OM is
 located in ntdll. This does not match.

Those tests cover kernel32.dll, ntdll and OM in the wineserver. So I've
put them in the middle g. They could be moved to kernel, but then it
will import same number of ntdll functions. So I don't really see a
reason to move them around. But rather keep all the object manager
specific tests in the one place

 Since NT3.51 and Win95 are unable to load the current ntdll_test.exe,
 are we in the Situation to drop WRT-Support for NT3.x and Win95?

Why? ntdll tests just won't load. But everything else will work. I'm not
really sure how usefull those results will be anyway.

Vitaliy








Regression caused by ntdll: Check file size when mapping image sections to avoid SIGBUS errors.

2006-01-10 Thread Troy Rollo
On Wed, 4 Jan 2006 08:21, Alexandre Julliard wrote:
 Module: wine
 Branch: refs/heads/master
 Commit: 67f2a36ce3725a52b79ed618964244cc96ae

...
  status = STATUS_INVALID_IMAGE_FORMAT;  /* generic error */
 +if (header_size  st.st_size) goto error;
  if (map_file_into_view( view, fd, 0, header_size, 0, VPROT_COMMITTED |
...

This change prevents Wine from loading Win32 executables that are less than 
64K long. header_size is 65536, but st.st_size is less than that.
-- 
Troy Rollo - [EMAIL PROTECTED]




Re: PATCH/RFC: defer OLE apartment window creation

2006-01-10 Thread Robert Shearman

Marcus Meissner wrote:


On Wed, Dec 21, 2005 at 02:55:14AM +, Robert Shearman wrote:
 


Marcus Meissner wrote:

   


@@ -257,6 +254,15 @@
  return apt;
}

+void make_apartment_window(APARTMENT *apt) {
+if (apt-win) return;
+if (!(apt-model  COINIT_APARTMENTTHREADED))
+return;
+apt-win = CreateWindowW(wszAptWinClass, NULL, 0,
+ 0, 0, 0, 0,
+ 0, 0, OLE32_hInstance, NULL);
+}
+

 

This isn't thread-safe. It would also be better to make this an accessor 
function for the win field of struct apartment and fix up all callers to 
use this. I still have to verify on Windows whether this is what it does 
or whether it does something funny with message loops.
   



I lack the time and testing abilities to do this right now (and now
on xmas break).

Its just a quick hack to get Google Earth running.



Can you update to latest CVS and confirm that this issue is fixed now?

--
Rob Shearman





Re: advpack: Implement ExtractFiles

2006-01-10 Thread Mike McCormack


James Hawkins wrote:


What is the policy about attaching changes to tests that pass because
of a patch sent in?  Should I also diff the tests?


There's a higher level policy of all changes should be atomic, which 
requires Wine to be in a working state before and after each change, so 
yes, you should update tests that pass with the patch that makes them pass.


If you're adding new tests, it makes sense to send them in a seperate 
patch after the patch that implements functionality to make the new 
tests pass.


Mike