Module: wine Branch: master Commit: 000136ac301327a85fecbd0aef788bc1629b6121 URL: http://source.winehq.org/git/wine.git/?a=commit;h=000136ac301327a85fecbd0aef...
Author: Andrey Turkin andrey.turkin@gmail.com Date: Tue Jan 13 13:49:28 2009 +0300
setupapi: Add support for DIRID_PRINTPROCESSOR.
---
dlls/setupapi/Makefile.in | 2 +- dlls/setupapi/dirid.c | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/dlls/setupapi/Makefile.in b/dlls/setupapi/Makefile.in index 91bc87b..e6d3e80 100644 --- a/dlls/setupapi/Makefile.in +++ b/dlls/setupapi/Makefile.in @@ -6,7 +6,7 @@ VPATH = @srcdir@ MODULE = setupapi.dll IMPORTLIB = setupapi IMPORTS = uuid user32 version advapi32 rpcrt4 kernel32 ntdll -DELAYIMPORTS = shell32 wintrust ole32 +DELAYIMPORTS = shell32 wintrust ole32 winspool
C_SRCS = \ devinst.c \ diff --git a/dlls/setupapi/dirid.c b/dlls/setupapi/dirid.c index 89f92fd..419f157 100644 --- a/dlls/setupapi/dirid.c +++ b/dlls/setupapi/dirid.c @@ -28,6 +28,7 @@ #include "wingdi.h" #include "winuser.h" #include "winnls.h" +#include "winspool.h" #include "setupapi.h" #include "shlobj.h" #include "wine/unicode.h" @@ -86,6 +87,7 @@ static const WCHAR *create_system_dirid( int dirid )
WCHAR buffer[MAX_PATH+32], *str; int len; + DWORD needed;
switch(dirid) { @@ -138,8 +140,14 @@ static const WCHAR *create_system_dirid( int dirid ) return get_csidl_dir(CSIDL_PROFILE); case DIRID_LOADER: return C_Root; /* FIXME */ + case DIRID_PRINTPROCESSOR: + if (!GetPrintProcessorDirectoryW(NULL, NULL, 1, (LPBYTE)buffer, sizeof(buffer), &needed)) + { + WARN( "cannot retrieve print processor directory\n" ); + return get_unknown_dirid(); + } + break; case DIRID_COLOR: /* FIXME */ - case DIRID_PRINTPROCESSOR: /* FIXME */ default: FIXME( "unknown dirid %d\n", dirid ); return get_unknown_dirid();