Re: Dosbox integration

2013-04-08 Thread Charles Davis

On Apr 8, 2013, at 1:27 PM, Fabian Ebner wrote:

> Hello,
> I'm Fabian Ebner and work with wine as a hobby.
> 
> I found that GetShortNameA converts the example path
> C:\123456789\dn\DN.COM
> to
> C:\1234~Q4C\dn\DN.COM
> which causes problems with dosbox integration.
> Dosbox would need the path as
> C:\123456~1\dn\DN.COM
> Is there another function that converts the path in the way, dosbox
> needs it, should it be implemented or should dosbox be able to handle
> the first form of the path too?
DOSBox already handles Wine-style short paths (DOSBox r3743).
> 
> Also wine often tries to mount his z: drive, which isn't possible,
> because dosbox already mounts an own Z: drive
> http://www.dosbox.com/wiki/ZDrive
> Maybe wine should mount his Z: as Y:?
You can pass the -z switch to DOSBox's mount command to remap DOSBox's drive Z: 
to something else (DOSBox r3736).

Chip





Dosbox integration

2013-04-08 Thread Fabian Ebner
Hello,
I'm Fabian Ebner and work with wine as a hobby.

I found that GetShortNameA converts the example path
C:\123456789\dn\DN.COM
to
C:\1234~Q4C\dn\DN.COM
which causes problems with dosbox integration.
Dosbox would need the path as
C:\123456~1\dn\DN.COM
Is there another function that converts the path in the way, dosbox
needs it, should it be implemented or should dosbox be able to handle
the first form of the path too?

Also wine often tries to mount his z: drive, which isn't possible,
because dosbox already mounts an own Z: drive
http://www.dosbox.com/wiki/ZDrive
Maybe wine should mount his Z: as Y:?

Thanks in advance

~Fabian




Re: [PATCH v4 3/7] CIFS: Add O_DENY* open flags support

2013-04-08 Thread Jeff Layton
On Fri,  5 Apr 2013 20:57:51 +0400
Pavel Shilovsky  wrote:

