WINEDEBUG=warn+heap make test crashes in dsound?

2011-09-02 Thread Dan Kegel
Hi Michael,
is this up your alley?  You've been looking at dsound recently, iirc.
- Dan

export WINEDEBUG=warn+heap
../../../tools/runtest -q -P wine -M dsound.dll -T ../../.. -p
dsound_test.exe.so ds3d.c && touch ds3d.ok
ALSA lib pcm_pulse.c:1008:(_snd_pcm_pulse_open) Unknown field handle_underrun
...
ds3d.c:467: Test failed: buffer size changed after SetFormat() -
previous size was 88200, current size is 22052
fixme:dsound3d:IDirectSound3DListenerImpl_QueryInterface Unknown IID
{31efac30-515c-11d0-a9aa-00aa0061be93}
wine: Unhandled page fault on read access to 0xfeef021a at address
0x68d6775f (thread 002c), starting debugger...
Backtrace:
=>0 0x68d6775f IDirectSound3DListenerImpl_Release+0xe9(iface=0x1d5170)
[/home/dank/wine-git/dlls/dsound/sound3d.c:791] in dsound (0x0033f768)
  1 0x684bce32 test_primary_3d_with_listener+0x677(lpGuid=(nil))
[/home/dank/wine-git/dlls/dsound/tests/ds3d.c:1228] in dsound_test
(0x0033f868)
  2 0x684bd181 dsenum_callback+0x183(lpGuid=(nil),
lpcstrDescription="Primary Sound Driver", lpcstrModule="",
lpContext=0x0(nil))
[/home/dank/wine-git/dlls/dsound/tests/ds3d.c:1283] in dsound_test
(0x0033f8a8)
  3 0x68d558e4 a_to_w_callback+0xe0(guid=(nil), descW="Primary Sound
Driver", modW="", data=0x33fc80)
[/home/dank/wine-git/dlls/dsound/dsound_main.c:291] in dsound
(0x0033f938)
  4 0x68d55c3b DirectSoundEnumerateW+0x2ab(lpDSEnumCallback=0x68d55803,
lpContext=0x33fc80)
[/home/dank/wine-git/dlls/dsound/dsound_main.c:370] in dsound
(0x0033fc68)
  5 0x68d55985 DirectSoundEnumerateA+0x88(lpDSEnumCallback=0x684bcffd,
lpContext=0x0(nil))
[/home/dank/wine-git/dlls/dsound/dsound_main.c:321] in dsound
(0x0033fc98)
  6 0x684bd50d ds3d_tests+0x2a()
[/home/dank/wine-git/dlls/dsound/tests/ds3d.c:1307] in dsound_test
(0x0033fcc8)
  7 0x684bd5cd func_ds3d+0x7b()
[/home/dank/wine-git/dlls/dsound/tests/ds3d.c:1326] in dsound_test
(0x0033fcf8)
  8 0x684d04d3 run_test+0x9e(name="ds3d.c")
[/home/dank/wine-git/dlls/dsound/tests/../../../include/wine/test.h:556]
in dsound_test (0x0033fd58)




[patch] Fake display interface

2011-09-02 Thread Jari Vetoniemi
Yeah, I'm aware of virtual desktop and used to create scripts to
launch applications using wine explorer \desktop=WIDTHxHEIGHT or
whatever the parameters were, it works well. But means that you have
to create always new shell script, and it also can prevent desktop
integration for certain application. If you globally enable that also,
it means that every application opens on the same virtual desktop.
Also virtual desktop won't fake the display resolutions to application
which is useful in certain cases.

2011/9/2 Hin-Tak Leung :
> --- On Fri, 2/9/11, Jari Vetoniemi  wrote:
>
>> Hello,
>>
>> I personally hate when applications decide to change my
>> screen
>> resolution without asking me, or some applications just
>> won't run
>> inside window.
>> So I did fake display interface for the winex11.drv. It
>> allows you to
>> send any display resolution and frequency to the
>> application, but it
>> does not change resolution.
>> It's small and simple patch, and won't probably ever be
>> included into
>> the mainline wine. However I'll post it here as it might be
>> useful for
>> some.
>>
>> To enable, create string key UseFakeDisp with value Y in
>> H_C_U/Software/Wine/X11 Driver
>> Default fake resolution is 800x600 60HZ, you can change
>> default with
>> registry keys FakeDispHeight, FakeDispWidth, FakeDispFreq
>> You can also use env variable
>> WINE_FAKEDISP=WIDTHxHEIGHT_FREQ (eg.
>> WINE_FAKEDISP=1024x768_60)
>>
>> Might improve it later to use the same syntax for default
>> resolution
>> and allow multiple fake resolutions to be defined with ;
>> separator.
>> This is also useful for dual head setups where you may want
>> to run
>> game or application fullscreen on other monitor while still
>> keeping
>> the other alive.
>> There is also interesting side effect: While some
>> applications throw
>> error or won't run on resolutions they don't support, some
>> applications that don't support them still run with the
>> resolution
>> specified. Eg. I can run Ys games with 1440x900 resolution
>> where they
>> normally would not run, and they look great.
>
> In winecfg there is a way of configuring wine to run under its own desktop 
> window (and having any window application's windows running inside that), 
> instead of having the unix host's window manager managing the window 
> application's window. Have you tried using that? Granted it is a bit awkward 
> for what you want to do (having to go into winecfg to change the desktop's 
> resolution and resetting it afterwards, instead of passing the resolution in 
> per application), but may be improving on that functionality in winecfg could 
> get your code included eventually somehow.
>




[patch] Fake display interface

2011-09-02 Thread Jari Vetoniemi
Hello,

I personally hate when applications decide to change my screen
resolution without asking me, or some applications just won't run
inside window.
So I did fake display interface for the winex11.drv. It allows you to
send any display resolution and frequency to the application, but it
does not change resolution.
It's small and simple patch, and won't probably ever be included into
the mainline wine. However I'll post it here as it might be useful for
some.

To enable, create string key UseFakeDisp with value Y in
H_C_U/Software/Wine/X11 Driver
Default fake resolution is 800x600 60HZ, you can change default with
registry keys FakeDispHeight, FakeDispWidth, FakeDispFreq
You can also use env variable WINE_FAKEDISP=WIDTHxHEIGHT_FREQ (eg.
WINE_FAKEDISP=1024x768_60)

Might improve it later to use the same syntax for default resolution
and allow multiple fake resolutions to be defined with ; separator.
This is also useful for dual head setups where you may want to run
game or application fullscreen on other monitor while still keeping
the other alive.
There is also interesting side effect: While some applications throw
error or won't run on resolutions they don't support, some
applications that don't support them still run with the resolution
specified. Eg. I can run Ys games with 1440x900 resolution where they
normally would not run, and they look great.

Cheers.


fakedisp_driver.patch
Description: Binary data



Re: [PATCH] server: if a debugger is attached to a process, the DEBUG_ONLY_THIS_PROCESS should get set

2011-09-02 Thread Alexandre Julliard
Bernhard Loos  writes:

> @@ -825,6 +825,9 @@ int set_process_debug_flag( struct process *process, int 
> flag )
>  {
>  char data = (flag != 0);
>  
> +process->create_flags = (process->create_flags & ~(DEBUG_PROCESS | 
> DEBUG_ONLY_THIS_PROCESS))
> +| flag;
> +

I don't think this belongs in set_process_debug_flag, that's a different
flag. Also I don't see what DEBUG_PROCESS is here for.

-- 
Alexandre Julliard
julli...@winehq.org




ubuntu ppa -- nice to have on development version too

2011-09-02 Thread Susan Cragin
There was discussion about putting a daily wine build on the ubuntu ppa. 
I'd like to put in a word for having it on the development version (currently 
oneiric) as well as the stable version (natty). 
Right now wine only seems to have a natty ppa. 








Re: 78256: Subject: [PATCH 1/5] wined3d: Print a FIXME for any flags passed to wined3d_surface_flip().

2011-09-02 Thread Dan Kegel
On Thu, Sep 1, 2011 at 1:01 PM, Henri Verbeet  wrote:
> On 1 September 2011 21:02, Henri Verbeet  wrote:
>> I have some doubts about this being caused by this patch.
>>
> That said, you may want to give 78289 a try.

I plopped it into the buildbot, and since then no tests have failed.

I hope it's the first thing Alexandre commits today.
- Dan




Re: po: Fix some typography issues in the Czech translation.

2011-09-02 Thread Francois Gouget
On Thu, 1 Sep 2011, Octavian Voicu wrote:
[...]
> The patch uses dos line endings, that's why it doesn't apply.

I don't know what happened because the email was generated the same way 
as all the other emails for PO file patches. There's something in the 
Czech language that causes both alpine and icedove to mangle the 
patches. And it appears to not just be the carriage returns, the 
encoding seems to be broken too.

I have manually resent the patch as a .bin attachement. The email tool 
considers that to be a binary file and it seems to prevent it and others 
in the chain from messing with it.

-- 
Francois Gouget   http://fgouget.free.fr/
  Hell is empty and all the devils are here.
   -- Wm. Shakespeare, "The Tempest"




Re: 78262: Subject: [2/6] dinput: Added enumerated devices to ConfigureDevices dialog (try 3)

2011-09-02 Thread Dan Kegel
2011/9/2 Frédéric Delanoy :
> On Thu, Sep 1, 2011 at 23:37,   wrote:
>> The Buildbot has detected a failed build on builder runtests while building 
>> Wine.
>> Full details are available at: 
>> http://buildbot.kegel.com/builders/runtests/builds/208
>> BUILD FAILED: failed shell_3
>>
>> For more info about this message, see http://wiki.winehq.org/BuildBot
>
> You might want to avoid testing patches [M+1..N/N] if [M/N] failed, 1<=M<=N-1

I could... it'd take some thinking, though, as buildbot isn't really
set up for patch series.

In this case, though, the failure was unrelated to the patch series,
so I'm not sure it would have quieted the noise much.




Re: regedit: Remove the printing code

2011-09-02 Thread Frédéric Delanoy
2011/9/1 André Hentschel :
> It does nothing (except confusing)
> beside that i doubt someone wants to print registry hives

That's not a reason IMHO.
What should be done is fix the printing so it works like on windows
(or put an error box: "not yet implemented", or similar)




Re: [PATCH 10/10] mshtml: Added more IHTMLElement_{put, get}_onclick tests

2011-09-02 Thread Marvin
Hi,

While running your changed tests on Windows, I think I found new failures.
Being a bot and all I'm not very good at pattern recognition, so I might be
wrong, but could you please double-check?
Full results can be found at
http://testbot.winehq.org/JobDetails.pl?Key=13915

Your paranoid android.


=== W2K3R2SESP2 (32 bit events) ===
Timeout

=== W2K8SE (32 bit events) ===
Timeout




Re: [PATCH 6/6] jscript/tests: Added decodeURI tests

2011-09-02 Thread Marvin
Hi,

While running your changed tests on Windows, I think I found new failures.
Being a bot and all I'm not very good at pattern recognition, so I might be
wrong, but could you please double-check?
Full results can be found at
http://testbot.winehq.org/JobDetails.pl?Key=13910

Your paranoid android.


=== WNT4WSSP6 (32 bit) ===
No test summary line found

=== W2KPROSP4 (32 bit) ===
No test summary line found

=== WXPPROSP3 (32 bit) ===
No test summary line found

=== W2K3R2SESP2 (32 bit) ===
No test summary line found

=== WVISTAADM (32 bit) ===
No test summary line found

=== W2K8SE (32 bit) ===
No test summary line found

=== W7PRO (32 bit) ===
No test summary line found

=== W7PROX64 (32 bit) ===
No test summary line found

=== W7PROX64 (64 bit) ===
No test summary line found




Re: [PATCH 4/6] jscript: Throw exception on error in JSGlobal_encodeURIComponent

2011-09-02 Thread Marvin
Hi,

While running your changed tests on Windows, I think I found new failures.
Being a bot and all I'm not very good at pattern recognition, so I might be
wrong, but could you please double-check?
Full results can be found at
http://testbot.winehq.org/JobDetails.pl?Key=13909

Your paranoid android.


=== WNT4WSSP6 (32 bit) ===
No test summary line found

=== W2KPROSP4 (32 bit) ===
No test summary line found

=== WXPPROSP3 (32 bit) ===
No test summary line found

=== W2K3R2SESP2 (32 bit) ===
No test summary line found

=== WVISTAADM (32 bit) ===
No test summary line found

=== W2K8SE (32 bit) ===
No test summary line found

=== W7PRO (32 bit) ===
No test summary line found

=== W7PROX64 (32 bit) ===
No test summary line found

=== W7PROX64 (64 bit) ===
No test summary line found




Re: ws2_32: Avoid an unhandled read exception on WSAIoctl (resend)

2011-09-02 Thread GOUJON Alexandre

On 09/02/2011 10:32 AM, Michael Stefaniuc wrote:

Bruno Jesus wrote:

On Thu, Sep 1, 2011 at 18:40, Bruno Jesus<00cp...@gmail.com>  wrote:

I don't get the same results here, can anyone help me to understand
why it failed?
10014 = WSAEFAULT and I could not find this return value anywhere
near, maybe due to threading?

Thanks,
Bruno


I see know that newer systems return a different value, should I add
an OR to the ok() or is there a better way like checking which OS is
running during the test?

That and Wine should return the error that the modern Windows return.

bye
michael

If you read several tests, you will notice that :
- we don't use GetWindowsVersion()
- instead we detect old windows thanks to its odd behaviour (see for 
instance [1])

- we mark broken() for some "bad" values returned by some (old) windows

If you don't understand the broken keyword, imagine you're writing some 
code, in 2000.
You didn't notice a corner case where your function returns a wrong 
value. Then, you fix your code in 2011.
In this example, you will have a broken() that catches all systems 
running the old code (2000 <= version < 2011), and an ok() when version 
>= 2011.


And michael is right : wine should return the right "ok()" value, not 
the "broken()" one.


---
[1] http://source.winehq.org/git/wine.git/?a=search&h=HEAD&st=grep&s=is_nt4




Re: regedit: Remove the printing code

2011-09-02 Thread Jerome Leclanche
To be fair, that feature is available on Windows.


2011/9/1 André Hentschel :
> It does nothing (except confusing)
> beside that i doubt someone wants to print registry hives
>
> ---
>  programs/regedit/En.rc      |    1 -
>  programs/regedit/framewnd.c |   77 
> ---
>  programs/regedit/regedit.rc |    3 --
>  programs/regedit/resource.h |    3 --
>  4 files changed, 0 insertions(+), 84 deletions(-)
>
> diff --git a/programs/regedit/En.rc b/programs/regedit/En.rc
> index 35411d2..512f528 100644
> --- a/programs/regedit/En.rc
> +++ b/programs/regedit/En.rc
> @@ -162,7 +162,6 @@ END
>  IDC_REGEDIT ACCELERATORS
>  {
>     "^F",      ID_EDIT_FIND
> -    "^P",      ID_REGISTRY_PRINT
>     VK_DELETE, ID_EDIT_DELETE, VIRTKEY
>     VK_F1,     ID_HELP_HELPTOPICS, VIRTKEY
>     VK_F2,     ID_EDIT_RENAME, VIRTKEY
> diff --git a/programs/regedit/framewnd.c b/programs/regedit/framewnd.c
> index 0cdedec..0f8b485 100644
> --- a/programs/regedit/framewnd.c
> +++ b/programs/regedit/framewnd.c
> @@ -392,71 +392,6 @@ static BOOL ExportRegistryFile(HWND hWnd)
>     return TRUE;
>  }
>
> -static BOOL PrintRegistryHive(HWND hWnd, LPCWSTR path)
> -{
> -#if 1
> -    PRINTDLGW pd;
> -
> -    ZeroMemory(&pd, sizeof(PRINTDLGW));
> -    pd.lStructSize = sizeof(PRINTDLGW);
> -    pd.hwndOwner   = hWnd;
> -    pd.hDevMode    = NULL;     /* Don't forget to free or store hDevMode*/
> -    pd.hDevNames   = NULL;     /* Don't forget to free or store hDevNames*/
> -    pd.Flags       = PD_USEDEVMODECOPIESANDCOLLATE | PD_RETURNDC;
> -    pd.nCopies     = 1;
> -    pd.nFromPage   = 0x;
> -    pd.nToPage     = 0x;
> -    pd.nMinPage    = 1;
> -    pd.nMaxPage    = 0x;
> -    if (PrintDlgW(&pd)) {
> -        /* GDI calls to render output. */
> -        DeleteDC(pd.hDC); /* Delete DC when done.*/
> -    }
> -#else
> -    HRESULT hResult;
> -    PRINTDLGEXW pd;
> -
> -    hResult = PrintDlgExW(&pd);
> -    if (hResult == S_OK) {
> -        switch (pd.dwResultAction) {
> -        case PD_RESULT_APPLY:
> -            /*The user clicked the Apply button and later clicked the Cancel 
> button. This indicates that the user wants to apply the changes made in the 
> property sheet, but does not yet want to print. The PRINTDLGEX structure 
> contains the information specified by the user at the time the Apply button 
> was clicked. */
> -            break;
> -        case PD_RESULT_CANCEL:
> -            /*The user clicked the Cancel button. The information in the 
> PRINTDLGEX structure is unchanged. */
> -            break;
> -        case PD_RESULT_PRINT:
> -            /*The user clicked the Print button. The PRINTDLGEX structure 
> contains the information specified by the user. */
> -            break;
> -        default:
> -            break;
> -        }
> -    } else {
> -        switch (hResult) {
> -        case E_OUTOFMEMORY:
> -            /*Insufficient memory. */
> -            break;
> -        case E_INVALIDARG:
> -            /* One or more arguments are invalid. */
> -            break;
> -        case E_POINTER:
> -            /*Invalid pointer. */
> -            break;
> -        case E_HANDLE:
> -            /*Invalid handle. */
> -            break;
> -        case E_FAIL:
> -            /*Unspecified error. */
> -            break;
> -        default:
> -            break;
> -        }
> -        return FALSE;
> -    }
> -#endif
> -    return TRUE;
> -}
> -
>  static BOOL CopyKeyName(HWND hWnd, LPCWSTR keyName)
>  {
>     BOOL result;
> @@ -677,12 +612,6 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM 
> wParam, LPARAM lParam)
>     case ID_REGISTRY_EXPORTREGISTRYFILE:
>         ExportRegistryFile(hWnd);
>         break;
> -    case ID_REGISTRY_PRINT:
> -    {
> -        const WCHAR empty = 0;
> -        PrintRegistryHive(hWnd, &empty);
> -        break;
> -    }
>     case ID_EDIT_DELETE:
>     {
>         HWND hWndDelete = GetFocus();
> @@ -831,12 +760,6 @@ static BOOL _CmdWndProc(HWND hWnd, UINT message, WPARAM 
> wParam, LPARAM lParam)
>         HeapFree(GetProcessHeap(), 0, keyPath);
>     }
>        break;
> -    case ID_REGISTRY_PRINTERSETUP:
> -        /*PRINTDLG pd;*/
> -        /*PrintDlg(&pd);*/
> -        /*PAGESETUPDLG psd;*/
> -        /*PageSetupDlg(&psd);*/
> -        break;
>     case ID_REGISTRY_OPENLOCAL:
>         break;
>     case ID_REGISTRY_EXIT:
> diff --git a/programs/regedit/regedit.rc b/programs/regedit/regedit.rc
> index 8d3b333..a5a1ad3 100644
> --- a/programs/regedit/regedit.rc
> +++ b/programs/regedit/regedit.rc
> @@ -33,8 +33,6 @@ BEGIN
>         MENUITEM "&Import Registry File...",    ID_REGISTRY_IMPORTREGISTRYFILE
>         MENUITEM "&Export Registry File...",    ID_REGISTRY_EXPORTREGISTRYFILE
>         MENUITEM SEPARATOR
> -        MENUITEM "&Print...\tCtrl+P",           ID_REGISTRY_PRINT
> -        MENUITEM SEPARATOR
>         MENUITEM "E&xit",                       ID_REGISTRY_EXIT
>     END
>     POPUP "&Edit"
> @@ -150,7 +148,6 @

Re: ws2_32: Avoid an unhandled read exception on WSAIoctl (resend)

2011-09-02 Thread Michael Stefaniuc
Bruno Jesus wrote:
> On Thu, Sep 1, 2011 at 18:40, Bruno Jesus <00cp...@gmail.com> wrote:
>> I don't get the same results here, can anyone help me to understand
>> why it failed?
>> 10014 = WSAEFAULT and I could not find this return value anywhere
>> near, maybe due to threading?
>>
>> Thanks,
>> Bruno
>>
> 
> I see know that newer systems return a different value, should I add
> an OR to the ok() or is there a better way like checking which OS is
> running during the test?
That and Wine should return the error that the modern Windows return.

bye
michael




Re: kernel32: Fix writing to a pipe in WriteConsoleW().

2011-09-02 Thread Eric Pouech

Le 01/09/2011 16:22, Francois Gouget a écrit :

On Wed, 24 Aug 2011, Eric Pouech wrote:
[...]

you can safely provide the patches with protecting WriteConsole and friends
with a if (!is_console_handle(???)) return FALSE; line

Would something like the attached patch be ok?
As far as I can see all the other APIs pretty much immediately pass the
handle to wineserver which I expect will complain if it's not a console
handle.

Further notes:
  * Performing the 'console handle check' locally would likely be faster
but, except for WriteConsole maybe, this should usually be the case
and is probably not performance critical anyway.
  * There are a few cases where we check for invalid parameters and
return an error before the handle is checked by wineserver. It's
possible that in such cases Windows checks the handle first. But
unless we know of applications that need the right error code in
these corner cases it does not justify adding an explicit check.




actually, a couple of API support the "bare" handles and those should be 
protected (what your patch does)

otherwise, wineserver iwill fail on them
this patch looks ok, but you have to reverse the previous one as well
A+

--
Eric Pouech
"The problem with designing something completely foolproof is to underestimate the 
ingenuity of a complete idiot." (Douglas Adams)




Re: 78262: Subject: [2/6] dinput: Added enumerated devices to ConfigureDevices dialog (try 3)

2011-09-02 Thread Frédéric Delanoy
On Thu, Sep 1, 2011 at 23:37,   wrote:
> The Buildbot has detected a failed build on builder runtests while building 
> Wine.
> Full details are available at: 
> http://buildbot.kegel.com/builders/runtests/builds/208
> BUILD FAILED: failed shell_3
>
> For more info about this message, see http://wiki.winehq.org/BuildBot

You might want to avoid testing patches [M+1..N/N] if [M/N] failed, 1<=M<=N-1