mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2024-09-13 09:17:20 -07:00
Rebase against 1e8759805e3c5dfe00a31bb5f13f1c1da28d2826.
This commit is contained in:
parent
f09433417e
commit
b2297b41c3
@ -85,7 +85,7 @@ for more details.*
|
||||
* Add support for process specific debug channels
|
||||
* Add support for wbemprox Win32_SystemEnclosure table ([Wine Bug #34517](https://bugs.winehq.org/show_bug.cgi?id=34517))
|
||||
* Adobe Reader needs ITextSelection_fnGetDuplicate implementation
|
||||
* Allocate fake hWnd for wineconsole curses backend ([Wine Bug #34930](https://bugs.winehq.org/show_bug.cgi?id=34930))
|
||||
* ~~Allocate fake hWnd for wineconsole curses backend~~ ([Wine Bug #34930](https://bugs.winehq.org/show_bug.cgi?id=34930))
|
||||
* Allow selection of audio device for PulseAudio backend
|
||||
* Allow special characters in pipe names ([Wine Bug #28995](https://bugs.winehq.org/show_bug.cgi?id=28995))
|
||||
* Allow to cancel a file operation via progress callback ([Wine Bug #22690](https://bugs.winehq.org/show_bug.cgi?id=22690))
|
||||
@ -108,8 +108,8 @@ for more details.*
|
||||
* Create stub files for system32/drivers/etc/{services,hosts,networks,protocol} ([Wine Bug #12076](https://bugs.winehq.org/show_bug.cgi?id=12076))
|
||||
* CreateProcess does not prioritize the working directory over the system search path ([Wine Bug #23934](https://bugs.winehq.org/show_bug.cgi?id=23934))
|
||||
* D3DCompileShader should filter specific warning messages ([Wine Bug #33770](https://bugs.winehq.org/show_bug.cgi?id=33770))
|
||||
* Dirtify vertex shader on transformed update to fix graphical corruption ([Wine Bug #38539](https://bugs.winehq.org/show_bug.cgi?id=38539))
|
||||
* Do not append duplicate NULL characters when importing keys with regedit ([Wine Bug #37575](https://bugs.winehq.org/show_bug.cgi?id=37575))
|
||||
* ~~Dirtify vertex shader on transformed update to fix graphical corruption~~ ([Wine Bug #38539](https://bugs.winehq.org/show_bug.cgi?id=38539))
|
||||
* ~~Do not append duplicate NULL characters when importing keys with regedit~~ ([Wine Bug #37575](https://bugs.winehq.org/show_bug.cgi?id=37575))
|
||||
* ~~Do not create foreign thread queues for attach_thread_input requests~~ ([Wine Bug #38562](https://bugs.winehq.org/show_bug.cgi?id=38562))
|
||||
* Do not fail when a used context is passed to wglShareLists ([Wine Bug #11436](https://bugs.winehq.org/show_bug.cgi?id=11436))
|
||||
* Emulate access to KI_USER_SHARED_DATA kernel page on x86_64 ([Wine Bug #33849](https://bugs.winehq.org/show_bug.cgi?id=33849))
|
||||
@ -176,7 +176,7 @@ for more details.*
|
||||
* Implement combase.WindowsSubstring function
|
||||
* Implement empty enumerator for IWiaDevMgr::EnumDeviceInfo ([Wine Bug #27775](https://bugs.winehq.org/show_bug.cgi?id=27775))
|
||||
* Implement exclusive mode in PulseAudio backend ([Wine Bug #37042](https://bugs.winehq.org/show_bug.cgi?id=37042))
|
||||
* Implement kernel32.GetSystemTimePreciseAsFileTime ([Wine Bug #38513](https://bugs.winehq.org/show_bug.cgi?id=38513))
|
||||
* ~~Implement kernel32.GetSystemTimePreciseAsFileTime~~ ([Wine Bug #38513](https://bugs.winehq.org/show_bug.cgi?id=38513))
|
||||
* Implement locking and synchronization of key states ([Wine Bug #31899](https://bugs.winehq.org/show_bug.cgi?id=31899))
|
||||
* Implement mscoree._CorValidateImage for mono runtime
|
||||
* Implement ntoskrnl driver testing framework.
|
||||
|
8
debian/changelog
vendored
8
debian/changelog
vendored
@ -9,6 +9,14 @@ wine-staging (1.7.44) UNRELEASED; urgency=low
|
||||
(accepted upstream).
|
||||
* Removed patch to fix memory leak in wininet cookie handling (accepted
|
||||
upstream).
|
||||
* Removed patch to allocate fake hWnd for wineconsole curses backend (accepted
|
||||
upstream).
|
||||
* Removed patch to dirtify vertex shader on transformed update (accepted
|
||||
upstream).
|
||||
* Removed patch to avoid appending duplicate NULL characters when importing
|
||||
keys with regedit (accepted upstream).
|
||||
* Removed patch to implement kernel32.GetSystemTimePreciseAsFileTime (accepted
|
||||
upstream).
|
||||
* Removed various patches containing tests (accepted upstream).
|
||||
* Partially removed patches for ITextFont/ITextPara implementation (fixed
|
||||
upstream).
|
||||
|
@ -1,93 +0,0 @@
|
||||
From 59136b0d18daced5dcfc77744cbd20425273a2a0 Mon Sep 17 00:00:00 2001
|
||||
From: Martin Storsjo <martin@martin.st>
|
||||
Date: Thu, 7 May 2015 23:02:34 +0300
|
||||
Subject: kernel32: Implement GetSystemTimePreciseAsFileTime
|
||||
|
||||
This just falls back to doing the same as GetSystemTimeAsFileTime.
|
||||
---
|
||||
.../api-ms-win-core-sysinfo-l1-2-0.spec | 2 +-
|
||||
.../api-ms-win-core-sysinfo-l1-2-1.spec | 2 +-
|
||||
dlls/kernel32/kernel32.spec | 1 +
|
||||
dlls/kernel32/time.c | 15 +++++++++++++++
|
||||
include/winbase.h | 1 +
|
||||
5 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec b/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec
|
||||
index d3df6bd..9b05674 100644
|
||||
--- a/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec
|
||||
+++ b/dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec
|
||||
@@ -14,7 +14,7 @@
|
||||
@ stdcall GetSystemTime(ptr) kernel32.GetSystemTime
|
||||
@ stdcall GetSystemTimeAdjustment(ptr ptr ptr) kernel32.GetSystemTimeAdjustment
|
||||
@ stdcall GetSystemTimeAsFileTime(ptr) kernel32.GetSystemTimeAsFileTime
|
||||
-@ stub GetSystemTimePreciseAsFileTime
|
||||
+@ stdcall GetSystemTimePreciseAsFileTime(ptr) kernel32.GetSystemTimePreciseAsFileTime
|
||||
@ stdcall GetSystemWindowsDirectoryA(ptr long) kernel32.GetSystemWindowsDirectoryA
|
||||
@ stdcall GetSystemWindowsDirectoryW(ptr long) kernel32.GetSystemWindowsDirectoryW
|
||||
@ stdcall GetTickCount() kernel32.GetTickCount
|
||||
diff --git a/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec b/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec
|
||||
index 29262c5..018ab05 100644
|
||||
--- a/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec
|
||||
+++ b/dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-core-sysinfo-l1-2-1.spec
|
||||
@@ -16,7 +16,7 @@
|
||||
@ stdcall GetSystemTime(ptr) kernel32.GetSystemTime
|
||||
@ stdcall GetSystemTimeAdjustment(ptr ptr ptr) kernel32.GetSystemTimeAdjustment
|
||||
@ stdcall GetSystemTimeAsFileTime(ptr) kernel32.GetSystemTimeAsFileTime
|
||||
-@ stub GetSystemTimePreciseAsFileTime
|
||||
+@ stdcall GetSystemTimePreciseAsFileTime(ptr) kernel32.GetSystemTimePreciseAsFileTime
|
||||
@ stdcall GetSystemWindowsDirectoryA(ptr long) kernel32.GetSystemWindowsDirectoryA
|
||||
@ stdcall GetSystemWindowsDirectoryW(ptr long) kernel32.GetSystemWindowsDirectoryW
|
||||
@ stdcall -ret64 GetTickCount64() kernel32.GetTickCount64
|
||||
diff --git a/dlls/kernel32/kernel32.spec b/dlls/kernel32/kernel32.spec
|
||||
index 1261738..8f6a13e 100644
|
||||
--- a/dlls/kernel32/kernel32.spec
|
||||
+++ b/dlls/kernel32/kernel32.spec
|
||||
@@ -829,6 +829,7 @@
|
||||
@ stdcall GetSystemTime(ptr)
|
||||
@ stdcall GetSystemTimeAdjustment(ptr ptr ptr)
|
||||
@ stdcall GetSystemTimeAsFileTime(ptr)
|
||||
+@ stdcall GetSystemTimePreciseAsFileTime(ptr)
|
||||
@ stdcall GetSystemTimes(ptr ptr ptr)
|
||||
@ stdcall GetSystemWindowsDirectoryA(ptr long)
|
||||
@ stdcall GetSystemWindowsDirectoryW(ptr long)
|
||||
diff --git a/dlls/kernel32/time.c b/dlls/kernel32/time.c
|
||||
index 2b8e1d9..daafc7f 100644
|
||||
--- a/dlls/kernel32/time.c
|
||||
+++ b/dlls/kernel32/time.c
|
||||
@@ -548,6 +548,21 @@ VOID WINAPI GetSystemTimeAsFileTime(
|
||||
}
|
||||
|
||||
|
||||
+/***********************************************************************
|
||||
+ * GetSystemTimePreciseAsFileTime (KERNEL32.@)
|
||||
+ *
|
||||
+ * Get the current time in utc format, with <1 us precision.
|
||||
+ *
|
||||
+ * RETURNS
|
||||
+ * Nothing.
|
||||
+ */
|
||||
+VOID WINAPI GetSystemTimePreciseAsFileTime(
|
||||
+ LPFILETIME time) /* [out] Destination for the current utc time */
|
||||
+{
|
||||
+ GetSystemTimeAsFileTime(time);
|
||||
+}
|
||||
+
|
||||
+
|
||||
/*********************************************************************
|
||||
* TIME_ClockTimeToFileTime (olorin@fandra.org, 20-Sep-1998)
|
||||
*
|
||||
diff --git a/include/winbase.h b/include/winbase.h
|
||||
index a8f3fb6..7540e6d 100644
|
||||
--- a/include/winbase.h
|
||||
+++ b/include/winbase.h
|
||||
@@ -2040,6 +2040,7 @@ WINBASEAPI BOOL WINAPI GetSystemRegistryQuota(PDWORD,PDWORD);
|
||||
WINBASEAPI VOID WINAPI GetSystemTime(LPSYSTEMTIME);
|
||||
WINBASEAPI BOOL WINAPI GetSystemTimeAdjustment(PDWORD,PDWORD,PBOOL);
|
||||
WINBASEAPI VOID WINAPI GetSystemTimeAsFileTime(LPFILETIME);
|
||||
+WINBASEAPI VOID WINAPI GetSystemTimePreciseAsFileTime(LPFILETIME);
|
||||
WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryA(LPSTR,UINT);
|
||||
WINBASEAPI UINT WINAPI GetSystemWindowsDirectoryW(LPWSTR,UINT);
|
||||
#define GetSystemWindowsDirectory WINELIB_NAME_AW(GetSystemWindowsDirectory)
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,2 +0,0 @@
|
||||
Fixes: [38513] Implement kernel32.GetSystemTimePreciseAsFileTime
|
||||
Category: stable
|
@ -1,14 +1,14 @@
|
||||
From 599947d1aaf88c78ed5affe2609c431db14bccd4 Mon Sep 17 00:00:00 2001
|
||||
From 25af9ecd4fb4120ca415afd27079b749a11b6537 Mon Sep 17 00:00:00 2001
|
||||
From: Louis Lenders <xerox_xerox2000@yahoo.co.uk>
|
||||
Date: Sun, 27 Jul 2014 11:42:28 -0600
|
||||
Subject: kernel32: Add tests for GetSystemTimes.
|
||||
|
||||
---
|
||||
dlls/kernel32/tests/time.c | 76 ++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 76 insertions(+)
|
||||
dlls/kernel32/tests/time.c | 77 ++++++++++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 77 insertions(+)
|
||||
|
||||
diff --git a/dlls/kernel32/tests/time.c b/dlls/kernel32/tests/time.c
|
||||
index 378941d..1937e65 100644
|
||||
index d205174..5b0bf69 100644
|
||||
--- a/dlls/kernel32/tests/time.c
|
||||
+++ b/dlls/kernel32/tests/time.c
|
||||
@@ -22,9 +22,11 @@
|
||||
@ -23,10 +23,10 @@ index 378941d..1937e65 100644
|
||||
static int (WINAPI *pGetCalendarInfoA)(LCID,CALID,CALTYPE,LPSTR,int,LPDWORD);
|
||||
static int (WINAPI *pGetCalendarInfoW)(LCID,CALID,CALTYPE,LPWSTR,int,LPDWORD);
|
||||
static DWORD (WINAPI *pGetDynamicTimeZoneInformation)(DYNAMIC_TIME_ZONE_INFORMATION*);
|
||||
@@ -760,12 +762,85 @@ static void test_GetDynamicTimeZoneInformation(void)
|
||||
ok(dyninfo.TimeZoneKeyName[0] != 0, "got empty tz keyname\n");
|
||||
trace("Dyn TimeZoneKeyName %s\n", wine_dbgstr_w(dyninfo.TimeZoneKeyName));
|
||||
@@ -801,11 +803,85 @@ static void test_GetSystemTimePreciseAsFileTime(void)
|
||||
ok(diff < 10000 && diff > 0, "GetSystemTimePreciseAsFileTime incremented by more than 1 ms\n");
|
||||
}
|
||||
|
||||
+static void test_GetSystemTimes(void)
|
||||
+{
|
||||
+
|
||||
@ -99,7 +99,7 @@ index 378941d..1937e65 100644
|
||||
+
|
||||
+ HeapFree(GetProcessHeap(), 0, sppi);
|
||||
+}
|
||||
|
||||
+
|
||||
START_TEST(time)
|
||||
{
|
||||
HMODULE hKernel = GetModuleHandleA("kernel32");
|
||||
@ -109,7 +109,7 @@ index 378941d..1937e65 100644
|
||||
pGetCalendarInfoA = (void *)GetProcAddress(hKernel, "GetCalendarInfoA");
|
||||
pGetCalendarInfoW = (void *)GetProcAddress(hKernel, "GetCalendarInfoW");
|
||||
pGetDynamicTimeZoneInformation = (void *)GetProcAddress(hKernel, "GetDynamicTimeZoneInformation");
|
||||
@@ -776,6 +851,7 @@ START_TEST(time)
|
||||
@@ -817,6 +893,7 @@ START_TEST(time)
|
||||
test_FileTimeToSystemTime();
|
||||
test_FileTimeToLocalFileTime();
|
||||
test_TzSpecificLocalTimeToSystemTime();
|
||||
|
@ -55,7 +55,7 @@ version()
|
||||
echo "Copyright (C) 2014-2015 the Wine Staging project authors."
|
||||
echo ""
|
||||
echo "Patchset to be applied on upstream Wine:"
|
||||
echo " commit f4790714fe69df7701cff666d6b5ab4be049cbf6"
|
||||
echo " commit 1e8759805e3c5dfe00a31bb5f13f1c1da28d2826"
|
||||
echo ""
|
||||
}
|
||||
|
||||
@ -135,7 +135,6 @@ patch_enable_all ()
|
||||
enable_kernel32_GetFinalPathNameByHandle="$1"
|
||||
enable_kernel32_GetLogicalProcessorInformationEx="$1"
|
||||
enable_kernel32_GetNumaProcessorNode="$1"
|
||||
enable_kernel32_GetSystemTimePreciseAsFileTime="$1"
|
||||
enable_kernel32_GetSystemTimes="$1"
|
||||
enable_kernel32_GetVolumePathName="$1"
|
||||
enable_kernel32_Named_Pipe="$1"
|
||||
@ -194,7 +193,6 @@ patch_enable_all ()
|
||||
enable_ole32_CoWaitForMultipleHandles="$1"
|
||||
enable_opengl32_Revert_Disable_Ext="$1"
|
||||
enable_quartz_MediaSeeking_Positions="$1"
|
||||
enable_regedit_String_Termination="$1"
|
||||
enable_riched20_IText_Interface="$1"
|
||||
enable_rpcrt4_Use_After_Free="$1"
|
||||
enable_secur32_ANSI_NTLM_Credentials="$1"
|
||||
@ -254,11 +252,9 @@ patch_enable_all ()
|
||||
enable_winecfg_Libraries="$1"
|
||||
enable_winecfg_Staging="$1"
|
||||
enable_winecfg_Unmounted_Devices="$1"
|
||||
enable_wineconsole_Curses_Fake_Wnd="$1"
|
||||
enable_wined3d_CSMT_Helper="$1"
|
||||
enable_wined3d_CSMT_Main="$1"
|
||||
enable_wined3d_DXTn="$1"
|
||||
enable_wined3d_Dirtify_Vertex_Shader="$1"
|
||||
enable_wined3d_Multisampling="$1"
|
||||
enable_wined3d_Revert_PixelFormat="$1"
|
||||
enable_wined3d_UnhandledBlendFactor="$1"
|
||||
@ -471,9 +467,6 @@ patch_enable ()
|
||||
kernel32-GetNumaProcessorNode)
|
||||
enable_kernel32_GetNumaProcessorNode="$2"
|
||||
;;
|
||||
kernel32-GetSystemTimePreciseAsFileTime)
|
||||
enable_kernel32_GetSystemTimePreciseAsFileTime="$2"
|
||||
;;
|
||||
kernel32-GetSystemTimes)
|
||||
enable_kernel32_GetSystemTimes="$2"
|
||||
;;
|
||||
@ -648,9 +641,6 @@ patch_enable ()
|
||||
quartz-MediaSeeking_Positions)
|
||||
enable_quartz_MediaSeeking_Positions="$2"
|
||||
;;
|
||||
regedit-String_Termination)
|
||||
enable_regedit_String_Termination="$2"
|
||||
;;
|
||||
riched20-IText_Interface)
|
||||
enable_riched20_IText_Interface="$2"
|
||||
;;
|
||||
@ -828,9 +818,6 @@ patch_enable ()
|
||||
winecfg-Unmounted_Devices)
|
||||
enable_winecfg_Unmounted_Devices="$2"
|
||||
;;
|
||||
wineconsole-Curses_Fake_Wnd)
|
||||
enable_wineconsole_Curses_Fake_Wnd="$2"
|
||||
;;
|
||||
wined3d-CSMT_Helper)
|
||||
enable_wined3d_CSMT_Helper="$2"
|
||||
;;
|
||||
@ -840,9 +827,6 @@ patch_enable ()
|
||||
wined3d-DXTn)
|
||||
enable_wined3d_DXTn="$2"
|
||||
;;
|
||||
wined3d-Dirtify_Vertex_Shader)
|
||||
enable_wined3d_Dirtify_Vertex_Shader="$2"
|
||||
;;
|
||||
wined3d-Multisampling)
|
||||
enable_wined3d_Multisampling="$2"
|
||||
;;
|
||||
@ -1361,9 +1345,6 @@ if test "$enable_category_stable" -eq 1; then
|
||||
if test "$enable_kernel32_CompareStringEx" -gt 1; then
|
||||
abort "Patchset kernel32-CompareStringEx disabled, but category-stable depends on that."
|
||||
fi
|
||||
if test "$enable_kernel32_GetSystemTimePreciseAsFileTime" -gt 1; then
|
||||
abort "Patchset kernel32-GetSystemTimePreciseAsFileTime disabled, but category-stable depends on that."
|
||||
fi
|
||||
if test "$enable_kernel32_Named_Pipe" -gt 1; then
|
||||
abort "Patchset kernel32-Named_Pipe disabled, but category-stable depends on that."
|
||||
fi
|
||||
@ -1439,9 +1420,6 @@ if test "$enable_category_stable" -eq 1; then
|
||||
if test "$enable_opengl32_Revert_Disable_Ext" -gt 1; then
|
||||
abort "Patchset opengl32-Revert_Disable_Ext disabled, but category-stable depends on that."
|
||||
fi
|
||||
if test "$enable_regedit_String_Termination" -gt 1; then
|
||||
abort "Patchset regedit-String_Termination disabled, but category-stable depends on that."
|
||||
fi
|
||||
if test "$enable_server_Address_List_Change" -gt 1; then
|
||||
abort "Patchset server-Address_List_Change disabled, but category-stable depends on that."
|
||||
fi
|
||||
@ -1505,9 +1483,6 @@ if test "$enable_category_stable" -eq 1; then
|
||||
if test "$enable_winecfg_Libraries" -gt 1; then
|
||||
abort "Patchset winecfg-Libraries disabled, but category-stable depends on that."
|
||||
fi
|
||||
if test "$enable_wined3d_Dirtify_Vertex_Shader" -gt 1; then
|
||||
abort "Patchset wined3d-Dirtify_Vertex_Shader disabled, but category-stable depends on that."
|
||||
fi
|
||||
if test "$enable_wined3d_Multisampling" -gt 1; then
|
||||
abort "Patchset wined3d-Multisampling disabled, but category-stable depends on that."
|
||||
fi
|
||||
@ -1586,7 +1561,6 @@ if test "$enable_category_stable" -eq 1; then
|
||||
enable_gdi32_MaxPixelFormats=1
|
||||
enable_gdiplus_GdipCreateEffect=1
|
||||
enable_kernel32_CompareStringEx=1
|
||||
enable_kernel32_GetSystemTimePreciseAsFileTime=1
|
||||
enable_kernel32_Named_Pipe=1
|
||||
enable_libs_Debug_Channel=1
|
||||
enable_libs_Unicode_Collation=1
|
||||
@ -1612,7 +1586,6 @@ if test "$enable_category_stable" -eq 1; then
|
||||
enable_ntdll_WriteWatches=1
|
||||
enable_ntoskrnl_Emulator=1
|
||||
enable_opengl32_Revert_Disable_Ext=1
|
||||
enable_regedit_String_Termination=1
|
||||
enable_server_Address_List_Change=1
|
||||
enable_server_ClipCursor=1
|
||||
enable_server_CreateProcess_ACLs=1
|
||||
@ -1634,7 +1607,6 @@ if test "$enable_category_stable" -eq 1; then
|
||||
enable_wineboot_MachineGuid=1
|
||||
enable_winebuild_LinkerVersion=1
|
||||
enable_winecfg_Libraries=1
|
||||
enable_wined3d_Dirtify_Vertex_Shader=1
|
||||
enable_wined3d_Multisampling=1
|
||||
enable_wined3d_Revert_PixelFormat=1
|
||||
enable_wined3d_UnhandledBlendFactor=1
|
||||
@ -1811,13 +1783,6 @@ if test "$enable_kernel32_CopyFileEx" -eq 1; then
|
||||
enable_ntdll_FileDispositionInformation=1
|
||||
fi
|
||||
|
||||
if test "$enable_kernel32_SetFileInformationByHandle" -eq 1; then
|
||||
if test "$enable_kernel32_SetFileCompletionNotificationMode" -gt 1; then
|
||||
abort "Patchset kernel32-SetFileCompletionNotificationMode disabled, but kernel32-SetFileInformationByHandle depends on that."
|
||||
fi
|
||||
enable_kernel32_SetFileCompletionNotificationMode=1
|
||||
fi
|
||||
|
||||
if test "$enable_ntdll_FileDispositionInformation" -eq 1; then
|
||||
if test "$enable_server_File_Permissions" -gt 1; then
|
||||
abort "Patchset server-File_Permissions disabled, but ntdll-FileDispositionInformation depends on that."
|
||||
@ -1825,6 +1790,13 @@ if test "$enable_ntdll_FileDispositionInformation" -eq 1; then
|
||||
enable_server_File_Permissions=1
|
||||
fi
|
||||
|
||||
if test "$enable_kernel32_SetFileInformationByHandle" -eq 1; then
|
||||
if test "$enable_kernel32_SetFileCompletionNotificationMode" -gt 1; then
|
||||
abort "Patchset kernel32-SetFileCompletionNotificationMode disabled, but kernel32-SetFileInformationByHandle depends on that."
|
||||
fi
|
||||
enable_kernel32_SetFileCompletionNotificationMode=1
|
||||
fi
|
||||
|
||||
if test "$enable_dxva2_Video_Decoder" -eq 1; then
|
||||
if test "$enable_winecfg_Staging" -gt 1; then
|
||||
abort "Patchset winecfg-Staging disabled, but dxva2-Video_Decoder depends on that."
|
||||
@ -2057,6 +2029,23 @@ if test "$enable_advapi32_ImpersonateAnonymousToken" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset server-Misc_ACL
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#15980] GetSecurityInfo returns NULL DACL for process object
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/advapi32/tests/security.c, server/process.c, server/security.h, server/token.c
|
||||
# |
|
||||
if test "$enable_server_Misc_ACL" -eq 1; then
|
||||
patch_apply server-Misc_ACL/0001-server-Add-default-security-descriptor-ownership-for.patch
|
||||
patch_apply server-Misc_ACL/0002-server-Add-default-security-descriptor-DACL-for-proc.patch
|
||||
(
|
||||
echo '+ { "Erich E. Hoover", "server: Add default security descriptor ownership for processes.", 1 },';
|
||||
echo '+ { "Erich E. Hoover", "server: Add default security descriptor DACL for processes.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset server-CreateProcess_ACLs
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -2076,23 +2065,6 @@ if test "$enable_server_CreateProcess_ACLs" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset server-Misc_ACL
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#15980] GetSecurityInfo returns NULL DACL for process object
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/advapi32/tests/security.c, server/process.c, server/security.h, server/token.c
|
||||
# |
|
||||
if test "$enable_server_Misc_ACL" -eq 1; then
|
||||
patch_apply server-Misc_ACL/0001-server-Add-default-security-descriptor-ownership-for.patch
|
||||
patch_apply server-Misc_ACL/0002-server-Add-default-security-descriptor-DACL-for-proc.patch
|
||||
(
|
||||
echo '+ { "Erich E. Hoover", "server: Add default security descriptor ownership for processes.", 1 },';
|
||||
echo '+ { "Erich E. Hoover", "server: Add default security descriptor DACL for processes.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset advapi32-LsaLookupSids
|
||||
# |
|
||||
# | Modified files:
|
||||
@ -2758,21 +2730,6 @@ if test "$enable_wined3d_CSMT_Helper" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wined3d-Dirtify_Vertex_Shader
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#38539] Dirtify vertex shader on transformed update to fix graphical corruption
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/wined3d/glsl_shader.c
|
||||
# |
|
||||
if test "$enable_wined3d_Dirtify_Vertex_Shader" -eq 1; then
|
||||
patch_apply wined3d-Dirtify_Vertex_Shader/0001-wined3d-Dirtify-vertex-shader-on-transformed-untrans.patch
|
||||
(
|
||||
echo '+ { "Matteo Bruni", "wined3d: Dirtify vertex shader on transformed <-> untransformed transition.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wined3d-Multisampling
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -3464,6 +3421,36 @@ if test "$enable_kernel32_CompareStringEx" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-SetFileCompletionNotificationMode
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#38493] Add stub for kernel32.SetFileCompletionNotificationModes (for Steam in Win7 mode)
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/api-ms-win-core-kernel32-legacy-l1-1-0/api-ms-win-core-kernel32-legacy-l1-1-0.spec, dlls/kernel32/file.c,
|
||||
# | dlls/kernel32/kernel32.spec, include/winbase.h
|
||||
# |
|
||||
if test "$enable_kernel32_SetFileCompletionNotificationMode" -eq 1; then
|
||||
patch_apply kernel32-SetFileCompletionNotificationMode/0001-kernel32-Implement-SetFileCompletionNotificationMode.patch
|
||||
(
|
||||
echo '+ { "Olivier F. R. Dierick", "kernel32: Implement SetFileCompletionNotificationModes as a stub.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-SetFileInformationByHandle
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/kernel32/file.c, include/winbase.h
|
||||
# |
|
||||
if test "$enable_kernel32_SetFileInformationByHandle" -eq 1; then
|
||||
patch_apply kernel32-SetFileInformationByHandle/0001-include-Declare-a-couple-more-file-information-class.patch
|
||||
patch_apply kernel32-SetFileInformationByHandle/0002-kernel32-Implement-SetFileInformationByHandle.patch
|
||||
(
|
||||
echo '+ { "Michael Müller", "include: Declare a couple more file information class structures.", 1 },';
|
||||
echo '+ { "Michael Müller", "kernel32: Implement SetFileInformationByHandle.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset server-File_Permissions
|
||||
# |
|
||||
# | Modified files:
|
||||
@ -3505,36 +3492,6 @@ if test "$enable_ntdll_FileDispositionInformation" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-SetFileCompletionNotificationMode
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#38493] Add stub for kernel32.SetFileCompletionNotificationModes (for Steam in Win7 mode)
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/api-ms-win-core-kernel32-legacy-l1-1-0/api-ms-win-core-kernel32-legacy-l1-1-0.spec, dlls/kernel32/file.c,
|
||||
# | dlls/kernel32/kernel32.spec, include/winbase.h
|
||||
# |
|
||||
if test "$enable_kernel32_SetFileCompletionNotificationMode" -eq 1; then
|
||||
patch_apply kernel32-SetFileCompletionNotificationMode/0001-kernel32-Implement-SetFileCompletionNotificationMode.patch
|
||||
(
|
||||
echo '+ { "Olivier F. R. Dierick", "kernel32: Implement SetFileCompletionNotificationModes as a stub.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-SetFileInformationByHandle
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/kernel32/file.c, include/winbase.h
|
||||
# |
|
||||
if test "$enable_kernel32_SetFileInformationByHandle" -eq 1; then
|
||||
patch_apply kernel32-SetFileInformationByHandle/0001-include-Declare-a-couple-more-file-information-class.patch
|
||||
patch_apply kernel32-SetFileInformationByHandle/0002-kernel32-Implement-SetFileInformationByHandle.patch
|
||||
(
|
||||
echo '+ { "Michael Müller", "include: Declare a couple more file information class structures.", 1 },';
|
||||
echo '+ { "Michael Müller", "kernel32: Implement SetFileInformationByHandle.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-CopyFileEx
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -3594,22 +3551,6 @@ if test "$enable_kernel32_GetNumaProcessorNode" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-GetSystemTimePreciseAsFileTime
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#38513] Implement kernel32.GetSystemTimePreciseAsFileTime
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * dlls/api-ms-win-core-sysinfo-l1-2-0/api-ms-win-core-sysinfo-l1-2-0.spec, dlls/api-ms-win-core-sysinfo-l1-2-1/api-ms-win-
|
||||
# | core-sysinfo-l1-2-1.spec, dlls/kernel32/kernel32.spec, dlls/kernel32/time.c, include/winbase.h
|
||||
# |
|
||||
if test "$enable_kernel32_GetSystemTimePreciseAsFileTime" -eq 1; then
|
||||
patch_apply kernel32-GetSystemTimePreciseAsFileTime/0001-kernel32-Implement-GetSystemTimePreciseAsFileTime.patch
|
||||
(
|
||||
echo '+ { "Martin Storsjo", "kernel32: Implement GetSystemTimePreciseAsFileTime.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset kernel32-GetSystemTimes
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -4579,21 +4520,6 @@ if test "$enable_quartz_MediaSeeking_Positions" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset regedit-String_Termination
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#37575] Do not append duplicate NULL characters when importing keys with regedit
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * programs/regedit/regproc.c
|
||||
# |
|
||||
if test "$enable_regedit_String_Termination" -eq 1; then
|
||||
patch_apply regedit-String_Termination/0001-regedit-Avoid-appending-and-0-to-string-value-of-imp.patch
|
||||
(
|
||||
echo '+ { "Jiaxing Wang", "regedit: Avoid appending '\''\\\\0'\'' to string value of imported key.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset riched20-IText_Interface
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
@ -5472,21 +5398,6 @@ if test "$enable_winecfg_Unmounted_Devices" -eq 1; then
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset wineconsole-Curses_Fake_Wnd
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
# | * [#34930] Allocate fake hWnd for wineconsole curses backend
|
||||
# |
|
||||
# | Modified files:
|
||||
# | * programs/wineconsole/curses.c
|
||||
# |
|
||||
if test "$enable_wineconsole_Curses_Fake_Wnd" -eq 1; then
|
||||
patch_apply wineconsole-Curses_Fake_Wnd/0001-wineconsole-Allocate-fake-hwnds-for-curses-backend.patch
|
||||
(
|
||||
echo '+ { "Sebastian Lackner", "wineconsole: Allocate fake hwnds for curses backend.", 1 },';
|
||||
) >> "$patchlist"
|
||||
fi
|
||||
|
||||
# Patchset winedevice-Fix_Relocation
|
||||
# |
|
||||
# | This patchset fixes the following Wine bugs:
|
||||
|
@ -1,38 +0,0 @@
|
||||
From ec88679b1ecd54f40dccaf374ca21bb96441a18a Mon Sep 17 00:00:00 2001
|
||||
From: Jiaxing Wang <hello.wjx@gmail.com>
|
||||
Date: Thu, 20 Nov 2014 15:29:07 +0800
|
||||
Subject: regedit: Avoid appending '\0' to string value of imported key.
|
||||
|
||||
After importing, string values are appended with '\0'.
|
||||
For example, importing:
|
||||
|
||||
[HKEY_LOCAL_MACHINE\testkey]
|
||||
"value"="abc"
|
||||
|
||||
gets
|
||||
|
||||
[HKEY_LOCAL_MACHINE\testkey]
|
||||
"value"="abc\0"
|
||||
|
||||
This is because the null character after last quote is included
|
||||
which is not needed as the last quote has been changed to '\0' and
|
||||
dwLen already include the last quote.
|
||||
---
|
||||
programs/regedit/regproc.c | 1 -
|
||||
1 file changed, 1 deletion(-)
|
||||
|
||||
diff --git a/programs/regedit/regproc.c b/programs/regedit/regproc.c
|
||||
index 80beb21..643b559 100644
|
||||
--- a/programs/regedit/regproc.c
|
||||
+++ b/programs/regedit/regproc.c
|
||||
@@ -376,7 +376,6 @@ static LONG setValue(WCHAR* val_name, WCHAR* val_data, BOOL is_unicode)
|
||||
return ERROR_INVALID_DATA;
|
||||
val_data[dwLen-1] = '\0'; /* remove last quotes */
|
||||
lpbData = (BYTE*) val_data;
|
||||
- dwLen++; /* include terminating null */
|
||||
dwLen = dwLen * sizeof(WCHAR); /* size is in bytes */
|
||||
}
|
||||
else if (dwParseType == REG_DWORD) /* Convert the dword types */
|
||||
--
|
||||
2.2.1
|
||||
|
@ -1,2 +0,0 @@
|
||||
Fixes: [37575] Do not append duplicate NULL characters when importing keys with regedit
|
||||
Category: stable
|
@ -1,4 +1,4 @@
|
||||
From c75a9af77ea3cc0abea38a7c595b52093b4d166a Mon Sep 17 00:00:00 2001
|
||||
From 5dac9e4ab5b7df2ab94e2338b425b83249515169 Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Fri, 8 Aug 2014 21:32:57 +0800
|
||||
Subject: riched20: Implement IText{Selection, Range}::Set{Start, End}.
|
||||
@ -9,10 +9,10 @@ Subject: riched20: Implement IText{Selection, Range}::Set{Start, End}.
|
||||
2 files changed, 177 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index 4f85325..55dda9b 100644
|
||||
index c9c75b8..64579a6 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -2995,14 +2995,33 @@ static HRESULT WINAPI ITextSelection_fnGetStart(ITextSelection *me, LONG *pcpFir
|
||||
@@ -3233,14 +3233,33 @@ static HRESULT WINAPI ITextSelection_fnGetStart(ITextSelection *me, LONG *pcpFir
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@ -48,7 +48,7 @@ index 4f85325..55dda9b 100644
|
||||
}
|
||||
|
||||
static HRESULT WINAPI ITextSelection_fnGetEnd(ITextSelection *me, LONG *pcpLim)
|
||||
@@ -3019,14 +3038,33 @@ static HRESULT WINAPI ITextSelection_fnGetEnd(ITextSelection *me, LONG *pcpLim)
|
||||
@@ -3257,14 +3276,33 @@ static HRESULT WINAPI ITextSelection_fnGetEnd(ITextSelection *me, LONG *pcpLim)
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
@ -83,12 +83,12 @@ index 4f85325..55dda9b 100644
|
||||
+ return hres;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI ITextSelection_fnGetFont(ITextSelection *me, ITextFont **pFont)
|
||||
static HRESULT WINAPI ITextSelection_fnGetFont(ITextSelection *me, ITextFont **font)
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index d826298..9a52f78 100644
|
||||
index a47d31f..a553519 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1347,6 +1347,137 @@ todo_wine {
|
||||
@@ -1415,6 +1415,137 @@ todo_wine {
|
||||
release_interfaces(&hwnd, &reOle, &doc, NULL);
|
||||
}
|
||||
|
||||
@ -226,7 +226,7 @@ index d826298..9a52f78 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1359,12 +1490,16 @@ START_TEST(richole)
|
||||
@@ -1427,12 +1558,16 @@ START_TEST(richole)
|
||||
test_ITextSelection_GetText();
|
||||
test_ITextSelection_GetChar();
|
||||
test_ITextSelection_GetStart_GetEnd();
|
||||
|
@ -1,80 +1,27 @@
|
||||
From 3dbb76ac15c52c9d190f7dc9c0ebf1aa9849d033 Mon Sep 17 00:00:00 2001
|
||||
From cc36959dd99ee77266b9b93d759934124457abc3 Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Mon, 11 Aug 2014 13:51:55 +0800
|
||||
Subject: riched20: Stub for ITextFont interface and implement
|
||||
ITextRange::GetFont and ITextSelection::GetFont.
|
||||
|
||||
---
|
||||
dlls/riched20/richole.c | 361 ++++++++++++++++++++++++++++++++++++++++--
|
||||
dlls/riched20/tests/richole.c | 93 +++++++++++
|
||||
2 files changed, 438 insertions(+), 16 deletions(-)
|
||||
dlls/riched20/richole.c | 220 +++++++++++++++++++++++++++++++++++++++++-
|
||||
dlls/riched20/tests/richole.c | 93 ++++++++++++++++++
|
||||
2 files changed, 312 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index b3566e5..54448f5 100644
|
||||
index 64579a6..71fb311 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -52,6 +52,7 @@ DEFINE_GUID(IID_ITextPara, 0x8cc497c4, 0xa1df, 0x11ce, 0x80, 0x98, 0x00, 0xaa, 0
|
||||
typedef struct ITextSelectionImpl ITextSelectionImpl;
|
||||
typedef struct IOleClientSiteImpl IOleClientSiteImpl;
|
||||
typedef struct ITextRangeImpl ITextRangeImpl;
|
||||
+typedef struct ITextFontImpl ITextFontImpl;
|
||||
|
||||
typedef struct IRichEditOleImpl {
|
||||
IUnknown IUnknown_inner;
|
||||
@@ -87,6 +88,7 @@ typedef struct ITextFontImpl {
|
||||
LONG ref;
|
||||
|
||||
ITextRange *range;
|
||||
+ ITextSelection *selection;
|
||||
} ITextFontImpl;
|
||||
|
||||
typedef struct ITextParaImpl {
|
||||
@@ -150,7 +152,7 @@ static inline ITextParaImpl *impl_from_ITextPara(ITextPara *iface)
|
||||
return CONTAINING_RECORD(iface, ITextParaImpl, ITextPara_iface);
|
||||
}
|
||||
|
||||
-static HRESULT create_textfont(ITextRange*, ITextFont**);
|
||||
+static HRESULT create_textfont(ITextRange*, ITextSelection*, ITextFont**);
|
||||
static HRESULT create_textpara(ITextRange*, ITextPara**);
|
||||
|
||||
enum textfont_prop_id {
|
||||
@@ -1108,7 +1110,7 @@ static HRESULT WINAPI ITextRange_fnGetFont(ITextRange *me, ITextFont **font)
|
||||
if (!font)
|
||||
return E_INVALIDARG;
|
||||
|
||||
- return create_textfont(me, font);
|
||||
+ return create_textfont(me, NULL, font);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI ITextRange_fnSetFont(ITextRange *me, ITextFont *pFont)
|
||||
@@ -1632,16 +1634,39 @@ static ULONG WINAPI TextFont_Release(ITextFont *iface)
|
||||
|
||||
if (!ref)
|
||||
{
|
||||
- ITextRange_Release(This->range);
|
||||
+ if (This->range)
|
||||
+ ITextRange_Release(This->range);
|
||||
+ if (This->selection)
|
||||
+ ITextSelection_Release(This->selection);
|
||||
heap_free(This);
|
||||
}
|
||||
|
||||
@@ -1749,9 +1749,21 @@ static ULONG WINAPI TextFont_Release(ITextFont *iface)
|
||||
return ref;
|
||||
}
|
||||
|
||||
+static IRichEditOleImpl *font_get_reole(ITextFontImpl *This)
|
||||
+{
|
||||
+ if (This->range)
|
||||
+ {
|
||||
+ ITextRangeImpl *rng = impl_from_ITextRange(This->range);
|
||||
+ return rng->reOle;
|
||||
+ }
|
||||
+ if (This->selection)
|
||||
+ {
|
||||
+ ITextSelectionImpl *sel = impl_from_ITextSelection(This->selection);
|
||||
+ return sel->reOle;
|
||||
+ }
|
||||
+ return NULL;
|
||||
+ IRichEditOleImpl *reole;
|
||||
+ ITextRange_QueryInterface(This->range, &IID_Igetrichole, (void**)&reole);
|
||||
+ return reole;
|
||||
+}
|
||||
+
|
||||
static HRESULT WINAPI TextFont_GetTypeInfoCount(ITextFont *iface, UINT *pctinfo)
|
||||
@ -88,7 +35,7 @@ index b3566e5..54448f5 100644
|
||||
*pctinfo = 0;
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
@@ -1649,14 +1674,24 @@ static HRESULT WINAPI TextFont_GetTypeInfoCount(ITextFont *iface, UINT *pctinfo)
|
||||
@@ -1759,14 +1771,24 @@ static HRESULT WINAPI TextFont_GetTypeInfoCount(ITextFont *iface, UINT *pctinfo)
|
||||
static HRESULT WINAPI TextFont_GetTypeInfo(ITextFont *iface, UINT iTInfo, LCID lcid,
|
||||
ITypeInfo **ppTInfo)
|
||||
{
|
||||
@ -113,7 +60,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1671,7 +1706,12 @@ static HRESULT WINAPI TextFont_Invoke(
|
||||
@@ -1781,7 +1803,12 @@ static HRESULT WINAPI TextFont_Invoke(
|
||||
EXCEPINFO *pExcepInfo,
|
||||
UINT *puArgErr)
|
||||
{
|
||||
@ -126,7 +73,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1679,6 +1719,10 @@ static HRESULT WINAPI TextFont_GetDuplicate(ITextFont *iface, ITextFont **ret)
|
||||
@@ -1789,6 +1816,10 @@ static HRESULT WINAPI TextFont_GetDuplicate(ITextFont *iface, ITextFont **ret)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, ret);
|
||||
@ -137,7 +84,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1686,6 +1730,10 @@ static HRESULT WINAPI TextFont_SetDuplicate(ITextFont *iface, ITextFont *pFont)
|
||||
@@ -1796,6 +1827,10 @@ static HRESULT WINAPI TextFont_SetDuplicate(ITextFont *iface, ITextFont *pFont)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, pFont);
|
||||
@ -148,7 +95,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1693,6 +1741,10 @@ static HRESULT WINAPI TextFont_CanChange(ITextFont *iface, LONG *ret)
|
||||
@@ -1803,6 +1838,10 @@ static HRESULT WINAPI TextFont_CanChange(ITextFont *iface, LONG *ret)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, ret);
|
||||
@ -159,7 +106,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1700,6 +1752,10 @@ static HRESULT WINAPI TextFont_IsEqual(ITextFont *iface, ITextFont *font, LONG *
|
||||
@@ -1810,6 +1849,10 @@ static HRESULT WINAPI TextFont_IsEqual(ITextFont *iface, ITextFont *font, LONG *
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, ret);
|
||||
@ -170,7 +117,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1707,6 +1763,10 @@ static HRESULT WINAPI TextFont_Reset(ITextFont *iface, LONG value)
|
||||
@@ -1817,6 +1860,10 @@ static HRESULT WINAPI TextFont_Reset(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p): stub\n", This);
|
||||
@ -181,7 +128,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1714,6 +1774,10 @@ static HRESULT WINAPI TextFont_GetStyle(ITextFont *iface, LONG *value)
|
||||
@@ -1824,6 +1871,10 @@ static HRESULT WINAPI TextFont_GetStyle(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -192,7 +139,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1721,6 +1785,10 @@ static HRESULT WINAPI TextFont_SetStyle(ITextFont *iface, LONG value)
|
||||
@@ -1831,6 +1882,10 @@ static HRESULT WINAPI TextFont_SetStyle(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -203,7 +150,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1728,6 +1796,10 @@ static HRESULT WINAPI TextFont_GetAllCaps(ITextFont *iface, LONG *value)
|
||||
@@ -1838,6 +1893,10 @@ static HRESULT WINAPI TextFont_GetAllCaps(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -214,7 +161,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1735,6 +1807,10 @@ static HRESULT WINAPI TextFont_SetAllCaps(ITextFont *iface, LONG value)
|
||||
@@ -1845,6 +1904,10 @@ static HRESULT WINAPI TextFont_SetAllCaps(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -225,7 +172,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1742,6 +1818,10 @@ static HRESULT WINAPI TextFont_GetAnimation(ITextFont *iface, LONG *value)
|
||||
@@ -1852,6 +1915,10 @@ static HRESULT WINAPI TextFont_GetAnimation(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -236,7 +183,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1749,6 +1829,10 @@ static HRESULT WINAPI TextFont_SetAnimation(ITextFont *iface, LONG value)
|
||||
@@ -1859,6 +1926,10 @@ static HRESULT WINAPI TextFont_SetAnimation(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -247,7 +194,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1756,6 +1840,10 @@ static HRESULT WINAPI TextFont_GetBackColor(ITextFont *iface, LONG *value)
|
||||
@@ -1866,6 +1937,10 @@ static HRESULT WINAPI TextFont_GetBackColor(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -258,7 +205,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1763,6 +1851,10 @@ static HRESULT WINAPI TextFont_SetBackColor(ITextFont *iface, LONG value)
|
||||
@@ -1873,6 +1948,10 @@ static HRESULT WINAPI TextFont_SetBackColor(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -269,28 +216,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1770,13 +1862,30 @@ static HRESULT WINAPI TextFont_GetBold(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
TRACE("(%p)->(%p)\n", This, value);
|
||||
- return get_textfont_prop(This->range, FONT_BOLD, value);
|
||||
+
|
||||
+ if (This->range)
|
||||
+ return get_textfont_prop(This->range, FONT_BOLD, value);
|
||||
+
|
||||
+ if (!value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = tomUndefined;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ FIXME("not implemented\n");
|
||||
+ return E_NOTIMPL;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetBold(ITextFont *iface, LONG value)
|
||||
@@ -1887,6 +1966,10 @@ static HRESULT WINAPI TextFont_SetBold(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -301,7 +227,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1784,6 +1893,10 @@ static HRESULT WINAPI TextFont_GetEmboss(ITextFont *iface, LONG *value)
|
||||
@@ -1894,6 +1977,10 @@ static HRESULT WINAPI TextFont_GetEmboss(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -312,7 +238,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1791,6 +1904,10 @@ static HRESULT WINAPI TextFont_SetEmboss(ITextFont *iface, LONG value)
|
||||
@@ -1901,6 +1988,10 @@ static HRESULT WINAPI TextFont_SetEmboss(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -323,25 +249,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1798,13 +1915,27 @@ static HRESULT WINAPI TextFont_GetForeColor(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ if (!value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = tomUndefined;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ *value = tomAutoColor;
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetForeColor(ITextFont *iface, LONG value)
|
||||
@@ -1915,6 +2006,10 @@ static HRESULT WINAPI TextFont_SetForeColor(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -352,7 +260,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1812,6 +1943,10 @@ static HRESULT WINAPI TextFont_GetHidden(ITextFont *iface, LONG *value)
|
||||
@@ -1922,6 +2017,10 @@ static HRESULT WINAPI TextFont_GetHidden(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -363,7 +271,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1819,6 +1954,10 @@ static HRESULT WINAPI TextFont_SetHidden(ITextFont *iface, LONG value)
|
||||
@@ -1929,6 +2028,10 @@ static HRESULT WINAPI TextFont_SetHidden(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -374,7 +282,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1826,6 +1965,10 @@ static HRESULT WINAPI TextFont_GetEngrave(ITextFont *iface, LONG *value)
|
||||
@@ -1936,6 +2039,10 @@ static HRESULT WINAPI TextFont_GetEngrave(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -385,7 +293,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1833,6 +1976,10 @@ static HRESULT WINAPI TextFont_SetEngrave(ITextFont *iface, LONG value)
|
||||
@@ -1943,6 +2050,10 @@ static HRESULT WINAPI TextFont_SetEngrave(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -396,28 +304,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1840,13 +1987,30 @@ static HRESULT WINAPI TextFont_GetItalic(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
TRACE("(%p)->(%p)\n", This, value);
|
||||
- return get_textfont_prop(This->range, FONT_ITALIC, value);
|
||||
+
|
||||
+ if (This->range)
|
||||
+ return get_textfont_prop(This->range, FONT_ITALIC, value);
|
||||
+
|
||||
+ if (!value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = tomUndefined;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ FIXME("not implemented\n");
|
||||
+ return E_NOTIMPL;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetItalic(ITextFont *iface, LONG value)
|
||||
@@ -1957,6 +2068,10 @@ static HRESULT WINAPI TextFont_SetItalic(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -428,7 +315,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1854,6 +2018,10 @@ static HRESULT WINAPI TextFont_GetKerning(ITextFont *iface, FLOAT *value)
|
||||
@@ -1964,6 +2079,10 @@ static HRESULT WINAPI TextFont_GetKerning(ITextFont *iface, FLOAT *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -439,7 +326,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1861,6 +2029,10 @@ static HRESULT WINAPI TextFont_SetKerning(ITextFont *iface, FLOAT value)
|
||||
@@ -1971,6 +2090,10 @@ static HRESULT WINAPI TextFont_SetKerning(ITextFont *iface, FLOAT value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%.2f): stub\n", This, value);
|
||||
@ -450,18 +337,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1868,6 +2040,10 @@ static HRESULT WINAPI TextFont_GetLanguageID(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1875,20 +2051,40 @@ static HRESULT WINAPI TextFont_SetLanguageID(ITextFont *iface, LONG value)
|
||||
@@ -1985,20 +2108,39 @@ static HRESULT WINAPI TextFont_SetLanguageID(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -476,7 +352,6 @@ index b3566e5..54448f5 100644
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
+ static const WCHAR font[] = {'S', 'y', 's', 't', 'e', 'm', 0};
|
||||
+
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
@ -503,7 +378,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1896,6 +2092,10 @@ static HRESULT WINAPI TextFont_GetOutline(ITextFont *iface, LONG *value)
|
||||
@@ -2006,6 +2148,10 @@ static HRESULT WINAPI TextFont_GetOutline(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -514,7 +389,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1903,6 +2103,10 @@ static HRESULT WINAPI TextFont_SetOutline(ITextFont *iface, LONG value)
|
||||
@@ -2013,6 +2159,10 @@ static HRESULT WINAPI TextFont_SetOutline(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -525,7 +400,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1910,6 +2114,10 @@ static HRESULT WINAPI TextFont_GetPosition(ITextFont *iface, FLOAT *value)
|
||||
@@ -2020,6 +2170,10 @@ static HRESULT WINAPI TextFont_GetPosition(ITextFont *iface, FLOAT *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -536,7 +411,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1917,6 +2125,10 @@ static HRESULT WINAPI TextFont_SetPosition(ITextFont *iface, FLOAT value)
|
||||
@@ -2027,6 +2181,10 @@ static HRESULT WINAPI TextFont_SetPosition(ITextFont *iface, FLOAT value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%.2f): stub\n", This, value);
|
||||
@ -547,7 +422,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1924,6 +2136,10 @@ static HRESULT WINAPI TextFont_GetProtected(ITextFont *iface, LONG *value)
|
||||
@@ -2034,6 +2192,10 @@ static HRESULT WINAPI TextFont_GetProtected(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -558,7 +433,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1931,6 +2147,10 @@ static HRESULT WINAPI TextFont_SetProtected(ITextFont *iface, LONG value)
|
||||
@@ -2041,6 +2203,10 @@ static HRESULT WINAPI TextFont_SetProtected(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -569,7 +444,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1938,6 +2158,10 @@ static HRESULT WINAPI TextFont_GetShadow(ITextFont *iface, LONG *value)
|
||||
@@ -2048,6 +2214,10 @@ static HRESULT WINAPI TextFont_GetShadow(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -580,7 +455,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1945,6 +2169,10 @@ static HRESULT WINAPI TextFont_SetShadow(ITextFont *iface, LONG value)
|
||||
@@ -2055,6 +2225,10 @@ static HRESULT WINAPI TextFont_SetShadow(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -591,25 +466,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1952,13 +2180,27 @@ static HRESULT WINAPI TextFont_GetSize(ITextFont *iface, FLOAT *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ if (!value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = 0.0;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ *value = 12.0;
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetSize(ITextFont *iface, FLOAT value)
|
||||
@@ -2069,6 +2243,10 @@ static HRESULT WINAPI TextFont_SetSize(ITextFont *iface, FLOAT value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%.2f): stub\n", This, value);
|
||||
@ -620,7 +477,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1966,6 +2208,10 @@ static HRESULT WINAPI TextFont_GetSmallCaps(ITextFont *iface, LONG *value)
|
||||
@@ -2076,6 +2254,10 @@ static HRESULT WINAPI TextFont_GetSmallCaps(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -631,7 +488,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1973,6 +2219,10 @@ static HRESULT WINAPI TextFont_SetSmallCaps(ITextFont *iface, LONG value)
|
||||
@@ -2083,6 +2265,10 @@ static HRESULT WINAPI TextFont_SetSmallCaps(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -642,7 +499,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1980,6 +2230,10 @@ static HRESULT WINAPI TextFont_GetSpacing(ITextFont *iface, FLOAT *value)
|
||||
@@ -2090,6 +2276,10 @@ static HRESULT WINAPI TextFont_GetSpacing(ITextFont *iface, FLOAT *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -653,7 +510,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1987,6 +2241,10 @@ static HRESULT WINAPI TextFont_SetSpacing(ITextFont *iface, FLOAT value)
|
||||
@@ -2097,6 +2287,10 @@ static HRESULT WINAPI TextFont_SetSpacing(ITextFont *iface, FLOAT value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%.2f): stub\n", This, value);
|
||||
@ -664,25 +521,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1994,13 +2252,27 @@ static HRESULT WINAPI TextFont_GetStrikeThrough(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ if (!value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = tomUndefined;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ *value = tomFalse;
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetStrikeThrough(ITextFont *iface, LONG value)
|
||||
@@ -2111,6 +2305,10 @@ static HRESULT WINAPI TextFont_SetStrikeThrough(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -693,25 +532,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2008,13 +2280,27 @@ static HRESULT WINAPI TextFont_GetSubscript(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ if (!value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = tomUndefined;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ *value = tomFalse;
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetSubscript(ITextFont *iface, LONG value)
|
||||
@@ -2125,6 +2323,10 @@ static HRESULT WINAPI TextFont_SetSubscript(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -722,25 +543,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2022,13 +2308,27 @@ static HRESULT WINAPI TextFont_GetSuperscript(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ if (value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = tomUndefined;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ *value = tomFalse;
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetSuperscript(ITextFont *iface, LONG value)
|
||||
@@ -2139,6 +2341,10 @@ static HRESULT WINAPI TextFont_SetSuperscript(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -751,25 +554,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2036,13 +2336,27 @@ static HRESULT WINAPI TextFont_GetUnderline(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
- return E_NOTIMPL;
|
||||
+
|
||||
+ if (!value)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ *value = tomUndefined;
|
||||
+
|
||||
+ if (!font_get_reole(This))
|
||||
+ return CO_E_RELEASED;
|
||||
+
|
||||
+ *value = tomNone;
|
||||
+ return S_OK;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI TextFont_SetUnderline(ITextFont *iface, LONG value)
|
||||
@@ -2153,6 +2359,10 @@ static HRESULT WINAPI TextFont_SetUnderline(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -780,7 +565,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2050,6 +2364,10 @@ static HRESULT WINAPI TextFont_GetWeight(ITextFont *iface, LONG *value)
|
||||
@@ -2160,6 +2370,10 @@ static HRESULT WINAPI TextFont_GetWeight(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%p): stub\n", This, value);
|
||||
@ -791,7 +576,7 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2057,6 +2375,10 @@ static HRESULT WINAPI TextFont_SetWeight(ITextFont *iface, LONG value)
|
||||
@@ -2167,6 +2381,10 @@ static HRESULT WINAPI TextFont_SetWeight(ITextFont *iface, LONG value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
FIXME("(%p)->(%d): stub\n", This, value);
|
||||
@ -802,50 +587,11 @@ index b3566e5..54448f5 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2125,7 +2447,7 @@ static ITextFontVtbl textfontvtbl = {
|
||||
TextFont_SetWeight
|
||||
};
|
||||
|
||||
-static HRESULT create_textfont(ITextRange *range, ITextFont **ret)
|
||||
+static HRESULT create_textfont(ITextRange *range, ITextSelection *selection, ITextFont **ret)
|
||||
{
|
||||
ITextFontImpl *font;
|
||||
|
||||
@@ -2137,7 +2459,9 @@ static HRESULT create_textfont(ITextRange *range, ITextFont **ret)
|
||||
font->ITextFont_iface.lpVtbl = &textfontvtbl;
|
||||
font->ref = 1;
|
||||
font->range = range;
|
||||
- ITextRange_AddRef(range);
|
||||
+ font->selection = selection;
|
||||
+ if (range) ITextRange_AddRef(range);
|
||||
+ if (selection) ITextSelection_AddRef(selection);
|
||||
|
||||
*ret = &font->ITextFont_iface;
|
||||
return S_OK;
|
||||
@@ -3191,11 +3515,16 @@ static HRESULT WINAPI ITextSelection_fnSetEnd(ITextSelection *me, LONG cpLim)
|
||||
static HRESULT WINAPI ITextSelection_fnGetFont(ITextSelection *me, ITextFont **pFont)
|
||||
{
|
||||
ITextSelectionImpl *This = impl_from_ITextSelection(me);
|
||||
+
|
||||
+ TRACE("(%p)->(%p)\n", This, pFont);
|
||||
+
|
||||
if (!This->reOle)
|
||||
return CO_E_RELEASED;
|
||||
|
||||
- FIXME("not implemented\n");
|
||||
- return E_NOTIMPL;
|
||||
+ if (!pFont)
|
||||
+ return E_INVALIDARG;
|
||||
+
|
||||
+ return create_textfont(NULL, me, pFont);
|
||||
}
|
||||
|
||||
static HRESULT WINAPI ITextSelection_fnSetFont(ITextSelection *me, ITextFont *pFont)
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index e9ae68b..070b05a 100644
|
||||
index a553519..40577b3 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1506,6 +1506,97 @@ static void test_ITextSelection_SetEnd(void)
|
||||
@@ -1546,6 +1546,97 @@ static void test_ITextSelection_SetEnd(void)
|
||||
release_interfaces(&w, &reOle, &txtDoc, &txtSel);
|
||||
}
|
||||
|
||||
@ -943,7 +689,7 @@ index e9ae68b..070b05a 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1521,6 +1612,7 @@ START_TEST(richole)
|
||||
@@ -1561,6 +1652,7 @@ START_TEST(richole)
|
||||
test_ITextSelection_SetStart();
|
||||
test_ITextSelection_SetEnd();
|
||||
test_ITextSelection_Collapse();
|
||||
@ -951,7 +697,7 @@ index e9ae68b..070b05a 100644
|
||||
test_ITextDocument_Range();
|
||||
test_ITextRange_GetChar();
|
||||
test_ITextRange_GetStart_GetEnd();
|
||||
@@ -1528,6 +1620,7 @@ START_TEST(richole)
|
||||
@@ -1568,6 +1660,7 @@ START_TEST(richole)
|
||||
test_ITextRange_Collapse();
|
||||
test_ITextRange_SetStart();
|
||||
test_ITextRange_SetEnd();
|
||||
|
@ -1,27 +1,19 @@
|
||||
From 41df8655376ce017e80ba6970a9400ff875f0ec5 Mon Sep 17 00:00:00 2001
|
||||
From 4fb5a547a488fe7e1e1acfc090ae0e919f7f0e65 Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Sun, 10 Aug 2014 22:17:57 +0800
|
||||
Subject: riched20: Stub for ITextPara interface and implement
|
||||
ITextRange::GetPara.
|
||||
|
||||
---
|
||||
dlls/riched20/richole.c | 223 ++++++++++++++++++++++++++++++++++++++++++
|
||||
dlls/riched20/richole.c | 222 ++++++++++++++++++++++++++++++++++++++++++
|
||||
dlls/riched20/tests/richole.c | 47 +++++++++
|
||||
2 files changed, 270 insertions(+)
|
||||
2 files changed, 269 insertions(+)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index 54448f5..6db9775 100644
|
||||
index 71fb311..f664616 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -53,6 +53,7 @@ typedef struct ITextSelectionImpl ITextSelectionImpl;
|
||||
typedef struct IOleClientSiteImpl IOleClientSiteImpl;
|
||||
typedef struct ITextRangeImpl ITextRangeImpl;
|
||||
typedef struct ITextFontImpl ITextFontImpl;
|
||||
+typedef struct ITextParaImpl ITextParaImpl;
|
||||
|
||||
typedef struct IRichEditOleImpl {
|
||||
IUnknown IUnknown_inner;
|
||||
@@ -2511,9 +2512,24 @@ static ULONG WINAPI TextPara_Release(ITextPara *iface)
|
||||
@@ -2515,9 +2515,24 @@ static ULONG WINAPI TextPara_Release(ITextPara *iface)
|
||||
return ref;
|
||||
}
|
||||
|
||||
@ -46,7 +38,7 @@ index 54448f5..6db9775 100644
|
||||
*pctinfo = 0;
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
@@ -2521,14 +2537,24 @@ static HRESULT WINAPI TextPara_GetTypeInfoCount(ITextPara *iface, UINT *pctinfo)
|
||||
@@ -2525,14 +2540,24 @@ static HRESULT WINAPI TextPara_GetTypeInfoCount(ITextPara *iface, UINT *pctinfo)
|
||||
static HRESULT WINAPI TextPara_GetTypeInfo(ITextPara *iface, UINT iTInfo, LCID lcid,
|
||||
ITypeInfo **ppTInfo)
|
||||
{
|
||||
@ -71,7 +63,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2543,7 +2569,12 @@ static HRESULT WINAPI TextPara_Invoke(
|
||||
@@ -2547,7 +2572,12 @@ static HRESULT WINAPI TextPara_Invoke(
|
||||
EXCEPINFO *pExcepInfo,
|
||||
UINT *puArgErr)
|
||||
{
|
||||
@ -84,7 +76,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2551,6 +2582,10 @@ static HRESULT WINAPI TextPara_GetDuplicate(ITextPara *iface, ITextPara **ret)
|
||||
@@ -2555,6 +2585,10 @@ static HRESULT WINAPI TextPara_GetDuplicate(ITextPara *iface, ITextPara **ret)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, ret);
|
||||
@ -95,7 +87,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2558,6 +2593,10 @@ static HRESULT WINAPI TextPara_SetDuplicate(ITextPara *iface, ITextPara *para)
|
||||
@@ -2562,6 +2596,10 @@ static HRESULT WINAPI TextPara_SetDuplicate(ITextPara *iface, ITextPara *para)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, para);
|
||||
@ -106,7 +98,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2565,6 +2604,10 @@ static HRESULT WINAPI TextPara_CanChange(ITextPara *iface, LONG *ret)
|
||||
@@ -2569,6 +2607,10 @@ static HRESULT WINAPI TextPara_CanChange(ITextPara *iface, LONG *ret)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, ret);
|
||||
@ -117,7 +109,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2572,6 +2615,10 @@ static HRESULT WINAPI TextPara_IsEqual(ITextPara *iface, ITextPara *para, LONG *
|
||||
@@ -2576,6 +2618,10 @@ static HRESULT WINAPI TextPara_IsEqual(ITextPara *iface, ITextPara *para, LONG *
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p %p)\n", This, para, ret);
|
||||
@ -128,7 +120,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2579,6 +2626,10 @@ static HRESULT WINAPI TextPara_Reset(ITextPara *iface, LONG value)
|
||||
@@ -2583,6 +2629,10 @@ static HRESULT WINAPI TextPara_Reset(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -139,7 +131,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2586,6 +2637,10 @@ static HRESULT WINAPI TextPara_GetStyle(ITextPara *iface, LONG *value)
|
||||
@@ -2590,6 +2640,10 @@ static HRESULT WINAPI TextPara_GetStyle(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -150,7 +142,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2593,6 +2648,10 @@ static HRESULT WINAPI TextPara_SetStyle(ITextPara *iface, LONG value)
|
||||
@@ -2597,6 +2651,10 @@ static HRESULT WINAPI TextPara_SetStyle(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -161,7 +153,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2600,6 +2659,10 @@ static HRESULT WINAPI TextPara_GetAlignment(ITextPara *iface, LONG *value)
|
||||
@@ -2604,6 +2662,10 @@ static HRESULT WINAPI TextPara_GetAlignment(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -172,7 +164,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2607,6 +2670,10 @@ static HRESULT WINAPI TextPara_SetAlignment(ITextPara *iface, LONG value)
|
||||
@@ -2611,6 +2673,10 @@ static HRESULT WINAPI TextPara_SetAlignment(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -183,7 +175,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2614,6 +2681,10 @@ static HRESULT WINAPI TextPara_GetHyphenation(ITextPara *iface, LONG *value)
|
||||
@@ -2618,6 +2684,10 @@ static HRESULT WINAPI TextPara_GetHyphenation(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -194,7 +186,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2621,6 +2692,10 @@ static HRESULT WINAPI TextPara_SetHyphenation(ITextPara *iface, LONG value)
|
||||
@@ -2625,6 +2695,10 @@ static HRESULT WINAPI TextPara_SetHyphenation(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -205,7 +197,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2628,6 +2703,10 @@ static HRESULT WINAPI TextPara_GetFirstLineIndent(ITextPara *iface, FLOAT *value
|
||||
@@ -2632,6 +2706,10 @@ static HRESULT WINAPI TextPara_GetFirstLineIndent(ITextPara *iface, FLOAT *value
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -216,7 +208,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2635,6 +2714,10 @@ static HRESULT WINAPI TextPara_GetKeepTogether(ITextPara *iface, LONG *value)
|
||||
@@ -2639,6 +2717,10 @@ static HRESULT WINAPI TextPara_GetKeepTogether(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -227,7 +219,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2642,6 +2725,10 @@ static HRESULT WINAPI TextPara_SetKeepTogether(ITextPara *iface, LONG value)
|
||||
@@ -2646,6 +2728,10 @@ static HRESULT WINAPI TextPara_SetKeepTogether(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -238,7 +230,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2649,6 +2736,10 @@ static HRESULT WINAPI TextPara_GetKeepWithNext(ITextPara *iface, LONG *value)
|
||||
@@ -2653,6 +2739,10 @@ static HRESULT WINAPI TextPara_GetKeepWithNext(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -249,7 +241,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2656,6 +2747,10 @@ static HRESULT WINAPI TextPara_SetKeepWithNext(ITextPara *iface, LONG value)
|
||||
@@ -2660,6 +2750,10 @@ static HRESULT WINAPI TextPara_SetKeepWithNext(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -260,7 +252,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2663,6 +2758,10 @@ static HRESULT WINAPI TextPara_GetLeftIndent(ITextPara *iface, FLOAT *value)
|
||||
@@ -2667,6 +2761,10 @@ static HRESULT WINAPI TextPara_GetLeftIndent(ITextPara *iface, FLOAT *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -271,7 +263,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2670,6 +2769,10 @@ static HRESULT WINAPI TextPara_GetLineSpacing(ITextPara *iface, FLOAT *value)
|
||||
@@ -2674,6 +2772,10 @@ static HRESULT WINAPI TextPara_GetLineSpacing(ITextPara *iface, FLOAT *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -282,7 +274,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2677,6 +2780,10 @@ static HRESULT WINAPI TextPara_GetLineSpacingRule(ITextPara *iface, LONG *value)
|
||||
@@ -2681,6 +2783,10 @@ static HRESULT WINAPI TextPara_GetLineSpacingRule(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -293,7 +285,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2684,6 +2791,10 @@ static HRESULT WINAPI TextPara_GetListAlignment(ITextPara *iface, LONG *value)
|
||||
@@ -2688,6 +2794,10 @@ static HRESULT WINAPI TextPara_GetListAlignment(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -304,7 +296,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2691,6 +2802,10 @@ static HRESULT WINAPI TextPara_SetListAlignment(ITextPara *iface, LONG value)
|
||||
@@ -2695,6 +2805,10 @@ static HRESULT WINAPI TextPara_SetListAlignment(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -315,7 +307,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2698,6 +2813,10 @@ static HRESULT WINAPI TextPara_GetListLevelIndex(ITextPara *iface, LONG *value)
|
||||
@@ -2702,6 +2816,10 @@ static HRESULT WINAPI TextPara_GetListLevelIndex(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -326,7 +318,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2705,6 +2824,10 @@ static HRESULT WINAPI TextPara_SetListLevelIndex(ITextPara *iface, LONG value)
|
||||
@@ -2709,6 +2827,10 @@ static HRESULT WINAPI TextPara_SetListLevelIndex(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -337,7 +329,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2712,6 +2835,10 @@ static HRESULT WINAPI TextPara_GetListStart(ITextPara *iface, LONG *value)
|
||||
@@ -2716,6 +2838,10 @@ static HRESULT WINAPI TextPara_GetListStart(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -348,7 +340,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2719,6 +2846,10 @@ static HRESULT WINAPI TextPara_SetListStart(ITextPara *iface, LONG value)
|
||||
@@ -2723,6 +2849,10 @@ static HRESULT WINAPI TextPara_SetListStart(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -359,7 +351,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2726,6 +2857,10 @@ static HRESULT WINAPI TextPara_GetListTab(ITextPara *iface, FLOAT *value)
|
||||
@@ -2730,6 +2860,10 @@ static HRESULT WINAPI TextPara_GetListTab(ITextPara *iface, FLOAT *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -370,7 +362,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2733,6 +2868,10 @@ static HRESULT WINAPI TextPara_SetListTab(ITextPara *iface, FLOAT value)
|
||||
@@ -2737,6 +2871,10 @@ static HRESULT WINAPI TextPara_SetListTab(ITextPara *iface, FLOAT value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%.2f)\n", This, value);
|
||||
@ -381,7 +373,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2740,6 +2879,10 @@ static HRESULT WINAPI TextPara_GetListType(ITextPara *iface, LONG *value)
|
||||
@@ -2744,6 +2882,10 @@ static HRESULT WINAPI TextPara_GetListType(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -392,7 +384,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2747,6 +2890,10 @@ static HRESULT WINAPI TextPara_SetListType(ITextPara *iface, LONG value)
|
||||
@@ -2751,6 +2893,10 @@ static HRESULT WINAPI TextPara_SetListType(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -403,7 +395,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2754,6 +2901,10 @@ static HRESULT WINAPI TextPara_GetNoLineNumber(ITextPara *iface, LONG *value)
|
||||
@@ -2758,6 +2904,10 @@ static HRESULT WINAPI TextPara_GetNoLineNumber(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -414,7 +406,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2761,6 +2912,10 @@ static HRESULT WINAPI TextPara_SetNoLineNumber(ITextPara *iface, LONG value)
|
||||
@@ -2765,6 +2915,10 @@ static HRESULT WINAPI TextPara_SetNoLineNumber(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -425,7 +417,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2768,6 +2923,10 @@ static HRESULT WINAPI TextPara_GetPageBreakBefore(ITextPara *iface, LONG *value)
|
||||
@@ -2772,6 +2926,10 @@ static HRESULT WINAPI TextPara_GetPageBreakBefore(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -436,7 +428,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2775,6 +2934,10 @@ static HRESULT WINAPI TextPara_SetPageBreakBefore(ITextPara *iface, LONG value)
|
||||
@@ -2779,6 +2937,10 @@ static HRESULT WINAPI TextPara_SetPageBreakBefore(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -447,7 +439,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2782,6 +2945,10 @@ static HRESULT WINAPI TextPara_GetRightIndent(ITextPara *iface, FLOAT *value)
|
||||
@@ -2786,6 +2948,10 @@ static HRESULT WINAPI TextPara_GetRightIndent(ITextPara *iface, FLOAT *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -458,7 +450,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2789,6 +2956,10 @@ static HRESULT WINAPI TextPara_SetRightIndent(ITextPara *iface, FLOAT value)
|
||||
@@ -2793,6 +2959,10 @@ static HRESULT WINAPI TextPara_SetRightIndent(ITextPara *iface, FLOAT value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%.2f)\n", This, value);
|
||||
@ -469,7 +461,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2796,6 +2967,10 @@ static HRESULT WINAPI TextPara_SetIndents(ITextPara *iface, FLOAT StartIndent, F
|
||||
@@ -2800,6 +2970,10 @@ static HRESULT WINAPI TextPara_SetIndents(ITextPara *iface, FLOAT StartIndent, F
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%.2f %.2f %.2f)\n", This, StartIndent, LeftIndent, RightIndent);
|
||||
@ -480,7 +472,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2803,6 +2978,10 @@ static HRESULT WINAPI TextPara_SetLineSpacing(ITextPara *iface, LONG LineSpacing
|
||||
@@ -2807,6 +2981,10 @@ static HRESULT WINAPI TextPara_SetLineSpacing(ITextPara *iface, LONG LineSpacing
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d %.2f)\n", This, LineSpacingRule, LineSpacing);
|
||||
@ -491,7 +483,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2810,6 +2989,10 @@ static HRESULT WINAPI TextPara_GetSpaceAfter(ITextPara *iface, FLOAT *value)
|
||||
@@ -2814,6 +2992,10 @@ static HRESULT WINAPI TextPara_GetSpaceAfter(ITextPara *iface, FLOAT *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -502,7 +494,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2817,6 +3000,10 @@ static HRESULT WINAPI TextPara_SetSpaceAfter(ITextPara *iface, FLOAT value)
|
||||
@@ -2821,6 +3003,10 @@ static HRESULT WINAPI TextPara_SetSpaceAfter(ITextPara *iface, FLOAT value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%.2f)\n", This, value);
|
||||
@ -513,7 +505,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2824,6 +3011,10 @@ static HRESULT WINAPI TextPara_GetSpaceBefore(ITextPara *iface, FLOAT *value)
|
||||
@@ -2828,6 +3014,10 @@ static HRESULT WINAPI TextPara_GetSpaceBefore(ITextPara *iface, FLOAT *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -524,7 +516,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2831,6 +3022,10 @@ static HRESULT WINAPI TextPara_SetSpaceBefore(ITextPara *iface, FLOAT value)
|
||||
@@ -2835,6 +3025,10 @@ static HRESULT WINAPI TextPara_SetSpaceBefore(ITextPara *iface, FLOAT value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%.2f)\n", This, value);
|
||||
@ -535,7 +527,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2838,6 +3033,10 @@ static HRESULT WINAPI TextPara_GetWidowControl(ITextPara *iface, LONG *value)
|
||||
@@ -2842,6 +3036,10 @@ static HRESULT WINAPI TextPara_GetWidowControl(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -546,7 +538,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2845,6 +3044,10 @@ static HRESULT WINAPI TextPara_SetWidowControl(ITextPara *iface, LONG value)
|
||||
@@ -2849,6 +3047,10 @@ static HRESULT WINAPI TextPara_SetWidowControl(ITextPara *iface, LONG value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d)\n", This, value);
|
||||
@ -557,7 +549,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2852,6 +3055,10 @@ static HRESULT WINAPI TextPara_GetTabCount(ITextPara *iface, LONG *value)
|
||||
@@ -2856,6 +3058,10 @@ static HRESULT WINAPI TextPara_GetTabCount(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%p)\n", This, value);
|
||||
@ -568,7 +560,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2859,6 +3066,10 @@ static HRESULT WINAPI TextPara_AddTab(ITextPara *iface, FLOAT tbPos, LONG tbAlig
|
||||
@@ -2863,6 +3069,10 @@ static HRESULT WINAPI TextPara_AddTab(ITextPara *iface, FLOAT tbPos, LONG tbAlig
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%.2f %d %d)\n", This, tbPos, tbAlign, tbLeader);
|
||||
@ -579,7 +571,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2866,6 +3077,10 @@ static HRESULT WINAPI TextPara_ClearAllTabs(ITextPara *iface)
|
||||
@@ -2870,6 +3080,10 @@ static HRESULT WINAPI TextPara_ClearAllTabs(ITextPara *iface)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)\n", This);
|
||||
@ -590,7 +582,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2873,6 +3088,10 @@ static HRESULT WINAPI TextPara_DeleteTab(ITextPara *iface, FLOAT pos)
|
||||
@@ -2877,6 +3091,10 @@ static HRESULT WINAPI TextPara_DeleteTab(ITextPara *iface, FLOAT pos)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%.2f)\n", This, pos);
|
||||
@ -601,7 +593,7 @@ index 54448f5..6db9775 100644
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2880,6 +3099,10 @@ static HRESULT WINAPI TextPara_GetTab(ITextPara *iface, LONG iTab, FLOAT *ptbPos
|
||||
@@ -2884,6 +3102,10 @@ static HRESULT WINAPI TextPara_GetTab(ITextPara *iface, LONG iTab, FLOAT *ptbPos
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
FIXME("(%p)->(%d %p %p %p)\n", This, iTab, ptbPos, ptbAlign, ptbLeader);
|
||||
@ -613,10 +605,10 @@ index 54448f5..6db9775 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index 070b05a..0fb5c98 100644
|
||||
index 40577b3..065c86c 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1597,6 +1597,52 @@ static void test_ITextSelection_GetFont(void)
|
||||
@@ -1637,6 +1637,52 @@ static void test_ITextSelection_GetFont(void)
|
||||
ITextFont_Release(txtFont);
|
||||
}
|
||||
|
||||
@ -669,7 +661,7 @@ index 070b05a..0fb5c98 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1621,6 +1667,7 @@ START_TEST(richole)
|
||||
@@ -1661,6 +1707,7 @@ START_TEST(richole)
|
||||
test_ITextRange_SetStart();
|
||||
test_ITextRange_SetEnd();
|
||||
test_ITextRange_GetFont();
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 49d6ee6879df42615d3b8c97bd320382fb580585 Mon Sep 17 00:00:00 2001
|
||||
From 9e71184f8215f3693f9b1418225dfbc2c7b57d77 Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Wed, 13 Aug 2014 14:57:52 +0800
|
||||
Subject: riched20: Fix ME_RunOfsFromCharOfs() when nCharOfs > strlen().
|
||||
@ -37,5 +37,5 @@ index 38d0270..ad08b82 100644
|
||||
|
||||
/******************************************************************************
|
||||
--
|
||||
2.3.2
|
||||
2.4.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d0ddbc33e67637ac5ea3d73720d1260d37899bf8 Mon Sep 17 00:00:00 2001
|
||||
From b124ce2417572b6e7147bbfd8c931885886d37cb Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Wed, 13 Aug 2014 15:40:11 +0800
|
||||
Subject: riched20: Implement ITextRange::GetText.
|
||||
@ -9,10 +9,10 @@ Subject: riched20: Implement ITextRange::GetText.
|
||||
2 files changed, 67 insertions(+), 21 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index d815142..12146ff 100644
|
||||
index f664616..4aee91f 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -2173,14 +2173,40 @@ static HRESULT WINAPI ITextRange_fnInvoke(ITextRange *me, DISPID dispIdMember, R
|
||||
@@ -1033,14 +1033,40 @@ static HRESULT WINAPI ITextRange_fnInvoke(ITextRange *me, DISPID dispIdMember, R
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@ -55,7 +55,7 @@ index d815142..12146ff 100644
|
||||
}
|
||||
|
||||
static HRESULT WINAPI ITextRange_fnSetText(ITextRange *me, BSTR bstr)
|
||||
@@ -3257,8 +3283,6 @@ static HRESULT WINAPI ITextSelection_fnGetText(ITextSelection *me, BSTR *pbstr)
|
||||
@@ -3565,8 +3591,6 @@ static HRESULT WINAPI ITextSelection_fnGetText(ITextSelection *me, BSTR *pbstr)
|
||||
{
|
||||
ITextSelectionImpl *This = impl_from_ITextSelection(me);
|
||||
ME_Cursor *start = NULL, *end = NULL;
|
||||
@ -64,7 +64,7 @@ index d815142..12146ff 100644
|
||||
|
||||
if (!This->reOle)
|
||||
return CO_E_RELEASED;
|
||||
@@ -3267,23 +3291,7 @@ static HRESULT WINAPI ITextSelection_fnGetText(ITextSelection *me, BSTR *pbstr)
|
||||
@@ -3575,23 +3599,7 @@ static HRESULT WINAPI ITextSelection_fnGetText(ITextSelection *me, BSTR *pbstr)
|
||||
return E_INVALIDARG;
|
||||
|
||||
ME_GetSelection(This->reOle->editor, &start, &end);
|
||||
@ -90,10 +90,10 @@ index d815142..12146ff 100644
|
||||
|
||||
static HRESULT WINAPI ITextSelection_fnSetText(ITextSelection *me, BSTR bstr)
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index 89b3839..33b777b 100644
|
||||
index 065c86c..44b1f4c 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1349,6 +1349,43 @@ static void test_ITextRange_GetPara(void)
|
||||
@@ -1683,6 +1683,43 @@ static void test_ITextRange_GetPara(void)
|
||||
ITextPara_Release(txtPara);
|
||||
}
|
||||
|
||||
@ -137,7 +137,7 @@ index 89b3839..33b777b 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1374,6 +1411,7 @@ START_TEST(richole)
|
||||
@@ -1708,6 +1745,7 @@ START_TEST(richole)
|
||||
test_ITextRange_SetEnd();
|
||||
test_ITextRange_GetFont();
|
||||
test_ITextRange_GetPara();
|
||||
@ -146,5 +146,5 @@ index 89b3839..33b777b 100644
|
||||
test_IOleWindow_GetWindow();
|
||||
test_IOleInPlaceSite_GetWindow();
|
||||
--
|
||||
2.3.2
|
||||
2.4.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From d0269eafaac5cf25dfa223e1d9a9edd2572b3755 Mon Sep 17 00:00:00 2001
|
||||
From bf01cfc213a0430c1086fd70dd92bfe7a684bd5d Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Wed, 13 Aug 2014 17:17:14 +0800
|
||||
Subject: riched20: Implement ITextRange::SetRange.
|
||||
@ -9,10 +9,10 @@ Subject: riched20: Implement ITextRange::SetRange.
|
||||
2 files changed, 60 insertions(+), 17 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index 12146ff..cfe0138 100644
|
||||
index 4aee91f..fc9875f 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -2529,14 +2529,36 @@ static HRESULT WINAPI ITextRange_fnSetIndex(ITextRange *me, LONG Unit, LONG Inde
|
||||
@@ -1354,14 +1354,36 @@ static HRESULT WINAPI ITextRange_fnSetIndex(ITextRange *me, LONG Unit, LONG Inde
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@ -51,7 +51,7 @@ index 12146ff..cfe0138 100644
|
||||
}
|
||||
|
||||
static HRESULT WINAPI ITextRange_fnInRange(ITextRange *me, ITextRange *pRange, LONG *pb)
|
||||
@@ -3131,26 +3153,12 @@ ITextDocument_fnRange(ITextDocument* me, LONG cp1, LONG cp2,
|
||||
@@ -3436,26 +3458,12 @@ ITextDocument_fnRange(ITextDocument* me, LONG cp1, LONG cp2,
|
||||
ITextRange** ppRange)
|
||||
{
|
||||
IRichEditOleImpl *This = impl_from_ITextDocument(me);
|
||||
@ -80,10 +80,10 @@ index 12146ff..cfe0138 100644
|
||||
}
|
||||
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index 33b777b..a943393 100644
|
||||
index 44b1f4c..1529c3c 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1386,6 +1386,40 @@ static void test_ITextRange_GetText(void)
|
||||
@@ -1720,6 +1720,40 @@ static void test_ITextRange_GetText(void)
|
||||
TEST_TXTRGE_GETTEXT(1, 1, NULL)
|
||||
}
|
||||
|
||||
@ -124,7 +124,7 @@ index 33b777b..a943393 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1412,6 +1446,7 @@ START_TEST(richole)
|
||||
@@ -1746,6 +1780,7 @@ START_TEST(richole)
|
||||
test_ITextRange_GetFont();
|
||||
test_ITextRange_GetPara();
|
||||
test_ITextRange_GetText();
|
||||
@ -133,5 +133,5 @@ index 33b777b..a943393 100644
|
||||
test_IOleWindow_GetWindow();
|
||||
test_IOleInPlaceSite_GetWindow();
|
||||
--
|
||||
2.3.2
|
||||
2.4.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From dd58c449f3fd930e7067f4910d82fc4a118cb585 Mon Sep 17 00:00:00 2001
|
||||
From 02798a813a2f584e7e884531e4a89b6615d6ed4a Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Fri, 15 Aug 2014 14:27:21 +0800
|
||||
Subject: riched20: Implement ITextRange::IsEqual.
|
||||
@ -9,10 +9,10 @@ Subject: riched20: Implement ITextRange::IsEqual.
|
||||
2 files changed, 64 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index cfe0138..73e1916 100644
|
||||
index fc9875f..0052448 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -2581,14 +2581,29 @@ static HRESULT WINAPI ITextRange_fnInStory(ITextRange *me, ITextRange *pRange, L
|
||||
@@ -1406,14 +1406,29 @@ static HRESULT WINAPI ITextRange_fnInStory(ITextRange *me, ITextRange *pRange, L
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@ -45,10 +45,10 @@ index cfe0138..73e1916 100644
|
||||
|
||||
static HRESULT WINAPI ITextRange_fnSelect(ITextRange *me)
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index a943393..6b1bada 100644
|
||||
index 1529c3c..e158a61 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1420,6 +1420,52 @@ static void test_ITextRange_SetRange(void)
|
||||
@@ -1754,6 +1754,52 @@ static void test_ITextRange_SetRange(void)
|
||||
release_interfaces(&w, &reOle, &txtDoc, NULL);
|
||||
}
|
||||
|
||||
@ -101,7 +101,7 @@ index a943393..6b1bada 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1447,6 +1493,7 @@ START_TEST(richole)
|
||||
@@ -1781,6 +1827,7 @@ START_TEST(richole)
|
||||
test_ITextRange_GetPara();
|
||||
test_ITextRange_GetText();
|
||||
test_ITextRange_SetRange();
|
||||
@ -110,5 +110,5 @@ index a943393..6b1bada 100644
|
||||
test_IOleWindow_GetWindow();
|
||||
test_IOleInPlaceSite_GetWindow();
|
||||
--
|
||||
2.3.2
|
||||
2.4.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 5606c81aa12ad51c3028d7e48a419e5000a0053a Mon Sep 17 00:00:00 2001
|
||||
From d98c00a85b52d4d440b48ae7618cc9ec15bc1c82 Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Mon, 18 Aug 2014 14:38:50 +0800
|
||||
Subject: riched20: Implement ITextRange::GetStoryLength.
|
||||
@ -9,10 +9,10 @@ Subject: riched20: Implement ITextRange::GetStoryLength.
|
||||
2 files changed, 36 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index 73e1916..525c7c1 100644
|
||||
index 0052448..4ec4513 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -2463,8 +2463,10 @@ static HRESULT WINAPI ITextRange_fnGetStoryLength(ITextRange *me, LONG *pcch)
|
||||
@@ -1288,8 +1288,10 @@ static HRESULT WINAPI ITextRange_fnGetStoryLength(ITextRange *me, LONG *pcch)
|
||||
if (!This->reOle)
|
||||
return CO_E_RELEASED;
|
||||
|
||||
@ -26,10 +26,10 @@ index 73e1916..525c7c1 100644
|
||||
|
||||
static HRESULT WINAPI ITextRange_fnGetStoryType(ITextRange *me, LONG *pValue)
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index 6b1bada..4e1a5a6 100644
|
||||
index e158a61..dd6cad4 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1466,6 +1466,37 @@ static void test_ITextRange_IsEqual(void)
|
||||
@@ -1800,6 +1800,37 @@ static void test_ITextRange_IsEqual(void)
|
||||
release_interfaces(&w, &reOle, &txtDoc, NULL);
|
||||
}
|
||||
|
||||
@ -67,7 +67,7 @@ index 6b1bada..4e1a5a6 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1494,6 +1525,7 @@ START_TEST(richole)
|
||||
@@ -1828,6 +1859,7 @@ START_TEST(richole)
|
||||
test_ITextRange_GetText();
|
||||
test_ITextRange_SetRange();
|
||||
test_ITextRange_IsEqual();
|
||||
@ -76,5 +76,5 @@ index 6b1bada..4e1a5a6 100644
|
||||
test_IOleWindow_GetWindow();
|
||||
test_IOleInPlaceSite_GetWindow();
|
||||
--
|
||||
2.3.2
|
||||
2.4.0
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
From 58c621934c2fd7d20ebb3da783cfdcb8e28b1a10 Mon Sep 17 00:00:00 2001
|
||||
From 218106498ce512c7879c15e2859901f67c9d6160 Mon Sep 17 00:00:00 2001
|
||||
From: Jactry Zeng <wine@jactry.com>
|
||||
Date: Mon, 18 Aug 2014 14:47:14 +0800
|
||||
Subject: riched20: Implement ITextSelection::GetStoryLength.
|
||||
@ -9,10 +9,10 @@ Subject: riched20: Implement ITextSelection::GetStoryLength.
|
||||
2 files changed, 34 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index 0bc302b..e42df2b 100644
|
||||
index 4ec4513..5d017e9 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -3298,8 +3298,10 @@ static HRESULT WINAPI ITextSelection_fnGetStoryLength(ITextSelection *me, LONG *
|
||||
@@ -3829,8 +3829,10 @@ static HRESULT WINAPI ITextSelection_fnGetStoryLength(ITextSelection *me, LONG *
|
||||
if (!This->reOle)
|
||||
return CO_E_RELEASED;
|
||||
|
||||
@ -26,10 +26,10 @@ index 0bc302b..e42df2b 100644
|
||||
|
||||
static HRESULT WINAPI ITextSelection_fnGetStoryType(ITextSelection *me, LONG *pValue)
|
||||
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
|
||||
index 543f3ec..baed1f7 100644
|
||||
index dd6cad4..cd9931b 100644
|
||||
--- a/dlls/riched20/tests/richole.c
|
||||
+++ b/dlls/riched20/tests/richole.c
|
||||
@@ -1357,6 +1357,35 @@ static void test_ITextRange_GetStoryLength(void)
|
||||
@@ -1831,6 +1831,35 @@ static void test_ITextRange_GetStoryLength(void)
|
||||
release_interfaces(&w, &reOle, &txtDoc, NULL);
|
||||
}
|
||||
|
||||
@ -65,7 +65,7 @@ index 543f3ec..baed1f7 100644
|
||||
START_TEST(richole)
|
||||
{
|
||||
/* Must explicitly LoadLibrary(). The test has no references to functions in
|
||||
@@ -1373,6 +1402,7 @@ START_TEST(richole)
|
||||
@@ -1847,6 +1876,7 @@ START_TEST(richole)
|
||||
test_ITextSelection_SetEnd();
|
||||
test_ITextSelection_Collapse();
|
||||
test_ITextSelection_GetFont();
|
||||
@ -74,5 +74,5 @@ index 543f3ec..baed1f7 100644
|
||||
test_ITextRange_GetChar();
|
||||
test_ITextRange_GetStart_GetEnd();
|
||||
--
|
||||
2.1.2
|
||||
2.4.0
|
||||
|
||||
|
@ -1,18 +1,18 @@
|
||||
From 85ae581146a9791fd45006b273c19f822f1ccf4f Mon Sep 17 00:00:00 2001
|
||||
From 69ba6ab1953ff29538b3db3dcf87d02175c355ed Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Sat, 1 Nov 2014 22:51:34 +0100
|
||||
Subject: riched20: Silence repeated FIXMEs triggered by Adobe Reader.
|
||||
|
||||
Adobe Reader calls these functions very often while scrolling through a document.
|
||||
---
|
||||
dlls/riched20/richole.c | 46 ++++++++++++++++++++++++++++++++++++----------
|
||||
1 file changed, 36 insertions(+), 10 deletions(-)
|
||||
dlls/riched20/richole.c | 16 ++++++++++++++--
|
||||
1 file changed, 14 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index b9213f6..6676d9a 100644
|
||||
index 5d017e9..b5c2b9b 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -294,6 +294,14 @@ static HRESULT WINAPI IRichEditOleImpl_inner_fnQueryInterface(IUnknown *iface, R
|
||||
@@ -394,6 +394,14 @@ static HRESULT WINAPI IRichEditOleImpl_inner_fnQueryInterface(IUnknown *iface, R
|
||||
IUnknown_AddRef((IUnknown *)*ppvObj);
|
||||
return S_OK;
|
||||
}
|
||||
@ -27,107 +27,7 @@ index b9213f6..6676d9a 100644
|
||||
FIXME("%p: unhandled interface %s\n", This, debugstr_guid(riid));
|
||||
|
||||
return E_NOINTERFACE;
|
||||
@@ -1927,6 +1935,7 @@ static HRESULT WINAPI TextFont_SetBackColor(ITextFont *iface, LONG value)
|
||||
static HRESULT WINAPI TextFont_GetBold(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
+ static int once;
|
||||
TRACE("(%p)->(%p)\n", This, value);
|
||||
|
||||
if (This->range)
|
||||
@@ -1940,7 +1949,7 @@ static HRESULT WINAPI TextFont_GetBold(ITextFont *iface, LONG *value)
|
||||
if (!font_get_reole(This))
|
||||
return CO_E_RELEASED;
|
||||
|
||||
- FIXME("not implemented\n");
|
||||
+ if (!once++) FIXME("not implemented\n");
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -1980,7 +1989,9 @@ static HRESULT WINAPI TextFont_SetEmboss(ITextFont *iface, LONG value)
|
||||
static HRESULT WINAPI TextFont_GetForeColor(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
- FIXME("(%p)->(%p): stub\n", This, value);
|
||||
+ static int once;
|
||||
+
|
||||
+ if (!once++) FIXME("(%p)->(%p): stub\n", This, value);
|
||||
|
||||
if (!value)
|
||||
return E_INVALIDARG;
|
||||
@@ -2052,6 +2063,7 @@ static HRESULT WINAPI TextFont_SetEngrave(ITextFont *iface, LONG value)
|
||||
static HRESULT WINAPI TextFont_GetItalic(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
+ static int once;
|
||||
TRACE("(%p)->(%p)\n", This, value);
|
||||
|
||||
if (This->range)
|
||||
@@ -2065,7 +2077,7 @@ static HRESULT WINAPI TextFont_GetItalic(ITextFont *iface, LONG *value)
|
||||
if (!font_get_reole(This))
|
||||
return CO_E_RELEASED;
|
||||
|
||||
- FIXME("not implemented\n");
|
||||
+ if (!once++) FIXME("not implemented\n");
|
||||
return E_NOTIMPL;
|
||||
}
|
||||
|
||||
@@ -2105,7 +2117,9 @@ static HRESULT WINAPI TextFont_SetKerning(ITextFont *iface, FLOAT value)
|
||||
static HRESULT WINAPI TextFont_GetLanguageID(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
- FIXME("(%p)->(%p): stub\n", This, value);
|
||||
+ static int once;
|
||||
+
|
||||
+ if (!once++) FIXME("(%p)->(%p): stub\n", This, value);
|
||||
|
||||
if (!font_get_reole(This))
|
||||
return CO_E_RELEASED;
|
||||
@@ -2245,7 +2259,9 @@ static HRESULT WINAPI TextFont_SetShadow(ITextFont *iface, LONG value)
|
||||
static HRESULT WINAPI TextFont_GetSize(ITextFont *iface, FLOAT *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
- FIXME("(%p)->(%p): stub\n", This, value);
|
||||
+ static int once;
|
||||
+
|
||||
+ if (!once++) FIXME("(%p)->(%p): stub\n", This, value);
|
||||
|
||||
if (!value)
|
||||
return E_INVALIDARG;
|
||||
@@ -2317,7 +2333,9 @@ static HRESULT WINAPI TextFont_SetSpacing(ITextFont *iface, FLOAT value)
|
||||
static HRESULT WINAPI TextFont_GetStrikeThrough(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
- FIXME("(%p)->(%p): stub\n", This, value);
|
||||
+ static int once;
|
||||
+
|
||||
+ if (!once++) FIXME("(%p)->(%p): stub\n", This, value);
|
||||
|
||||
if (!value)
|
||||
return E_INVALIDARG;
|
||||
@@ -2345,7 +2363,9 @@ static HRESULT WINAPI TextFont_SetStrikeThrough(ITextFont *iface, LONG value)
|
||||
static HRESULT WINAPI TextFont_GetSubscript(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
- FIXME("(%p)->(%p): stub\n", This, value);
|
||||
+ static int once;
|
||||
+
|
||||
+ if (!once++) FIXME("(%p)->(%p): stub\n", This, value);
|
||||
|
||||
if (!value)
|
||||
return E_INVALIDARG;
|
||||
@@ -2401,7 +2421,9 @@ static HRESULT WINAPI TextFont_SetSuperscript(ITextFont *iface, LONG value)
|
||||
static HRESULT WINAPI TextFont_GetUnderline(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
- FIXME("(%p)->(%p): stub\n", This, value);
|
||||
+ static int once;
|
||||
+
|
||||
+ if (!once++) FIXME("(%p)->(%p): stub\n", This, value);
|
||||
|
||||
if (!value)
|
||||
return E_INVALIDARG;
|
||||
@@ -2429,7 +2451,9 @@ static HRESULT WINAPI TextFont_SetUnderline(ITextFont *iface, LONG value)
|
||||
@@ -2434,7 +2442,9 @@ static HRESULT WINAPI TextFont_SetUnderline(ITextFont *iface, LONG value)
|
||||
static HRESULT WINAPI TextFont_GetWeight(ITextFont *iface, LONG *value)
|
||||
{
|
||||
ITextFontImpl *This = impl_from_ITextFont(iface);
|
||||
@ -138,7 +38,7 @@ index b9213f6..6676d9a 100644
|
||||
|
||||
if (!font_get_reole(This))
|
||||
return CO_E_RELEASED;
|
||||
@@ -2723,7 +2747,9 @@ static HRESULT WINAPI TextPara_SetStyle(ITextPara *iface, LONG value)
|
||||
@@ -2726,7 +2736,9 @@ static HRESULT WINAPI TextPara_SetStyle(ITextPara *iface, LONG value)
|
||||
static HRESULT WINAPI TextPara_GetAlignment(ITextPara *iface, LONG *value)
|
||||
{
|
||||
ITextParaImpl *This = impl_from_ITextPara(iface);
|
||||
|
@ -1,4 +1,4 @@
|
||||
From acafb0f9fc1775ba95c3f5dfba08c15fd6678904 Mon Sep 17 00:00:00 2001
|
||||
From 83ab3bf176f9ad2a08586e3173ed9c61307dcb59 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Sat, 1 Nov 2014 23:07:09 +0100
|
||||
Subject: riched20: Implement ITextSelection_fnGetDuplicate.
|
||||
@ -9,10 +9,10 @@ Fixes a crash with Adobe Reader when entering a page number.
|
||||
1 file changed, 8 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
|
||||
index 6676d9a..a7eb1d9 100644
|
||||
index b5c2b9b..83b9ac3 100644
|
||||
--- a/dlls/riched20/richole.c
|
||||
+++ b/dlls/riched20/richole.c
|
||||
@@ -3681,11 +3681,17 @@ static HRESULT WINAPI ITextSelection_fnSetChar(ITextSelection *me, LONG ch)
|
||||
@@ -3677,11 +3677,17 @@ static HRESULT WINAPI ITextSelection_fnSetChar(ITextSelection *me, LONG ch)
|
||||
static HRESULT WINAPI ITextSelection_fnGetDuplicate(ITextSelection *me, ITextRange **ppRange)
|
||||
{
|
||||
ITextSelectionImpl *This = impl_from_ITextSelection(me);
|
||||
|
@ -1,44 +0,0 @@
|
||||
From ec8c72f2251bd35294f8ab396a18430b1c29b527 Mon Sep 17 00:00:00 2001
|
||||
From: Sebastian Lackner <sebastian@fds-team.de>
|
||||
Date: Wed, 13 May 2015 19:06:23 +0200
|
||||
Subject: wineconsole: Allocate fake hwnds for curses backend.
|
||||
|
||||
Based on a patch by Qian Hong.
|
||||
---
|
||||
programs/wineconsole/curses.c | 6 +++++-
|
||||
1 file changed, 5 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/programs/wineconsole/curses.c b/programs/wineconsole/curses.c
|
||||
index 24aab88..8d1b01e 100644
|
||||
--- a/programs/wineconsole/curses.c
|
||||
+++ b/programs/wineconsole/curses.c
|
||||
@@ -1001,6 +1001,7 @@ static void WCCURSES_DeleteBackend(struct inner_data* data)
|
||||
#endif
|
||||
endwin();
|
||||
|
||||
+ if (data->hWnd) DestroyWindow(data->hWnd);
|
||||
HeapFree(GetProcessHeap(), 0, PRIVATE(data)->line);
|
||||
HeapFree(GetProcessHeap(), 0, PRIVATE(data));
|
||||
data->private = NULL;
|
||||
@@ -1042,6 +1043,8 @@ static int WCCURSES_MainLoop(struct inner_data* data)
|
||||
*/
|
||||
enum init_return WCCURSES_InitBackend(struct inner_data* data)
|
||||
{
|
||||
+ static const WCHAR messageW[] = {'M','e','s','s','a','g','e',0};
|
||||
+
|
||||
if( !WCCURSES_bind_libcurses() )
|
||||
return init_not_supported;
|
||||
|
||||
@@ -1058,7 +1061,8 @@ enum init_return WCCURSES_InitBackend(struct inner_data* data)
|
||||
data->fnScroll = WCCURSES_Scroll;
|
||||
data->fnSetFont = WCCURSES_SetFont;
|
||||
data->fnDeleteBackend = WCCURSES_DeleteBackend;
|
||||
- data->hWnd = NULL;
|
||||
+ data->hWnd = CreateWindowW( messageW, NULL, 0, 0, 0, 0, 0, HWND_MESSAGE, 0,
|
||||
+ GetModuleHandleW(0), NULL );
|
||||
|
||||
/* FIXME: should find a good way to enable buffer scrolling
|
||||
* For the time being, setting this to 1 will allow scrolling up/down
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1 +0,0 @@
|
||||
Fixes: [34930] Allocate fake hWnd for wineconsole curses backend
|
@ -1199,7 +1199,7 @@ diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader
|
||||
|
||||
/* Load DirectX 9 float constants for pixel shader */
|
||||
priv->highest_dirty_ps_const = shader_arb_load_constantsF(pshader, gl_info, GL_FRAGMENT_PROGRAM_ARB,
|
||||
@@ -4652,7 +4656,11 @@
|
||||
@@ -4694,7 +4698,11 @@
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -1211,7 +1211,7 @@ diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader
|
||||
shader_arb_ps_local_constants(compiled, context, state, rt_height);
|
||||
}
|
||||
|
||||
@@ -7766,7 +7774,11 @@
|
||||
@@ -7810,7 +7818,11 @@
|
||||
|
||||
/* Now load the surface */
|
||||
if (wined3d_settings.offscreen_rendering_mode != ORM_FBO
|
||||
@ -1223,7 +1223,7 @@ diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader
|
||||
== WINED3D_LOCATION_DRAWABLE
|
||||
&& !wined3d_resource_is_offscreen(&src_surface->container->resource))
|
||||
{
|
||||
@@ -7796,6 +7808,7 @@
|
||||
@@ -7840,6 +7852,7 @@
|
||||
/* Leave the opengl state valid for blitting */
|
||||
arbfp_blit_unset(context->gl_info);
|
||||
|
||||
@ -1231,7 +1231,7 @@ diff --git a/dlls/wined3d/arb_program_shader.c b/dlls/wined3d/arb_program_shader
|
||||
if (wined3d_settings.cs_multithreaded)
|
||||
context->gl_info->gl_ops.gl.p_glFinish();
|
||||
else if (wined3d_settings.strict_draw_ordering
|
||||
@@ -7807,6 +7820,17 @@
|
||||
@@ -7851,6 +7864,17 @@
|
||||
|
||||
wined3d_resource_validate_location(&dst_surface->resource, dst_surface->container->resource.draw_binding);
|
||||
wined3d_resource_invalidate_location(&dst_surface->resource, ~dst_surface->container->resource.draw_binding);
|
||||
|
@ -1,28 +0,0 @@
|
||||
From e921966b9073171d4a76ef6a96ba93413023e029 Mon Sep 17 00:00:00 2001
|
||||
From: Matteo Bruni <mbruni@codeweavers.com>
|
||||
Date: Thu, 7 May 2015 16:07:53 +0200
|
||||
Subject: wined3d: Dirtify vertex shader on transformed <-> untransformed
|
||||
transition.
|
||||
|
||||
---
|
||||
dlls/wined3d/glsl_shader.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/dlls/wined3d/glsl_shader.c b/dlls/wined3d/glsl_shader.c
|
||||
index 0a130e1..8e618e5 100644
|
||||
--- a/dlls/wined3d/glsl_shader.c
|
||||
+++ b/dlls/wined3d/glsl_shader.c
|
||||
@@ -7682,6 +7682,10 @@ static void glsl_vertex_pipe_vdecl(struct wined3d_context *context,
|
||||
|
||||
context->last_was_rhw = transformed;
|
||||
|
||||
+ /* Transformed position forces FFP draws. */
|
||||
+ if (transformed != wasrhw)
|
||||
+ context->shader_update_mask |= 1 << WINED3D_SHADER_TYPE_VERTEX;
|
||||
+
|
||||
if (!use_vs(state))
|
||||
{
|
||||
if (context->last_was_vshader)
|
||||
--
|
||||
2.4.0
|
||||
|
@ -1,2 +0,0 @@
|
||||
Fixes: [38539] Dirtify vertex shader on transformed update to fix graphical corruption
|
||||
Category: stable
|
Loading…
Reference in New Issue
Block a user