> Construct share_access value from O_DENY* flags and send it to
> the server.
> 
> Signed-off-by: Pavel Shilovsky 
> ---
>  fs/cifs/cifsglob.h | 16 +++-
>  fs/cifs/dir.c  |  3 +++
>  fs/cifs/file.c |  4 
>  fs/locks.c |  8 
>  4 files changed, 30 insertions(+), 1 deletion(-)
> 
> diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
> index cd4bbf3..7e876b9 100644
> --- a/fs/cifs/cifsglob.h
> +++ b/fs/cifs/cifsglob.h
> @@ -465,7 +465,7 @@ struct smb_vol {
>CIFS_MOUNT_CIFS_BACKUPUID | CIFS_MOUNT_CIFS_BACKUPGID)
>  
>  #define CIFS_MS_MASK (MS_RDONLY | MS_MANDLOCK | MS_NOEXEC | MS_NOSUID | \
> -   MS_NODEV | MS_SYNCHRONOUS)
> +   MS_NODEV | MS_SYNCHRONOUS | MS_SHARELOCK)
>  
>  struct cifs_mnt_data {
>   struct cifs_sb_info *cifs_sb;
> @@ -947,6 +947,20 @@ struct cifsFileInfo {
>   struct work_struct oplock_break; /* work for oplock breaks */
>  };
>  
> +static inline int
> +cifs_get_share_flags(unsigned int flags)
> +{
> + int share_access = 0;
> +
> + if (!(flags & O_DENYREAD))
> + share_access |= FILE_SHARE_READ;
> + if (!(flags & O_DENYWRITE))
> + share_access |= FILE_SHARE_WRITE;
> + if (!(flags & O_DENYDELETE))
> + share_access |= FILE_SHARE_DELETE;
> + return share_access;
> +}
> +
>  struct cifs_io_parms {
>   __u16 netfid;
>  #ifdef CONFIG_CIFS_SMB2
> diff --git a/fs/cifs/dir.c b/fs/cifs/dir.c
> index 267b608..d4331de 100644
> --- a/fs/cifs/dir.c
> +++ b/fs/cifs/dir.c
> @@ -294,6 +294,9 @@ cifs_do_create(struct inode *inode, struct dentry 
> *direntry, unsigned int xid,
>   else
>   cFYI(1, "Create flag not set in create function");
>  
> + if (IS_SHARELOCK(inode))
> + share_access = cifs_get_share_flags(oflags);
> +
>   /*
>* BB add processing to set equivalent of mode - e.g. via CreateX with
>* ACLs
> diff --git a/fs/cifs/file.c b/fs/cifs/file.c
> index 0d524a7..9394b2b 100644
> --- a/fs/cifs/file.c
> +++ b/fs/cifs/file.c
> @@ -210,6 +210,8 @@ cifs_nt_open(char *full_path, struct inode *inode, struct 
> cifs_sb_info *cifs_sb,
>   */
>  
>   disposition = cifs_get_disposition(f_flags);
> + if (IS_SHARELOCK(inode))
> + share_access = cifs_get_share_flags(f_flags);
>  
>   /* BB pass O_SYNC flag through on file attributes .. BB */
>  
> @@ -645,6 +647,8 @@ cifs_reopen_file(struct cifsFileInfo *cfile, bool 
> can_flush)
>   }
>  
>   desired_access = cifs_convert_flags(cfile->f_flags);
> + if (IS_SHARELOCK(inode))
> + share_access = cifs_get_share_flags(cfile->f_flags);
>  
>   if (backup_cred(cifs_sb))
>   create_options |= CREATE_OPEN_BACKUP_INTENT;
> diff --git a/fs/locks.c b/fs/locks.c
> index 1eccc75..2184ddd 100644
> --- a/fs/locks.c
> +++ b/fs/locks.c
> @@ -846,10 +846,18 @@ deny_lock_file(struct file *filp)
>  {
>   struct file_lock *lock;
>   int error = 0;
> + const char *fsname = filp->f_path.dentry->d_inode->i_sb->s_type->name;
>  
>   if (!IS_SHARELOCK(filp->f_path.dentry->d_inode))
>   return error;
>  
> + /*
> +  * Don't set a lock on CIFS file systems because they can process it
> +  * themselves.
> +  */
> + if (!strncmp(fsname, "cifs", 4))
> + return error;
> +

NAK

This is really nasty. Instead of doing this, you should instead create
a new file_system_type->fs_flags value. Then, set that flag for cifs
and nfs4, and test it here.


>   error = flock_make_lock(filp, &lock, deny_flags_to_cmd(filp->f_flags));
>   if (error)
>   return error;


-- 
Jeff Layton 




Re: [1/13] wineconsole and kernel32: set GetLargestConsoleWindowSize based on screen resolution

2013-04-08 Thread Frédéric Delanoy
On Mon, Apr 8, 2013 at 2:53 PM, Hugh McMaster <
hugh.mcmas...@masterindexing.com> wrote:

> This patch creates winecon_private.h in 'include/wineconsole'. The header
> is now a shared header.  Note that the source code is the same as that in
> programs/wineconsole/winecon_private.h. (This latter file will be removed
> later.)
>
> Tested on Linux Mint 14 and Mac OS X 10.8 (Mountain Lion).
>
> ---
>  include/wineconsole/winecon_private.h |  103
> +
>  1 file changed, 103 insertions(+)
>  create mode 100644 include/wineconsole/winecon_private.h
>

Please don't send 13 patches with the same name.
Also, for long patch series, you should describe the whole purpose of the
series in the first patch [1/N] (or even better in a [0/N] patch)

Finally,even if "one change per patch" is the rule, don't overdo it...

Frédéric



Re: [3/3] comdlg32: Add an interactive PrintDlgEx test. Resend.

2013-04-08 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=24996

Your paranoid android.


=== WINEBUILD (build) ===
Make failed




Re: [3/13] wineconsole and kernel32: set GetLargestConsoleWindowSize based on screen resolution

2013-04-08 Thread Eric Pouech

Le 08/04/2013 16:03, Nikolay Sivov a écrit :




On Mon, Apr 8, 2013 at 4:47 PM, Hugh McMaster 
> wrote:


From: Nikolay Sivov [mailto:bungleh...@gmail.com
]
Sent: Monday, 8 April 2013 11:08 PM
To: wine-devel; Hugh McMaster
Subject: Re: [3/13] wineconsole and kernel32: set
GetLargestConsoleWindowSize based on screen resolution

>On Mon, Apr 8, 2013 at 3:53 PM, Hugh McMaster
mailto:hugh.mcmas...@masterindexing.com>> wrote:
>This file recreates most, if not all, of the source found in
dlls/advapi32/registry.c in dlls/kernel32. It provides registry
functionality.


>>Why do you need this?
If I remember correctly, there were several function dependencies
for the registry implementation I worked on.  I'm not sure of the
exact number, but will work this out.

What should I do then, though? Should I isolate the functions I
need into a separate file? Or should the dlls/advapi32/registry.c
be linked into the dlls/kernel32/Makefile.in?


If you need to access registry from kernel32 you'll need to use ntdll 
calls directly.



>>(not to mention that you can't just duplicate it like that)
I'm not sure what you mean. The source remains correctly
attributed as in the original.


This functionality belongs to advapi32. Do you really need anything 
more than ntdll calls provide?



and on top of that, using registry as a way to exchange information 
between wineconsole and kernel is not the right thing to do

the correct way is to:
- enhance the wine server protocol to grab max win size in kernel32 from 
wine server
- enhance wineconsole to set the max wine size into wine server (and to 
recompute it when there's a screen resize event)


A+



Re: [AppDB] Comment for 'Microsoft Outlook 2007' added by bayu

2013-04-08 Thread Rosanne DiMesio
On Mon, 8 Apr 2013 11:04:39 -0700
Austin English  wrote:


> >
> 
> I've deleted the comment, but trying to delete the user from the admin page
> just refreshes the page..
> 
I think the ability for admins to delete users was taken away when the AppDB 
and Bugzilla were hacked. 

There is an open bug for the lack of spam controls in the AppDB: 
http://bugs.winehq.org/show_bug.cgi?id=31973. 

-- 
Rosanne DiMesio 




Re: extrac32: Preprocess command line before passing to CommandLineToArgvW().

2013-04-08 Thread Alexandre Julliard
Sergey Guralnik  writes:

> There are two ways to solve this promlem:
> - write own parser for extrac32,
> - perform some translation for command line before
>   passing to CommandLineToArgvW().
>
> I think that second variant is more appropriate.

The first one would be cleaner.

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




Re: [AppDB] Comment for 'Microsoft Outlook 2007' added by bayu

2013-04-08 Thread Austin English
On Mon, Apr 8, 2013 at 9:41 AM, Joerg Schiermeier <
n...@schiermeier-software.de> wrote:

> On Monday, April 8, 2013 at 07:49:47 an anonymous spammer wrote into the
> AppDB:
>
> > Comment for 'Microsoft Outlook 2007' added by bayu
> >
> http://appdb.winehq.org/objectManager.php?sClass=version&iId=7533#Comment-84637
>
> (...garbage killed...)
>
> Could someone of AppDBs admin please kill this comment and the user
> 'bayu'.
>
> Thanks lot!
>
> --
>
> Kindly regards
> Joerg Schiermeier
> Bielefeld/Germany
>

I've deleted the comment, but trying to delete the user from the admin page
just refreshes the page..


-- 
-Austin



Re: wined3d: Properly handle backbuffer_width/_height=0 in wined3d_device_reset. (try 3)

2013-04-08 Thread Alexandre Julliard
Sam Edwards  writes:

> This patch differs from try 2 in formatting alone.
>
> From ac2134cfce1139cb35c4ea5c3943a870183fc2f4 Mon Sep 17 00:00:00 2001
> From: Sam Edwards 
> Date: Sat, 6 Apr 2013 18:03:34 -0600
> Subject: wined3d: Properly handle backbuffer_width/_height=0 in
>  wined3d_device_reset.

It fails here:

../../../tools/runtest -q -P wine -M d3d9.dll -T ../../.. -p d3d9_test.exe.so 
d3d9ex.c && touch d3d9ex.ok
d3d9ex.c:693: Test succeeded inside todo block: Got unexpected scissor rect {0, 
0, 200, 150}.
d3d9ex.c:701: Test succeeded inside todo block: Got unexpected vp.Width 200.
d3d9ex.c:702: Test succeeded inside todo block: Got unexpected vp.Height 150.
d3d9ex.c:710: Test succeeded inside todo block: Got unexpected backbuffer width 
200.
d3d9ex.c:711: Test succeeded inside todo block: Got unexpected backbuffer 
height 150.
make[1]: *** [d3d9ex.ok] Error 5

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




[AppDB] Comment for 'Microsoft Outlook 2007' added by bayu

2013-04-08 Thread Joerg Schiermeier
On Monday, April 8, 2013 at 07:49:47 an anonymous spammer wrote into the
AppDB:

> Comment for 'Microsoft Outlook 2007' added by bayu
> http://appdb.winehq.org/objectManager.php?sClass=version&iId=7533#Comment-84637

(...garbage killed...)

Could someone of AppDBs admin please kill this comment and the user
'bayu'.

Thanks lot!

-- 

Kindly regards
Joerg Schiermeier
Bielefeld/Germany





Re: d3dx9 [patch 1/2, resend]: Floatify fabs into fabs

2013-04-08 Thread Matteo Bruni
2013/4/7 Nozomi Kodama :
>

Both patches are fine for me (note that the email subject is missing
an "f" but the actual patch has the correct title).




Re: [PATCH v4 3/7] CIFS: Add O_DENY* open flags support

2013-04-08 Thread Pavel Shilovsky
2013/4/8 Jeff Layton :
> On Fri,  5 Apr 2013 20:57:51 +0400
> Pavel Shilovsky  wrote:
>
>> Construct share_access value from O_DENY* flags and send it to
>> the server.
>>
>> Signed-off-by: Pavel Shilovsky 
>> ---
>>  fs/cifs/cifsglob.h | 16 +++-
>>  fs/cifs/dir.c  |  3 +++
>>  fs/cifs/file.c |  4 
>>  fs/locks.c |  8 
>>  4 files changed, 30 insertions(+), 1 deletion(-)
>>
>> diff --git a/fs/cifs/cifsglob.h b/fs/cifs/cifsglob.h
>> index cd4bbf3..7e876b9 100644
>> --- a/fs/cifs/cifsglob.h
>> +++ b/fs/cifs/cifsglob.h
>> @@ -465,7 +465,7 @@ struct smb_vol {
>>CIFS_MOUNT_CIFS_BACKUPUID | CIFS_MOUNT_CIFS_BACKUPGID)
>>
>>  #define CIFS_MS_MASK (MS_RDONLY | MS_MANDLOCK | MS_NOEXEC | MS_NOSUID | \
>> -   MS_NODEV | MS_SYNCHRONOUS)
>> +   MS_NODEV | MS_SYNCHRONOUS | MS_SHARELOCK)
>>
>>  struct cifs_mnt_data {
>>   struct cifs_sb_info *cifs_sb;
>> @@ -947,6 +947,20 @@ struct cifsFileInfo {
>>   struct work_struct oplock_break; /* work for oplock breaks */
>>  };
>>
>> +static inline int
>> +cifs_get_share_flags(unsigned int flags)
>> +{
>> + int share_access = 0;
>> +
>> + if (!(flags & O_DENYREAD))
>> + share_access |= FILE_SHARE_READ;
>> + if (!(flags & O_DENYWRITE))
>> + share_access |= FILE_SHARE_WRITE;
>> + if (!(flags & O_DENYDELETE))
>> + share_access |= FILE_SHARE_DELETE;
>> + return share_access;
>> +}
>> +
>>  struct cifs_io_parms {
>>   __u16 netfid;
>>  #ifdef CONFIG_CIFS_SMB2
>> diff --git a/fs/cifs/dir.c b/fs/cifs/dir.c
>> index 267b608..d4331de 100644
>> --- a/fs/cifs/dir.c
>> +++ b/fs/cifs/dir.c
>> @@ -294,6 +294,9 @@ cifs_do_create(struct inode *inode, struct dentry 
>> *direntry, unsigned int xid,
>>   else
>>   cFYI(1, "Create flag not set in create function");
>>
>> + if (IS_SHARELOCK(inode))
>> + share_access = cifs_get_share_flags(oflags);
>> +
>>   /*
>>* BB add processing to set equivalent of mode - e.g. via CreateX with
>>* ACLs
>> diff --git a/fs/cifs/file.c b/fs/cifs/file.c
>> index 0d524a7..9394b2b 100644
>> --- a/fs/cifs/file.c
>> +++ b/fs/cifs/file.c
>> @@ -210,6 +210,8 @@ cifs_nt_open(char *full_path, struct inode *inode, 
>> struct cifs_sb_info *cifs_sb,
>>   */
>>
>>   disposition = cifs_get_disposition(f_flags);
>> + if (IS_SHARELOCK(inode))
>> + share_access = cifs_get_share_flags(f_flags);
>>
>>   /* BB pass O_SYNC flag through on file attributes .. BB */
>>
>> @@ -645,6 +647,8 @@ cifs_reopen_file(struct cifsFileInfo *cfile, bool 
>> can_flush)
>>   }
>>
>>   desired_access = cifs_convert_flags(cfile->f_flags);
>> + if (IS_SHARELOCK(inode))
>> + share_access = cifs_get_share_flags(cfile->f_flags);
>>
>>   if (backup_cred(cifs_sb))
>>   create_options |= CREATE_OPEN_BACKUP_INTENT;
>> diff --git a/fs/locks.c b/fs/locks.c
>> index 1eccc75..2184ddd 100644
>> --- a/fs/locks.c
>> +++ b/fs/locks.c
>> @@ -846,10 +846,18 @@ deny_lock_file(struct file *filp)
>>  {
>>   struct file_lock *lock;
>>   int error = 0;
>> + const char *fsname = filp->f_path.dentry->d_inode->i_sb->s_type->name;
>>
>>   if (!IS_SHARELOCK(filp->f_path.dentry->d_inode))
>>   return error;
>>
>> + /*
>> +  * Don't set a lock on CIFS file systems because they can process it
>> +  * themselves.
>> +  */
>> + if (!strncmp(fsname, "cifs", 4))
>> + return error;
>> +
>
> NAK
>
> This is really nasty. Instead of doing this, you should instead create
> a new file_system_type->fs_flags value. Then, set that flag for cifs
> and nfs4, and test it here.

It seems I missed this fs_flags opportunity. Thank you for pointing it
out - I will fix and repost.

--
Best regards,
Pavel Shilovsky.




Re: [3/13] wineconsole and kernel32: set GetLargestConsoleWindowSize based on screen resolution

2013-04-08 Thread Nikolay Sivov
On Mon, Apr 8, 2013 at 4:47 PM, Hugh McMaster <
hugh.mcmas...@masterindexing.com> wrote:

> From: Nikolay Sivov [mailto:bungleh...@gmail.com]
> Sent: Monday, 8 April 2013 11:08 PM
> To: wine-devel; Hugh McMaster
> Subject: Re: [3/13] wineconsole and kernel32: set
> GetLargestConsoleWindowSize based on screen resolution
>
> >On Mon, Apr 8, 2013 at 3:53 PM, Hugh McMaster <
> hugh.mcmas...@masterindexing.com> wrote:
> >This file recreates most, if not all, of the source found in
> dlls/advapi32/registry.c in dlls/kernel32. It provides registry
> functionality.
>
>
> >>Why do you need this?
> If I remember correctly, there were several function dependencies for the
> registry implementation I worked on.  I'm not sure of the exact number, but
> will work this out.
>
> What should I do then, though? Should I isolate the functions I need into
> a separate file? Or should the dlls/advapi32/registry.c be linked into the
> dlls/kernel32/Makefile.in?
>

If you need to access registry from kernel32 you'll need to use ntdll calls
directly.


>
> >>(not to mention that you can't just duplicate it like that)
> I'm not sure what you mean. The source remains correctly attributed as in
> the original.
>

This functionality belongs to advapi32. Do you really need anything more
than ntdll calls provide?



RE: [3/13] wineconsole and kernel32: set GetLargestConsoleWindowSize based on screen resolution

2013-04-08 Thread Hugh McMaster
From: Nikolay Sivov [mailto:bungleh...@gmail.com] 
Sent: Monday, 8 April 2013 11:08 PM
To: wine-devel; Hugh McMaster
Subject: Re: [3/13] wineconsole and kernel32: set GetLargestConsoleWindowSize 
based on screen resolution


>On Mon, Apr 8, 2013 at 3:53 PM, Hugh McMaster 
> wrote:
>This file recreates most, if not all, of the source found in 
>dlls/advapi32/registry.c in dlls/kernel32. It provides registry functionality.

>>Why do you need this? (not to mention that you can't just duplicate it like 
>>that)

Actually, let me check on this.  It doesn't make sense that there would be 
wineconsole dependencies for a completely separate DLL.




RE: [3/13] wineconsole and kernel32: set GetLargestConsoleWindowSize based on screen resolution

2013-04-08 Thread Hugh McMaster
From: Nikolay Sivov [mailto:bungleh...@gmail.com] 
Sent: Monday, 8 April 2013 11:08 PM
To: wine-devel; Hugh McMaster
Subject: Re: [3/13] wineconsole and kernel32: set GetLargestConsoleWindowSize 
based on screen resolution

>On Mon, Apr 8, 2013 at 3:53 PM, Hugh McMaster 
> wrote:
>This file recreates most, if not all, of the source found in 
>dlls/advapi32/registry.c in dlls/kernel32. It provides registry functionality.


>>Why do you need this?
If I remember correctly, there were several function dependencies for the 
registry implementation I worked on.  I'm not sure of the exact number, but 
will work this out.

What should I do then, though? Should I isolate the functions I need into a 
separate file? Or should the dlls/advapi32/registry.c be linked into the 
dlls/kernel32/Makefile.in? 

>>(not to mention that you can't just duplicate it like that)
I'm not sure what you mean. The source remains correctly attributed as in the 
original.




Re: [3/13] wineconsole and kernel32: set GetLargestConsoleWindowSize based on screen resolution

2013-04-08 Thread Nikolay Sivov
On Mon, Apr 8, 2013 at 3:53 PM, Hugh McMaster <
hugh.mcmas...@masterindexing.com> wrote:

> This file recreates most, if not all, of the source found in
> dlls/advapi32/registry.c in dlls/kernel32. It provides registry
> functionality.
>
> Tested on Linux Mint 14 and Mac OS X 10.8 (Mountain Lion).
>
> ---
>  dlls/kernel32/advapi32_registry.c | 2928
> +
>  1 file changed, 2928 insertions(+)
>  create mode 100644 dlls/kernel32/advapi32_registry.c
>
>
>
Why do you need this? (not to mention that you can't just duplicate it like
that)



Re: [1/3] include: Add COM interface definitions needed for PrintDlgEx implementation.

2013-04-08 Thread Dmitry Timoshkov
Nikolay Sivov  wrote:

> Why not use DECLARE_INTERFACE_ here?

Because it seemed simpler to me without it.

> And why bother checking UNICODE?

Please clarify.

-- 
Dmitry.




Re: [1/3] include: Add COM interface definitions needed for PrintDlgEx implementation.

2013-04-08 Thread Nikolay Sivov
Why not use DECLARE_INTERFACE_ here? And why bother checking UNICODE?


On Mon, Apr 8, 2013 at 12:10 PM, Dmitry Timoshkov  wrote:

> ---
>  dlls/uuid/uuid.c  |  1 +
>  include/commdlg.h | 80
> +++
>  2 files changed, 81 insertions(+)
>
> diff --git a/dlls/uuid/uuid.c b/dlls/uuid/uuid.c
> index fd96fe3..fb06f2d 100644
> --- a/dlls/uuid/uuid.c
> +++ b/dlls/uuid/uuid.c
> @@ -83,6 +83,7 @@ DEFINE_GUID(GUID_NULL,0,0,0,0,0,0,0,0,0,0,0);
>  #include "sensevts.h"
>  #include "ocmm.h"
>  #include "commoncontrols.h"
> +#include "commdlg.h"
>  #include "tlogstg.h"
>  #include "msdasc.h"
>
> diff --git a/include/commdlg.h b/include/commdlg.h
> index 1a6e1d9..6eeb615 100644
> --- a/include/commdlg.h
> +++ b/include/commdlg.h
> @@ -762,6 +762,86 @@ typedef struct tagPDEXW
>  DECL_WINELIB_TYPE_AW(PRINTDLGEX)
>  DECL_WINELIB_TYPE_AW(LPPRINTDLGEX)
>
> +#ifdef STDMETHOD
> +DEFINE_GUID(IID_IPrintDialogCallback,
> 0x5852a2c3,0x6530,0x11d1,0xb6,0xa3,0x00,0x00,0xf8,0x75,0x7b,0xf9);
> +typedef interface IPrintDialogCallback IPrintDialogCallback;
> +
> +#if defined(__cplusplus) && !defined(CINTERFACE)
> +MIDL_INTERFACE("5852a2c3-6530-11d1-b6a3-f8757bf9")
> +IPrintDialogCallback : public IUnknown
> +{
> +virtual HRESULT STDMETHODCALLTYPE InitDone() = 0;
> +virtual HRESULT STDMETHODCALLTYPE SelectionChange() = 0;
> +virtual HRESULT STDMETHODCALLTYPE
> HandleMessage(HWND,UINT,WPARAM,LPARAM,LRESULT *) = 0;
> +};
> +#else
> +typedef struct IPrintDialogCallbackVtbl
> +{
> +BEGIN_INTERFACE
> +
> +/*** IUnknown methods ***/
> +HRESULT (STDMETHODCALLTYPE *QueryInterface)(IPrintDialogCallback
> *This,REFIID riid,void **ppvObject);
> +ULONG (STDMETHODCALLTYPE *AddRef)(IPrintDialogCallback *This);
> +ULONG (STDMETHODCALLTYPE *Release)(IPrintDialogCallback *This);
> +/*** IPrintDialogCallback methods ***/
> +HRESULT (STDMETHODCALLTYPE *InitDone)(IPrintDialogCallback *This);
> +HRESULT (STDMETHODCALLTYPE *SelectionChange)(IPrintDialogCallback
> *This);
> +HRESULT (STDMETHODCALLTYPE *HandleMessage)(IPrintDialogCallback
> *,HWND,UINT,WPARAM,LPARAM,LRESULT *);
> +
> +END_INTERFACE
> +} IPrintDialogCallbackVtbl;
> +interface IPrintDialogCallback
> +{
> +CONST_VTBL IPrintDialogCallbackVtbl *lpVtbl;
> +};
> +#endif /* CINTERFACE */
> +
> +DEFINE_GUID(IID_IPrintDialogServices,
> 0x509aaeda,0x5639,0x11d1,0xb6,0xa1,0x00,0x00,0xf8,0x75,0x7b,0xf9);
> +typedef interface IPrintDialogServices IPrintDialogServices;
> +
> +#if defined(__cplusplus) && !defined(CINTERFACE)
> +MIDL_INTERFACE("509aaeda-5639-11d1-b6a1-f8757bf9")
> +IPrintDialogServices : public IUnknown
> +{
> +#ifdef UNICODE
> +virtual HRESULT STDMETHODCALLTYPE GetCurrentDevMode(LPDEVMODEW,UINT
> *) = 0;
> +virtual HRESULT STDMETHODCALLTYPE GetCurrentPrinterName(LPWSTR,UINT
> *) = 0;
> +virtual HRESULT STDMETHODCALLTYPE GetCurrentPortName(LPWSTR,UINT *) =
> 0;
> +#else
> +virtual HRESULT STDMETHODCALLTYPE GetCurrentDevMode(LPDEVMODEA,UINT
> *) = 0;
> +virtual HRESULT STDMETHODCALLTYPE GetCurrentPrinterName(LPSTR,UINT *)
> = 0;
> +virtual HRESULT STDMETHODCALLTYPE GetCurrentPortName(LPSTR,UINT *) =
> 0;
> +#endif
> +};
> +#else
> +typedef struct IPrintDialogServicesVtbl
> +{
> +BEGIN_INTERFACE
> +
> +/*** IUnknown methods ***/
> +HRESULT (STDMETHODCALLTYPE *QueryInterface)(IPrintDialogServices
> *This,REFIID riid,void **ppvObject);
> +ULONG (STDMETHODCALLTYPE *AddRef)(IPrintDialogServices *This);
> +ULONG (STDMETHODCALLTYPE *Release)(IPrintDialogServices *This);
> +/*** IPrintDialogServices methods ***/
> +#ifdef UNICODE
> +HRESULT (STDMETHODCALLTYPE *GetCurrentDevMode)(IPrintDialogServices
> *,LPDEVMODEW *,UINT *);
> +HRESULT (STDMETHODCALLTYPE
> *GetCurrentPrinterName)(IPrintDialogServices *,LPWSTR,UINT *);
> +HRESULT (STDMETHODCALLTYPE *GetCurrentPortName)(IPrintDialogServices
> *,LPWSTR,UINT *);
> +#else
> +HRESULT (STDMETHODCALLTYPE *GetCurrentDevMode)(IPrintDialogServices
> *,LPDEVMODEA *,UINT *);
> +HRESULT (STDMETHODCALLTYPE
> *GetCurrentPrinterName)(IPrintDialogServices *,LPSTR,UINT *);
> +HRESULT (STDMETHODCALLTYPE *GetCurrentPortName)(IPrintDialogServices
> *,LPSTR,UINT *);
> +#endif
> +
> +END_INTERFACE
> +} IPrintDialogServicesVtbl;
> +interface IPrintDialogServices
> +{
> +CONST_VTBL IPrintDialogServicesVtbl *lpVtbl;
> +};
> +#endif /* CINTERFACE */
> +#endif /* STDMETHOD */
> +
>  BOOL  WINAPI ChooseColorA(LPCHOOSECOLORA lpChCol);
>  BOOL  WINAPI ChooseColorW(LPCHOOSECOLORW lpChCol);
>  #define ChooseColor WINELIB_NAME_AW(ChooseColor)
> --
> 1.8.2
>
>
>
>



Re: [3/3] comdlg32: Add an interactive PrintDlgEx test.

2013-04-08 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=24985

Your paranoid android.


=== WINEBUILD (build) ===
Make failed




Re: [3/3] comdlg32: Add an interactive PrintDlgEx test.

2013-04-08 Thread Dmitry Timoshkov
Marvin  wrote:

> 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=24985

../../../../build-native/tools/winegcc/winegcc -b i686-pc-mingw32  
-B../../../../build-native/tools/winebuild --sysroot=../../.. 
-fasynchronous-unwind-tables  filedlg.o finddlg.o fontdlg.o itemdlg.o 
printdlg.o   rsrc.res  testlist.o -o comdlg32_test.exe 
../../../libs/port/libwine_port.a -luuid -lshell32 -lole32 -lcomdlg32 
-lwinspool -luser32 -lgdi32
printdlg.o: In function `unknown_QueryInterface':
/var/lib/winetestbot/build-mingw32/dlls/comdlg32/tests/../../../../wine-git/dlls/comdlg32/tests/printdlg.c:286:
 undefined reference to `_IID_IPrintDialogCallback'
collect2: ld returned 1 exit status
winegcc: i686-pc-mingw32-gcc failed

Build failed bacause testbot didn't take uuid.lib changes from patch [1/3]
into account.

-- 
Dmitry.




Re: extrac32: Preprocess command line before passing to CommandLineToArgvW().

2013-04-08 Thread Sergey Guralnik

On 2013-04-04 15:19, Sergey Guralnik wrote:

Playing with one application, that uses extrac32.exe,
I've found that Wine's extrac32 can't process some
command lines, that cause no problem with native one.
...


Is this patch or explanation not clear enough?
(Still marked as "New")

--
Sergey




Re: wbemprox: Implement some properties of Win32_ComputerSystem and Win32_DiskPartition.

2013-04-08 Thread Hans Leidekker
On Mon, 2013-04-08 at 01:56 +0900, Kim Jung Eon (김중언) wrote:
> @@ -241,18 +243,21 @@ static const struct column col_compsys[] =
>  { prop_modelW,CIM_STRING },
>  { prop_numlogicalprocessorsW, CIM_UINT32, VT_I4 },
>  { prop_numprocessorsW,CIM_UINT32, VT_I4 },
> -{ prop_totalphysicalmemoryW,  CIM_UINT64 }
> +{ prop_totalphysicalmemoryW,  CIM_UINT64 },
> +{ prop_nameW, CIM_STRING|COL_FLAG_DYNAMIC }

Please keep properties sorted.