Module: wine
Branch: master
Commit: 8d6dc9daa75b6eda0e82d33be2fa01b80a04f570
URL: http://source.winehq.org/git/wine.git/?a=commit;h=8d6dc9daa75b6eda0e82d33be…
Author: H. Verbeet <hverbeet(a)gmail.com>
Date: Sun Jun 29 22:49:22 2008 +0200
wined3d: Move setting a palette up a couple of lines in BltOverride().
This prevents a few failures in the ddraw tests when using FBOs due to
using P8 surfaces without a palette set.
---
dlls/wined3d/surface.c | 25 +++++++++++++++----------
1 files changed, 15 insertions(+), 10 deletions(-)
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 4b91d1f..48e13fe 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -3276,6 +3276,17 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
SourceRectangle.top = 0;
SourceRectangle.bottom = Src->currentDesc.Height;
}
+
+ /* When blitting from an offscreen surface to a rendertarget, the source
+ * surface is not required to have a palette. Our rendering / conversion
+ * code further down the road retrieves the palette from the surface, so
+ * it must have a palette set. */
+ if((Src->resource.format == WINED3DFMT_P8) && (Src->palette == NULL)) {
+ paletteOverride = TRUE;
+ TRACE("Source surface (%p) lacks palette, overriding palette with palette %p of destination surface (%p)\n", Src, This->palette, This);
+ Src->palette = This->palette;
+ }
+
if (wined3d_settings.offscreen_rendering_mode == ORM_FBO && GL_SUPPORT(EXT_FRAMEBUFFER_BLIT) &&
(Flags & (WINEDDBLT_KEYSRC | WINEDDBLT_KEYSRCOVERRIDE)) == 0) {
TRACE("Using stretch_rect_fbo\n");
@@ -3284,6 +3295,10 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
*/
stretch_rect_fbo((IWineD3DDevice *)myDevice, SrcSurface, (WINED3DRECT *) &SourceRectangle,
(IWineD3DSurface *)This, &rect, Filter, FALSE);
+
+ /* Clear the palette as the surface didn't have a palette attached, it would confuse GetPalette and other calls */
+ if(paletteOverride)
+ Src->palette = NULL;
return WINED3D_OK;
}
@@ -3313,16 +3328,6 @@ static HRESULT IWineD3DSurfaceImpl_BltOverride(IWineD3DSurfaceImpl *This, RECT *
Src->CKeyFlags &= ~WINEDDSD_CKSRCBLT;
}
- /* When blitting from an offscreen surface to a rendertarget, the source
- * surface is not required to have a palette. Our rendering / conversion
- * code further down the road retrieves the palette from the surface, so
- * it must have a palette set. */
- if((Src->resource.format == WINED3DFMT_P8) && (Src->palette == NULL)) {
- paletteOverride = TRUE;
- TRACE("Source surface (%p) lacks palette, overriding palette with palette %p of destination surface (%p)\n", Src, This->palette, This);
- Src->palette = This->palette;
- }
-
/* Now load the surface */
IWineD3DSurface_PreLoad((IWineD3DSurface *) Src);
Module: wine
Branch: master
Commit: 183f27b0c4fbfa8c6a3840e4f318a3e277b9b5a3
URL: http://source.winehq.org/git/wine.git/?a=commit;h=183f27b0c4fbfa8c6a3840e4f…
Author: Juan Lang <juan.lang(a)gmail.com>
Date: Sat Jun 28 09:38:14 2008 -0700
cryptui: Add header.
---
include/Makefile.in | 1 +
include/cryptuiapi.h | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 53 insertions(+), 0 deletions(-)
diff --git a/include/Makefile.in b/include/Makefile.in
index 54747a6..144091a 100644
--- a/include/Makefile.in
+++ b/include/Makefile.in
@@ -106,6 +106,7 @@ SRCDIR_INCLUDES = \
cor.h \
corerror.h \
cpl.h \
+ cryptuiapi.h \
custcntl.h \
cvconst.h \
d3d.h \
diff --git a/include/cryptuiapi.h b/include/cryptuiapi.h
new file mode 100644
index 0000000..1065d08
--- /dev/null
+++ b/include/cryptuiapi.h
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2008 Juan Lang
+ *
+ * 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., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
+ */
+#ifndef __CRYPTUIAPI_H__
+#define __CRYPTUIAPI_H__
+
+#include <wintrust.h>
+#include <wincrypt.h>
+#include <prsht.h>
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <pshpack8.h>
+
+BOOL WINAPI CryptUIDlgViewContext(DWORD dwContextType, LPVOID pvContext,
+ HWND hwnd, LPCWSTR pwszTitle, DWORD dwFlags, LPVOID pvReserved);
+
+/* Values for dwDontUseColumn */
+#define CRYPTUI_SELECT_ISSUEDTO_COLUMN 0x00000001
+#define CRYPTUI_SELECT_ISSUEDBY_COLUMN 0x00000002
+#define CRYPTUI_SELECT_INTENDEDUSE_COLUMN 0x00000004
+#define CRYPTUI_SELECT_FRIENDLYNAME_COLUMN 0x00000008
+#define CRYPTUI_SELECT_LOCATION_COLUMN 0x00000010
+#define CRYPTUI_SELECT_EXPIRATION_COLUMN 0x00000020
+
+PCCERT_CONTEXT WINAPI CryptUIDlgSelectCertificateFromStore(
+ HCERTSTORE hCertStore, HWND hwnd, LPCWSTR pwszTitle, LPCWSTR pwszDisplayString,
+ DWORD dwDontUseColumn, DWORD dwFlags, LPVOID pvReserved);
+
+#include <poppack.h>
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif