Re: [PATCH] kernel32: Add a stub for SetProcessDEPPolicy

2010-11-04 Thread Marcus Meissner
On Wed, Nov 03, 2010 at 11:54:33PM +0100, Detlef Riekenberg wrote:
 ---
  dlls/kernel32/kernel32.spec |1 +
  dlls/kernel32/process.c |8 
  2 files changed, 9 insertions(+), 0 deletions(-)
 
 diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
 index 8381ae8..f32371e 100644
 --- a/dlls/kernel32/kernel32.spec
 +++ b/dlls/kernel32/kernel32.spec
 @@ -1053,6 +1053,7 @@
  @ stdcall SetNamedPipeHandleState(long ptr ptr ptr)
  @ stdcall SetPriorityClass(long long)
  @ stdcall SetProcessAffinityMask(long long)
 +@ stdcall SetProcessDEPPolicy(long)
  @ stdcall SetProcessPriorityBoost(long long)
  @ stdcall SetProcessShutdownParameters(long long)
  @ stdcall SetProcessWorkingSetSize(long long long)
 diff --git a/dlls/kernel32/process.c b/dlls/kernel32/process.c
 index fdd19db..86747d9 100644
 --- a/dlls/kernel32/process.c
 +++ b/dlls/kernel32/process.c
 @@ -3394,3 +3394,11 @@ DEP_SYSTEM_POLICY_TYPE WINAPI GetSystemDEPPolicy(void)
  FIXME(stub\n);
  return OptIn;
  }
 +/**
 + *   SetProcessDEPPolicy (KERNEL32.@)
 + */
 +BOOL WINAPI SetProcessDEPPolicy(DWORD newDEP)
 +{
 +FIXME((%d): stub\n, newDEP);
 +return TRUE;
 +}

Perhaps return FALSE; and SetLastError(..NOTIMPLEMENTED...) as we did not 
actually do it.
(always better not to lie with security related functions.)

Ciao, MArcus




Re: [PATCH 2/5] d3d8/tests: Check for multiple expected messages in test_wndproc().

2010-11-04 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=6785

Your paranoid android.


=== WVISTAADM (32 bit device) ===
device.c:1670: Test failed: Expected foreground window 000201D4, got 000101D2.

=== W2K8SE (32 bit device) ===
device.c:1670: Test failed: Expected foreground window 00010126, got 0001011A.




Fwd: msvcrt: Implement _get_tzname.

2010-11-04 Thread Eryk Wieliczko
http://msdn.microsoft.com/en-us/library/4ssfs1ya.aspx

_get_tzname should simply copy the contents of _tzname. In my opinion
it should be ok.
According to this document it's the default value. In my Polish XP
it's also PST and PDT, which is of course irracional ( Poland is
in Europe ).

So I would assume
static char tzname_std[64] = ;
static char tzname_dst[64] = ;
more of a hack.



2010/11/3 Dmitry Timoshkov dmi...@codeweavers.com:
 Eryk Wieliczko ewde...@gmail.com wrote:
 This is not an implementation, this is a quick and dirty hack.

 --
 Dmitry.





Re: [PATCH 3/5] d3d9/tests: Check for multiple expected messages in test_wndproc().

2010-11-04 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=6786

Your paranoid android.


=== WVISTAADM (32 bit device) ===
device.c:2650: Test failed: Expected foreground window 000301CA, got 000201C8.




Re: Transparent windows (with alpha channel)

2010-11-04 Thread Vassilis Virvilis

On 03/11/2010 12:36 πμ, Vassilis Virvilis wrote:

On 02/11/2010 02:12 πμ, Vincent Povirk wrote:

It is probably a layered window, in which case the following functions
in user32 are relevant: SetLayeredWindowAttributes,
GetLayeredWindowAttributes, UpdateLayeredWindowIndirect, and
UpdateLayeredWindow

Most of user32 is implemented based on gdi32, wineserver, and
winex11.drv. When you see USER_Driver in user32, that indicates a
function in winex11.drv. So USER_Driver-pSetLayeredWindowAttributes
is really X11DRV_SetLayeredWindowAttributes.

Wine requires a compositing window manager to implement layered
windows properly. It does not matter whether the window manager
provides any 3D effects or uses opengl.


Thank you very much for the directions. They certainly put me on the
right track.



Again thanks for the directions.

The UpdateLayeredWindowIndirect implementation of wine only utilizes a global 
per window alpha value.

