Module: wine Branch: refs/heads/master Commit: 1f35ff591ce9d9242b2dfa12429ddce80fe59d8b URL: http://source.winehq.org/git/?p=wine.git;a=commit;h=1f35ff591ce9d9242b2dfa12...
Author: Hans Leidekker hans@it.vu.nl Date: Sat May 20 20:57:51 2006 +0200
quartz: Add stub implementation for AMGetErrorText{A,W}.
---
dlls/quartz/main.c | 30 ++++++++++++++++++++++++++++++ dlls/quartz/quartz.spec | 4 ++-- include/Makefile.in | 1 + include/dshow.h | 2 +- include/errors.h | 40 ++++++++++++++++++++++++++++++++++++++++ 5 files changed, 74 insertions(+), 3 deletions(-) create mode 100644 include/errors.h
diff --git a/dlls/quartz/main.c b/dlls/quartz/main.c index 765d59b..6ba27e3 100644 --- a/dlls/quartz/main.c +++ b/dlls/quartz/main.c @@ -268,3 +268,33 @@ LONG WINAPI DBToAmpFactor(LONG db) return 0; return 100; } + +DWORD WINAPI AMGetErrorTextA(HRESULT hr, char *buffer, DWORD maxlen) +{ + int len; + static const char format[] = "Error: 0x%lx"; + char error[MAX_ERROR_TEXT_LEN]; + + FIXME("(%lx,%p,%ld) stub\n", hr, buffer, maxlen); + + if (!buffer) return 0; + wsprintfA(error, format, hr); + if ((len = lstrlenA(error)) >= maxlen) return 0; + lstrcpyA(buffer, error); + return len; +} + +DWORD WINAPI AMGetErrorTextW(HRESULT hr, WCHAR *buffer, DWORD maxlen) +{ + int len; + static const WCHAR format[] = {'E','r','r','o','r',':',' ','0','x','%','l','x',0}; + WCHAR error[MAX_ERROR_TEXT_LEN]; + + FIXME("(%lx,%p,%ld) stub\n", hr, buffer, maxlen); + + if (!buffer) return 0; + wsprintfW(error, format, hr); + if ((len = lstrlenW(error)) >= maxlen) return 0; + lstrcpyW(buffer, error); + return len; +} diff --git a/dlls/quartz/quartz.spec b/dlls/quartz/quartz.spec index 9491e60..7c0e2ac 100644 --- a/dlls/quartz/quartz.spec +++ b/dlls/quartz/quartz.spec @@ -1,5 +1,5 @@ -@ stub AMGetErrorTextA -@ stub AMGetErrorTextW +@ stdcall AMGetErrorTextA(long ptr long) +@ stdcall AMGetErrorTextW(long ptr long) @ stdcall AmpFactorToDB(long) @ stdcall DBToAmpFactor(long) @ stdcall -private DllCanUnloadNow() diff --git a/include/Makefile.in b/include/Makefile.in index 8fd224f..d726016 100644 --- a/include/Makefile.in +++ b/include/Makefile.in @@ -131,6 +131,7 @@ WINDOWS_INCLUDES = \ dxerr8.h \ dxerr9.h \ dxfile.h \ + errors.h \ evcode.h \ evntrace.h \ excpt.h \ diff --git a/include/dshow.h b/include/dshow.h index 9c6238b..f9c8120 100644 --- a/include/dshow.h +++ b/include/dshow.h @@ -37,7 +37,7 @@ #include <strmif.h> #include <control.h> /*#include <evcode.h>*/ #include <uuids.h> -/*#include <errors.h>*/ +#include <errors.h> #include <audevcod.h>
#ifndef OATRUE diff --git a/include/errors.h b/include/errors.h new file mode 100644 index 0000000..1c6bbab --- /dev/null +++ b/include/errors.h @@ -0,0 +1,40 @@ +/* + * Copyright (C) 2006 Hans Leidekker + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation; either + * version 2.1 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public + * License along with this library; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + */ + +#ifndef __ERRORS__ +#define __ERRORS__ + +#ifdef __cplusplus +extern "C" { +#endif + +#define VFW_FIRST_CODE 0x200 +#define MAX_ERROR_TEXT_LEN 160 + +#include <vfwmsgs.h> + +DWORD WINAPI AMGetErrorTextA(HRESULT hr, char *buffer, DWORD maxlen); +DWORD WINAPI AMGetErrorTextW(HRESULT hr, WCHAR *buffer, DWORD maxlen); + +#define AMGetErrorText WINELIB_NAME_AW(AMGetErrorText) + +#ifdef __cplusplus +} +#endif + +#endif /* __ERRORS__ */