Module: wine
Branch: master
Commit: e64f7525b5279e93a3ac2334b430b11f2e4cd72e
URL: http://source.winehq.org/git/wine.git/?a=commit;h=e64f7525b5279e93a3ac2334b…
Author: Austin English <austinenglish(a)gmail.com>
Date: Thu Oct 29 20:55:12 2009 -0500
mshta: Add a stub program.
---
configure | 10 ++++++++++
configure.ac | 1 +
programs/mshta/Makefile.in | 15 +++++++++++++++
programs/mshta/main.c | 29 +++++++++++++++++++++++++++++
4 files changed, 55 insertions(+), 0 deletions(-)
diff --git a/configure b/configure
index 2b45c31..4cba951 100755
--- a/configure
+++ b/configure
@@ -17633,6 +17633,15 @@ programs/lodctr/Makefile: programs/lodctr/Makefile.in programs/Makeprog.rules"
ac_config_files="$ac_config_files programs/lodctr/Makefile"
ALL_MAKEFILES="$ALL_MAKEFILES \\
+ programs/mshta/Makefile"
+test "x$enable_mshta" != xno && ALL_PROGRAM_DIRS="$ALL_PROGRAM_DIRS \\
+ mshta" && ALL_PROGRAM_INSTALL_DIRS="$ALL_PROGRAM_INSTALL_DIRS \\
+ mshta"
+ALL_MAKEFILE_DEPENDS="$ALL_MAKEFILE_DEPENDS
+programs/mshta/Makefile: programs/mshta/Makefile.in programs/Makeprog.rules"
+ac_config_files="$ac_config_files programs/mshta/Makefile"
+
+ALL_MAKEFILES="$ALL_MAKEFILES \\
programs/msiexec/Makefile"
test "x$enable_msiexec" != xno && ALL_PROGRAM_DIRS="$ALL_PROGRAM_DIRS \\
msiexec" && ALL_PROGRAM_INSTALL_DIRS="$ALL_PROGRAM_INSTALL_DIRS \\
@@ -19245,6 +19254,7 @@ do
"programs/icinfo/Makefile") CONFIG_FILES="$CONFIG_FILES programs/icinfo/Makefile" ;;
"programs/iexplore/Makefile") CONFIG_FILES="$CONFIG_FILES programs/iexplore/Makefile" ;;
"programs/lodctr/Makefile") CONFIG_FILES="$CONFIG_FILES programs/lodctr/Makefile" ;;
+ "programs/mshta/Makefile") CONFIG_FILES="$CONFIG_FILES programs/mshta/Makefile" ;;
"programs/msiexec/Makefile") CONFIG_FILES="$CONFIG_FILES programs/msiexec/Makefile" ;;
"programs/net/Makefile") CONFIG_FILES="$CONFIG_FILES programs/net/Makefile" ;;
"programs/notepad/Makefile") CONFIG_FILES="$CONFIG_FILES programs/notepad/Makefile" ;;
diff --git a/configure.ac b/configure.ac
index 0974b27..58b0d75 100644
--- a/configure.ac
+++ b/configure.ac
@@ -2589,6 +2589,7 @@ WINE_CONFIG_MAKEFILE([programs/hh/Makefile],[programs/Makeprog.rules],[programs]
WINE_CONFIG_MAKEFILE([programs/icinfo/Makefile],[programs/Makeprog.rules],[programs],[ALL_PROGRAM_DIRS,ALL_PROGRAM_INSTALL_DIRS])
WINE_CONFIG_MAKEFILE([programs/iexplore/Makefile],[programs/Makeprog.rules],[programs],[ALL_PROGRAM_DIRS,ALL_PROGRAM_INSTALL_DIRS])
WINE_CONFIG_MAKEFILE([programs/lodctr/Makefile],[programs/Makeprog.rules],[programs],[ALL_PROGRAM_DIRS,ALL_PROGRAM_INSTALL_DIRS])
+WINE_CONFIG_MAKEFILE([programs/mshta/Makefile],[programs/Makeprog.rules],[programs],[ALL_PROGRAM_DIRS,ALL_PROGRAM_INSTALL_DIRS])
WINE_CONFIG_MAKEFILE([programs/msiexec/Makefile],[programs/Makeprog.rules],[programs],[ALL_PROGRAM_DIRS,ALL_PROGRAM_INSTALL_DIRS,ALL_PROGRAM_BIN_INSTALL_DIRS])
WINE_CONFIG_MAKEFILE([programs/net/Makefile],[programs/Makeprog.rules],[programs],[ALL_PROGRAM_DIRS,ALL_PROGRAM_INSTALL_DIRS])
WINE_CONFIG_MAKEFILE([programs/notepad/Makefile],[programs/Makeprog.rules],[programs],[ALL_PROGRAM_DIRS,ALL_PROGRAM_INSTALL_DIRS,ALL_PROGRAM_BIN_INSTALL_DIRS])
diff --git a/programs/mshta/Makefile.in b/programs/mshta/Makefile.in
new file mode 100644
index 0000000..2e5ee54
--- /dev/null
+++ b/programs/mshta/Makefile.in
@@ -0,0 +1,15 @@
+EXTRADEFS = -DWINE_NO_UNICODE_MACROS
+TOPSRCDIR = @top_srcdir@
+TOPOBJDIR = ../..
+SRCDIR = @srcdir@
+VPATH = @srcdir@
+MODULE = mshta.exe
+APPMODE = -mwindows -municode
+IMPORTS = kernel32
+
+C_SRCS = \
+ main.c
+
+@MAKE_PROG_RULES@
+
+@DEPENDENCIES@ # everything below this line is overwritten by make depend
diff --git a/programs/mshta/main.c b/programs/mshta/main.c
new file mode 100644
index 0000000..53baa7e
--- /dev/null
+++ b/programs/mshta/main.c
@@ -0,0 +1,29 @@
+/*
+ * MSHTA Implementation
+ *
+ * Copyright 2009 Austin English
+ *
+ * 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
+ */
+
+#define WIN32_LEAN_AND_MEAN
+#include <stdio.h>
+#include <windows.h>
+
+int WINAPI wWinMain(HINSTANCE hInst, HINSTANCE hPrevInst, LPSTR cmdline, int cmdshow)
+{
+ printf("mshta.exe is a stub!\n");
+ return 0;
+}
Module: wine
Branch: master
Commit: f8786eacb7cb886afdd068e8cfd19200459faa9b
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f8786eacb7cb886afdd068e8c…
Author: Roderick Colenbrander <thunderbird2k(a)gmail.com>
Date: Fri Oct 30 11:21:32 2009 +0100
winex11: Check format in XRender_GetSrcAreaStretch instead of depth.
---
dlls/winex11.drv/xrender.c | 5 +++--
1 files changed, 3 insertions(+), 2 deletions(-)
diff --git a/dlls/winex11.drv/xrender.c b/dlls/winex11.drv/xrender.c
index 06b2aa6..005296b 100644
--- a/dlls/winex11.drv/xrender.c
+++ b/dlls/winex11.drv/xrender.c
@@ -2103,6 +2103,7 @@ BOOL X11DRV_XRender_GetSrcAreaStretch(X11DRV_PDEVICE *physDevSrc, X11DRV_PDEVICE
int height = visRectDst->bottom - visRectDst->top;
int x_src = physDevSrc->dc_rect.left + visRectSrc->left;
int y_src = physDevSrc->dc_rect.top + visRectSrc->top;
+ struct xrender_info *src_info = get_xrender_info(physDevSrc);
const WineXRenderFormat *dst_format = get_xrender_format_from_color_shifts(physDevDst->depth, physDevDst->color_shifts);
Picture src_pict=0, dst_pict=0, mask_pict=0;
@@ -2130,8 +2131,8 @@ BOOL X11DRV_XRender_GetSrcAreaStretch(X11DRV_PDEVICE *physDevSrc, X11DRV_PDEVICE
if((physDevDst->depth == 1) && (physDevSrc->depth > 1))
return FALSE;
- /* Just use traditional X copy when the depths match and we don't need stretching */
- if((physDevSrc->depth == physDevDst->depth) && !stretch)
+ /* Just use traditional X copy when the formats match and we don't need stretching */
+ if((src_info->format->format == dst_format->format) && !stretch)
{
TRACE("Source and destination depth match and no stretching needed falling back to XCopyArea\n");
wine_tsx11_lock();
Module: wine
Branch: master
Commit: 00bbab491bb7d74f71d5855a8140f3188f438026
URL: http://source.winehq.org/git/wine.git/?a=commit;h=00bbab491bb7d74f71d5855a8…
Author: Roderick Colenbrander <thunderbird2k(a)gmail.com>
Date: Fri Oct 30 11:05:29 2009 +0100
winex11: Make sure the formats are the same instead of the depths since the bit ordering can be different.
---
dlls/winex11.drv/xrender.c | 11 +++++------
1 files changed, 5 insertions(+), 6 deletions(-)
diff --git a/dlls/winex11.drv/xrender.c b/dlls/winex11.drv/xrender.c
index 90503bf..06b2aa6 100644
--- a/dlls/winex11.drv/xrender.c
+++ b/dlls/winex11.drv/xrender.c
@@ -2063,21 +2063,20 @@ void X11DRV_XRender_CopyBrush(X11DRV_PDEVICE *physDev, X_PHYSBITMAP *physBitmap,
{
/* At depths >1, the depth of physBitmap and physDev might not be the same e.g. the physbitmap might be a 16-bit DIB while the physdev uses 24-bit */
int depth = physBitmap->pixmap_depth == 1 ? 1 : physDev->depth;
+ const WineXRenderFormat *src_format = get_xrender_format_from_color_shifts(physBitmap->pixmap_depth, &physBitmap->pixmap_color_shifts);
+ const WineXRenderFormat *dst_format = get_xrender_format_from_color_shifts(physDev->depth, physDev->color_shifts);
wine_tsx11_lock();
physDev->brush.pixmap = XCreatePixmap(gdi_display, root_window, width, height, depth);
- /* Use XCopyArea when the physBitmap and brush.pixmap have the same depth. */
- if(physBitmap->pixmap_depth == 1 || physDev->depth == physBitmap->pixmap_depth)
+ /* Use XCopyArea when the physBitmap and brush.pixmap have the same format. */
+ if(physBitmap->pixmap_depth == 1 || src_format->format == dst_format->format)
{
XCopyArea( gdi_display, physBitmap->pixmap, physDev->brush.pixmap,
get_bitmap_gc(physBitmap->pixmap_depth), 0, 0, width, height, 0, 0 );
}
- else /* We meed depth conversion */
+ else /* We need depth conversion */
{
- const WineXRenderFormat *src_format = get_xrender_format_from_color_shifts(physBitmap->pixmap_depth, &physBitmap->pixmap_color_shifts);
- const WineXRenderFormat *dst_format = get_xrender_format_from_color_shifts(physDev->depth, physDev->color_shifts);
-
Picture src_pict, dst_pict;
XRenderPictureAttributes pa;
pa.subwindow_mode = IncludeInferiors;