After a little bit of research it looks like what I want is something called 
per-pixel alpha or per color alpha or blending with alpha channel.

Does wine and/or X-Windows support something like this and if so where?

My guess is in bitblit but any insightful comment is welcome.

   .bill




RFC: Fixing comctl32 toolbar tests for different system font heights

2010-11-04 Thread Austin Lund
I'm trying to fix these test failures:

http://test.winehq.org/data/d4f64121e83671ac10ed6ead04f1c19eb5586cb0/xp_wtb-wxpprojasp3/comctl32:toolbar.html

These failures occur because the system font metrics are different to
what is assumed for the hard-coded numbers.

Attached is my go at fixing these (in a three part patch set).  Is
this approach even close to being the right way to do this?
From 6940f0c65a39b9a9e87c96857dc82c27bae726fa Mon Sep 17 00:00:00 2001
From: Austin Lund austin.l...@gmail.com
Date: Thu, 4 Nov 2010 15:07:18 +1000
Subject: [PATCH 1/4] comctl32/tests: Change toolbar size test data to load dynamically.
Reply-To: wine-devel wine-devel@winehq.org

---
 dlls/comctl32/tests/toolbar.c |  227 +++--
 1 files changed, 103 insertions(+), 124 deletions(-)

diff --git a/dlls/comctl32/tests/toolbar.c b/dlls/comctl32/tests/toolbar.c
index 87edee1..890d604 100644
--- a/dlls/comctl32/tests/toolbar.c
+++ b/dlls/comctl32/tests/toolbar.c
@@ -680,129 +680,107 @@ typedef struct
 RECT rcButtons[100];
 } tbsize_result_t;
 
-static tbsize_result_t tbsize_results[] =
-{
-  { {0, 0, 672, 26}, {100, 22}, 5, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-{ 54,   2,  77,  24}, { 77,   2, 100,  24},
-  }, },
-  { {0, 0, 672, 26}, {146, 22}, 7, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-{ 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-{  0,  24,  23,  46},
-  }, },
-  { {0, 0, 672, 48}, {146, 22}, 7, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-{ 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-{  0,  24,  23,  46},
-  }, },
-  { {0, 0, 672, 26}, {146, 22}, 7, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-{ 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-{123,   2, 146,  24},
-  }, },
-  { {0, 0, 672, 26}, {192, 22}, 9, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-{ 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-{123,   2, 146,  24}, {146,   2, 169,  24}, {169,   2, 192,  24},
-  }, },
-  { {0, 0, 672, 92}, {882, 22}, 39, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, {  0,   2,   8,  29},
-{  0,  29,  23,  51}, { 23,  29,  46,  51}, { 46,  29,  69,  51},
-{ 69,  29,  92,  51}, { 92,  29, 115,  51}, {115,  29, 138,  51},
-{138,  29, 161,  51}, {161,  29, 184,  51}, {184,  29, 207,  51},
-{207,  29, 230,  51}, {230,  29, 253,  51}, {253,  29, 276,  51},
-{276,  29, 299,  51}, {299,  29, 322,  51}, {322,  29, 345,  51},
-{345,  29, 368,  51}, {368,  29, 391,  51}, {391,  29, 414,  51},
-{414,  29, 437,  51}, {437,  29, 460,  51}, {460,  29, 483,  51},
-{483,  29, 506,  51}, {506,  29, 529,  51}, {529,  29, 552,  51},
-{552,  29, 575,  51}, {575,  29, 598,  51}, {598,  29, 621,  51},
-{621,  29, 644,  51}, {644,  29, 667,  51}, {  0,  51,  23,  73},
-{ 23,  51,  46,  73}, { 46,  51,  69,  73}, { 69,  51,  92,  73},
-{ 92,  51, 115,  73}, {115,  51, 138,  73}, {138,  51, 161,  73},
-  }, },
-  { {0, 0, 48, 226}, {23, 140}, 7, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  94,  24},
-{ 94,   2, 117,  24}, {117,   2, 140,  24}, {140,   2, 163,  24},
-{  0,  24,  23,  46},
-  }, },
-  { {0, 0, 92, 226}, {23, 140}, 7, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, {  0,  24,  92,  32},
-{  0,  32,  23,  54}, { 23,  32,  46,  54}, { 46,  32,  69,  54},
-{ 69,  32,  92,  54},
-  }, },
-  { {0, 0, 672, 26}, {194, 30}, 7, {
-{  0,   2,  31,  32}, { 31,   2,  62,  32}, { 62,   2,  70,  32},
-{ 70,   2, 101,  32}, {101,   2, 132,  32}, {132,   2, 163,  32},
-{  0,  32,  31,  62},
-  }, },
-  { {0, 0, 672, 64}, {194, 30}, 7, {
-{  0,   2,  31,  32}, { 31,   2,  62,  32}, { 62,   2,  70,  32},
-{ 70,   2, 101,  32}, {101,   2, 132,  32}, {132,   2, 163,  32},
-{  0,  32,  31,  62},
-  }, },
-  { {0, 0, 672, 64}, {194, 30}, 7, {
-{  0,   0,  31,  30}, { 31,   0,  62,  30}, { 62,   0,  70,  30},
-{ 70,   0, 101,  30}, {101,   0, 132,  30}, {132,   0, 163,  30},
-{  0,  30,  31,  60},
-  }, },
-  { {0, 0, 124, 226}, {31, 188}, 7, {
-{  0,   0,  31,  30}, { 31,   0,  62,  30}, {  0,  30, 124,  38},
-{  0,  38,  31,  68}, { 31,  38,  62,  68}, { 62,  38,  93,  68},
-{ 93,  38, 124,  68},
-  }, },
-  { {0, 0, 672, 26}, {146, 22}, 7, {
-{  0,   2,  23,  24}, { 23,   2,  46,  24}, { 46,   2,  54,  24},
-{ 54,   2,  77,  24}, { 77,   2, 100,  24}, {100,   2, 123,  24},
-{123,   2, 146,  24},
-  }, },
-  { {0, 0, 672, 26}, {146, 100}, 7, {
-{  0,   0,  23, 100}, { 23,   0,  46, 100}, { 46,   0,  54, 100},
-{ 54,   0,  77, 100}, { 77,   0, 100, 100}, {100,   0, 123, 100},
-{123,   0, 146, 100},
-  }, },
-  { {0, 0, 672, 26}, {215, 100}, 10, {
-{  0,   0,  23, 100}, { 23,   0,  46, 100}, { 46,   0,  

Re: Fwd: msvcrt: Implement _get_tzname.

2010-11-04 Thread Dmitry Timoshkov
Eryk Wieliczko ewde...@gmail.com wrote:

 http://msdn.microsoft.com/en-us/library/4ssfs1ya.aspx
 
 _get_tzname should simply copy the contents of _tzname. In my opinion
 it should be ok.
 According to this document it's the default value. In my Polish XP
 it's also PST and PDT, which is of course irracional ( Poland is
 in Europe ).

I'd expect a real implementation return something in line with what
GetTimeZoneInformation() returns. Wrting some tests to see what actual
behaviour is would help.

-- 
Dmitry.




Re: Transparent windows (with alpha channel)

2010-11-04 Thread Ozan Türkyılmaz
2010/11/4 Vassilis Virvilis vas...@iit.demokritos.gr:
 On 03/11/2010 12:36 πμ, Vassilis Virvilis wrote:
[...]
 Aain thanks for the directions.

 The UpdateLayeredWindowIndirect implementation of wine only utilizes a
 global per window alpha value.

 After a little bit of research it looks like what I want is something called
 per-pixel alpha or per color alpha or blending with alpha channel.

 Does wine and/or X-Windows support something like this and if so where?

 My guess is in bitblit but any insightful comment is welcome.

           .bill

As much as I know XRender or Compositing Window Manager can be used
for alpha blending.

-- 
Ozan, BSc, BEng




Re: [PATCH 2/2] ntdll: Check for case-insensitive volumes. (resend try 5)

2010-11-04 Thread Alexandre Julliard
Charles Davis cda...@mymail.mines.edu writes:

 If the volume is indeed case insensitive, we skip searching through the
 whole directory ourselves, and just stat() each portion of the path.

You still have extra stat calls. You should stop trying to pass a
case_sensitive flag to find_file_in_dir and have it take care of
everything internally, if and only if a case insensitive search seems to
be required.

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




Re: [PATCH 1/2] slc: Implement SLGetWindowsInformationDWORD

2010-11-04 Thread Alexandre Julliard
Detlef Riekenberg wine@web.de writes:

 +HRESULT WINAPI SLGetWindowsInformationDWORD(LPCWSTR lpszValueName, LPDWORD 
 pdwValue)
 +{
 +FIXME((%s, %p): semi-stub\n, debugstr_w(lpszValueName), pdwValue);
 +
 +if (!lpszValueName || !pdwValue)
 +return E_INVALIDARG;
 +
 +if (!*lpszValueName)
 +return SL_E_RIGHT_NOT_GRANTED;
 +
 +/* We have always a genuine Wine */
 +*pdwValue = 1;
 +return S_OK;

There's no reason that this dword would represent the genuine flag, it
can be just about anything. Returning value not found would probably be
preferable, or else do a real attempt at determining what value would be
expected for the specified name.

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




Re: msvcrt: Implement _asctime_s and _wasctime_s.

2010-11-04 Thread Alexandre Julliard
Eryk Wieliczko ewde...@gmail.com writes:

 +MSVCRT_long CDECL MSVCRT_asctime_s(char *output, MSVCRT_size_t max, const 
 struct MSVCRT_tm *mstm)
 +{
 +char *buffer;
 +MSVCRT_size_t bufflen;
 +
 +if (output  max  0)
 + output[0] = '\0';
 +if (!output)
 +{
 +*MSVCRT__errno() = MSVCRT_EINVAL;
 +return MSVCRT_EINVAL;
 +}

You probably want to use the new parameter checking macros. Also the
first check is redundant.

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




Where in the code does wine read fonts?

2010-11-04 Thread Per Olesen
Hi!

I am trying to figure out how wine reads fonts on startup but am having a 
little trouble. I checked out the source and found a lot of good stuff in 
winex11.drv/xfont.c, but I am not sure this is actually the code, that gets 
executed when my wine boots. What I experience, is that wine reads the X fonts, 
using the fontconfig library. Is that correct?

Maybe I should say *why* I am digging into the font handling in the code. When 
I rebuild the system fontcache (using fc-cache), wine suddenly gets painfully 
slow to boot. When I revert to the old cache I had before rebuild, it gets fast 
again. Listing the cache content (using fc-list) yields the same amount of 
fonts before and after rebuild, so I find it strange with the extra boot time. 
Actually, it would be better for me to NOT have wine read the X fonts (I think).

So, I tried digging in to understand it better from the code.

Is there a central place in the source code I am missing, that could lead me to 
the lightsource :-)

Regards, Per



banning spammer from the forum

2010-11-04 Thread Rosanne DiMesio
Jeremy,

Please ban ebook1210 from the forum. I've had to delete multiple spam posts 
from him/her over the past couple of days.
-- 
Rosanne DiMesio dime...@earthlink.net




Re: banning spammer from the forum

2010-11-04 Thread Jeremy Newman

Done.

On 11/04/2010 08:57 AM, Rosanne DiMesio wrote:

Jeremy,

Please ban ebook1210 from the forum. I've had to delete multiple spam posts 
from him/her over the past couple of days.





PGP key signing party at WineConf

2010-11-04 Thread Shachar Shemesh

Hi all,

During WineConf we will be holding a key signing party, organized by 
your truly. The wiki page for WineConf has been updated with details on 
how to participate, and I have set up a page explaining the process for 
people who have never participated before.


Please email your keys to me, with the subject WineConf key signing 
(so that my spam filters don't eat it up).


The wineconf wiki page, in case you are not up to date, is at 
http://wiki.winehq.org/WineConf2010


The key signing page is at http://wiki.winehq.org/KeySigningParty

Shachar

--
Shachar Shemesh
Lingnu Open Source Consulting Ltd.
http://www.lingnu.com





Re: Transparent windows (with alpha channel)

2010-11-04 Thread Roderick Colenbrander
On Thu, Nov 4, 2010 at 3:08 AM, Vassilis Virvilis
vas...@iit.demokritos.gr wrote:
 On 03/11/2010 12:36 πμ, Vassilis Virvilis wrote:

 On 02/11/2010 02:12 πμ, Vincent Povirk wrote:

 It is probably a layered window, in which case the following functions
 in user32 are relevant: SetLayeredWindowAttributes,
 GetLayeredWindowAttributes, UpdateLayeredWindowIndirect, and
 UpdateLayeredWindow

 Most of user32 is implemented based on gdi32, wineserver, and
 winex11.drv. When you see USER_Driver in user32, that indicates a
 function in winex11.drv. So USER_Driver-pSetLayeredWindowAttributes
 is really X11DRV_SetLayeredWindowAttributes.

 Wine requires a compositing window manager to implement layered
 windows properly. It does not matter whether the window manager
 provides any 3D effects or uses opengl.

 Thank you very much for the directions. They certainly put me on the
 right track.


 Again thanks for the directions.

 The UpdateLayeredWindowIndirect implementation of wine only utilizes a
 global per window alpha value.

 After a little bit of research it looks like what I want is something called
 per-pixel alpha or per color alpha or blending with alpha channel.

 Does wine and/or X-Windows support something like this and if so where?

 My guess is in bitblit but any insightful comment is welcome.

           .bill




You would require ARGB visuals. Various drivers support them these
days for desktop composition purposes. When I asked Alexandre about
them a long time ago, he said we couldn't use them in Wine. I don't
know why that was. Further even if we could use it, we would have to
recreate the window upon this call since I don't think we would want
to use ARGB by default.

Roderick




Re: Voting for bugs (Was: Re: [Bug 20969])

2010-11-04 Thread Rosanne DiMesio
On Thu, 4 Nov 2010 18:03:38 -0500
Tom Spear speeddy...@gmail.com wrote:

 
 My point in making the statement is that voting for the bug should confirm
 the bug once a certain threshold has been reached.
 

It already does.  

-- 
Rosanne DiMesio dime...@earthlink.net




Re: Voting for bugs (Was: Re: [Bug 20969])

2010-11-04 Thread James McKenzie

On 11/4/10 4:03 PM, Tom Spear wrote:
On Wed, Nov 3, 2010 at 2:38 AM, Dmitry Timoshkov 
dmi...@codeweavers.com mailto:dmi...@codeweavers.com wrote:


Yaron Shahrabani sh.ya...@gmail.com mailto:sh.ya...@gmail.com
wrote:

 I think that voting for bugs is a great feature, otherwise there
would have
 been many annoying comments like: it happens to me too and what
info you can
 get out of it?

Adding such a comment is pefectly acceptable.

Confirming a bug and voting for it are two different things. Once
a bug is
confirmed its state changes from UNCONFORMED to NEW, and usually
once sombody
else bisides the reporter confirms a bug, a person with
appropriate bugzilla
rights sets bug state to NEW. But asking people to vote for a bug
is a waste
of effort, since that doesn't change anything. There are bugs in
Wine bugzilla
with huge amounts of votes on them, but that doesn't suddenly make
a bug more
important to developers for various reasons.

 Voting helps setting priorities for bugs without nonsense comments.

That's the bug severity is for.

--
Dmitry.



My point in making the statement is that voting for the bug should 
confirm the bug once a certain threshold has been reached.


People other than the reporter making a comment that a bug occurs for 
them too doesn't necessarily make the bug valid, and certainly doesn't 
change it's status.
There are bugzilla installs for other projects, IIRC, that do change 
the status of bugs from UNCONFIRMED to NEW once there have been 
several votes, which helps the developers in terms of how much time 
they spend doing what they like (coding) vs doing maintenance (marking 
bugs as invalid).

Tom:

That already exists.  I don't know the threshold of when a bug is moved 
from UNCONFIRMED to NEW, but it already exists.   We already have pool 
voting but you are restricted to the number of votes per bug.


My concern is that we get a bunch of 'me too' comments that have no 
other substance (like this happens when I do X but not if I do Y or see 
the dump file on Ubuntu Lucid when the bug was reported with a Fedora 
build) will start to happen.  That is why the bug vote system exists.  
Yes, there are bugs with thousands of votes, but that just shows the 
scope of effect of a particular bug.  It DOES not mean that the bug will 
be fixed faster or even a developer exists to fix it.  Dmitry is correct 
in that the bug's priority is set by the development team and is not 
influenced by the number of votes.  However, voting does give users 
input to which bug should be corrected, not that it will ever be.  The 
reason that I pointed out bug 421 as one that has many votes, has a high 
priority, has been open for years, but still has not been fixed.  This 
is  the reality of life.  There has been no developer, to date, that can 
build code that meets the standards of the Wine development team and 
successfully implements this function.  This does not mean this will 
never happen.


So for now, the vote system does what it is supposed to do and the 
priority system likewise.


This is my additional .02 USD on the subject.

James McKenzie




Re: Voting for bugs (Was: Re: [Bug 20969])

2010-11-04 Thread Austin English
On Fri, Nov 5, 2010 at 4:02 AM, James McKenzie
jjmckenzi...@earthlink.net wrote:
 Yes, there are bugs with thousands of votes, but that just
 shows the scope of effect of a particular bug.

I'm not sure where you got that idea:
http://bugs.winehq.org/buglist.cgi?query_format=advancedvotes=100order=votes%2Cbug_id

-- 
-Austin