Rebase against 78f74446b9806f63a27c2d643b8e29156b5bdcbe

This commit is contained in:
Alistair Leslie-Hughes 2019-06-11 08:44:55 +10:00
parent 5681cd5466
commit 9afb244a8e
11 changed files with 318 additions and 737 deletions

View File

@ -1,19 +1,19 @@
From b5311918d5fbdc15b3321fed444daa0d0c8507de Mon Sep 17 00:00:00 2001
From 24829b2ba6d5efd950f178b8282dda826c4d1df0 Mon Sep 17 00:00:00 2001
From: Bruno Jesus <bjesus@codeweavers.com>
Date: Thu, 28 Feb 2019 15:56:18 +1100
Subject: [PATCH] dinput: Recalculated Axis after deadzone change.
Wine-bugs: https://bugs.winehq.org/show_bug.cgi?id=41317
---
dlls/dinput/joystick.c | 149 ++++++++++++++++++++++++++-----------------------
dlls/dinput/joystick.c | 149 ++++++++++++++++++++++-------------------
1 file changed, 80 insertions(+), 69 deletions(-)
diff --git a/dlls/dinput/joystick.c b/dlls/dinput/joystick.c
index 0ec1ceb..fd3d44d 100644
index 433348cd04..c150528e3d 100644
--- a/dlls/dinput/joystick.c
+++ b/dlls/dinput/joystick.c
@@ -271,6 +271,76 @@ BOOL device_disabled_registry(const char* name)
return do_disable;
@@ -312,6 +312,76 @@ BOOL is_xinput_device(const DIDEVCAPS *devcaps, WORD vid, WORD pid)
return (devcaps->dwAxes == 6 && devcaps->dwButtons >= 14);
}
+static void remap_init(JoystickGenericImpl *This, int obj, ObjProps *remap_props)
@ -89,7 +89,7 @@ index 0ec1ceb..fd3d44d 100644
/******************************************************************************
* SetProperty : change input device properties
*/
@@ -278,7 +348,6 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
@@ -319,7 +389,6 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
{
JoystickGenericImpl *This = impl_from_IDirectInputDevice8W(iface);
DWORD i;
@ -97,7 +97,7 @@ index 0ec1ceb..fd3d44d 100644
TRACE("(%p,%s,%p)\n",This,debugstr_guid(rguid),ph);
@@ -295,69 +364,15 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
@@ -336,69 +405,15 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
case (DWORD_PTR)DIPROP_RANGE: {
LPCDIPROPRANGE pr = (LPCDIPROPRANGE)ph;
if (ph->dwHow == DIPH_DEVICE) {
@ -171,7 +171,7 @@ index 0ec1ceb..fd3d44d 100644
}
break;
}
@@ -366,15 +381,13 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
@@ -407,15 +422,13 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
if (ph->dwHow == DIPH_DEVICE) {
TRACE("deadzone(%d) all\n", pd->dwData);
for (i = 0; i < This->base.data_format.wine_df->dwNumObjs; i++)
@ -190,7 +190,7 @@ index 0ec1ceb..fd3d44d 100644
}
break;
}
@@ -383,15 +396,13 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
@@ -424,15 +437,13 @@ HRESULT WINAPI JoystickWGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8W iface, REF
if (ph->dwHow == DIPH_DEVICE) {
TRACE("saturation(%d) all\n", pd->dwData);
for (i = 0; i < This->base.data_format.wine_df->dwNumObjs; i++)
@ -210,5 +210,5 @@ index 0ec1ceb..fd3d44d 100644
break;
}
--
1.9.1
2.17.1

View File

@ -52,7 +52,7 @@ usage()
# Get the upstream commit sha
upstream_commit()
{
echo "48a74277f5f9e0c87d8c01457236a89d94cb71d3"
echo "78f74446b9806f63a27c2d643b8e29156b5bdcbe"
}
# Show version information
@ -5328,24 +5328,12 @@ fi
# | * dlls/riched20/richole.c, dlls/riched20/run.c, dlls/riched20/tests/richole.c
# |
if test "$enable_riched20_IText_Interface" -eq 1; then
patch_apply riched20-IText_Interface/0001-riched20-Implement-IText-Selection-Range-Set-Start-E.patch
patch_apply riched20-IText_Interface/0002-riched20-Stub-for-ITextFont-interface-and-implement-.patch
patch_apply riched20-IText_Interface/0003-riched20-Stub-for-ITextPara-interface-and-implement-.patch
patch_apply riched20-IText_Interface/0004-riched20-Fix-ME_RunOfsFromCharOfs-when-nCharOfs-strl.patch
patch_apply riched20-IText_Interface/0005-riched20-Implement-ITextRange-GetText.patch
patch_apply riched20-IText_Interface/0007-riched20-Implement-ITextRange-IsEqual.patch
patch_apply riched20-IText_Interface/0008-riched20-Implement-ITextRange-GetStoryLength.patch
patch_apply riched20-IText_Interface/0009-riched20-Implement-ITextSelection-GetStoryLength.patch
patch_apply riched20-IText_Interface/0010-riched20-Silence-repeated-FIXMEs-triggered-by-Adobe-.patch
(
printf '%s\n' '+ { "Jactry Zeng", "riched20: Implement IText{Selection, Range}::Set{Start, End}.", 1 },';
printf '%s\n' '+ { "Jactry Zeng", "riched20: Stub for ITextFont interface and implement ITextRange::GetFont and ITextSelection::GetFont.", 1 },';
printf '%s\n' '+ { "Jactry Zeng", "riched20: Stub for ITextPara interface and implement ITextRange::GetPara.", 1 },';
printf '%s\n' '+ { "Jactry Zeng", "riched20: Fix ME_RunOfsFromCharOfs() when nCharOfs > strlen().", 1 },';
printf '%s\n' '+ { "Jactry Zeng", "riched20: Implement ITextRange::GetText.", 1 },';
printf '%s\n' '+ { "Jactry Zeng", "riched20: Implement ITextRange::IsEqual.", 1 },';
printf '%s\n' '+ { "Jactry Zeng", "riched20: Implement ITextRange::GetStoryLength.", 1 },';
printf '%s\n' '+ { "Jactry Zeng", "riched20: Implement ITextSelection::GetStoryLength.", 1 },';
printf '%s\n' '+ { "Sebastian Lackner", "riched20: Silence repeated FIXMEs triggered by Adobe Reader.", 1 },';
) >> "$patchlist"
fi

View File

@ -1,172 +0,0 @@
From ad837ef7c71cdca27ce947100107bfe5c6982ff7 Mon Sep 17 00:00:00 2001
From: Jactry Zeng <wine@jactry.com>
Date: Fri, 8 Aug 2014 21:32:57 +0800
Subject: [PATCH] riched20: Implement IText{Selection, Range}::Set{Start, End}.
---
dlls/riched20/tests/richole.c | 135 ++++++++++++++++++++++++++++++++++
1 file changed, 135 insertions(+)
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index 70646202f04..77f93a55c14 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -3808,6 +3808,137 @@ static void test_MoveEnd(void)
ITextRange_Release(range);
}
+static void test_ITextRange_SetStart(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ ITextDocument_Range(txtDoc, first, lim, &txtRge);
+ hres = ITextRange_SetStart(txtRge, first);
+ ok(hres == S_FALSE, "ITextRange_SetStart\n");
+
+#define TEST_TXTRGE_SETSTART(cp, expected_start, expected_end) \
+ hres = ITextRange_SetStart(txtRge, cp); \
+ ok(hres == S_OK, "ITextRange_SetStart\n"); \
+ ITextRange_GetStart(txtRge, &start); \
+ ITextRange_GetEnd(txtRge, &end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTRGE_SETSTART(2, 2, 8)
+ TEST_TXTRGE_SETSTART(-1, 0, 8)
+ TEST_TXTRGE_SETSTART(13, 12, 12)
+
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+}
+
+static void test_ITextRange_SetEnd(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ ITextDocument_Range(txtDoc, first, lim, &txtRge);
+ hres = ITextRange_SetEnd(txtRge, lim);
+ ok(hres == S_FALSE, "ITextRange_SetEnd\n");
+
+#define TEST_TXTRGE_SETEND(cp, expected_start, expected_end) \
+ hres = ITextRange_SetEnd(txtRge, cp); \
+ ok(hres == S_OK, "ITextRange_SetEnd\n"); \
+ ITextRange_GetStart(txtRge, &start); \
+ ITextRange_GetEnd(txtRge, &end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTRGE_SETEND(6, 4, 6)
+ TEST_TXTRGE_SETEND(14, 4, 13)
+ TEST_TXTRGE_SETEND(-1, 0, 0)
+
+ ITextRange_Release(txtRge);
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+}
+
+static void test_ITextSelection_SetStart(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextSelection *txtSel = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ SendMessageA(w, EM_SETSEL, first, lim);
+ hres = ITextSelection_SetStart(txtSel, first);
+ ok(hres == S_FALSE, "ITextSelection_SetStart\n");
+
+#define TEST_TXTSEL_SETSTART(cp, expected_start, expected_end) \
+ hres = ITextSelection_SetStart(txtSel, cp); \
+ ok(hres == S_OK, "ITextSelection_SetStart\n"); \
+ SendMessageA(w, EM_GETSEL, (LPARAM)&start, (WPARAM)&end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTSEL_SETSTART(2, 2, 8)
+ TEST_TXTSEL_SETSTART(-1, 0, 8)
+ TEST_TXTSEL_SETSTART(13, 12, 12)
+
+ release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+}
+
+static void test_ITextSelection_SetEnd(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextSelection *txtSel = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ SendMessageA(w, EM_SETSEL, first, lim);
+ hres = ITextSelection_SetEnd(txtSel, lim);
+ ok(hres == S_FALSE, "ITextSelection_SetEnd\n");
+
+#define TEST_TXTSEL_SETEND(cp, expected_start, expected_end) \
+ hres = ITextSelection_SetEnd(txtSel, cp); \
+ ok(hres == S_OK, "ITextSelection_SetEnd\n"); \
+ SendMessageA(w, EM_GETSEL, (LPARAM)&start, (WPARAM)&end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTSEL_SETEND(6, 4, 6)
+ TEST_TXTSEL_SETEND(14, 4, 13)
+ TEST_TXTSEL_SETEND(-1, 0, 0)
+
+ release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+}
+
START_TEST(richole)
{
/* Must explicitly LoadLibrary(). The test has no references to functions in
@@ -3820,6 +3951,8 @@ START_TEST(richole)
test_GetText();
test_ITextSelection_GetChar();
test_ITextSelection_GetStart_GetEnd();
+ test_ITextSelection_SetStart();
+ test_ITextSelection_SetEnd();
test_ITextSelection_Collapse();
test_ITextDocument_Range();
test_ITextRange_GetChar();
@@ -3827,6 +3960,8 @@ START_TEST(richole)
test_ITextRange_GetStart_GetEnd();
test_ITextRange_SetRange();
test_ITextRange_GetDuplicate();
+ test_ITextRange_SetStart();
+ test_ITextRange_SetEnd();
test_ITextRange_Collapse();
test_GetClientSite();
test_IOleWindow_GetWindow();
--
2.20.1

View File

@ -1,191 +0,0 @@
From c1711e301579aa2469cad8b0d3ba5567edc4611b 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 | 20 ++++++++++
dlls/riched20/tests/richole.c | 93 +++++++++++++++++++++++++++++++++++++++++++
2 files changed, 113 insertions(+)
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
index 1013e67..9e7d853 100644
--- a/dlls/riched20/richole.c
+++ b/dlls/riched20/richole.c
@@ -2654,6 +2654,10 @@ static HRESULT WINAPI TextFont_SetDuplicate(ITextFont *iface, ITextFont *pFont)
{
ITextFontImpl *This = impl_from_ITextFont(iface);
FIXME("(%p)->(%p): stub\n", This, pFont);
+
+ if (This->range && !get_range_reole(This->range))
+ return CO_E_RELEASED;
+
return E_NOTIMPL;
}
@@ -2661,6 +2665,10 @@ static HRESULT WINAPI TextFont_CanChange(ITextFont *iface, LONG *ret)
{
ITextFontImpl *This = impl_from_ITextFont(iface);
FIXME("(%p)->(%p): stub\n", This, ret);
+
+ if (This->range && !get_range_reole(This->range))
+ return CO_E_RELEASED;
+
return E_NOTIMPL;
}
@@ -2668,6 +2676,10 @@ static HRESULT WINAPI TextFont_IsEqual(ITextFont *iface, ITextFont *font, LONG *
{
ITextFontImpl *This = impl_from_ITextFont(iface);
FIXME("(%p)->(%p %p): stub\n", This, font, ret);
+
+ if (This->range && !get_range_reole(This->range))
+ return CO_E_RELEASED;
+
return E_NOTIMPL;
}
@@ -2841,6 +2853,10 @@ static HRESULT WINAPI TextFont_GetStyle(ITextFont *iface, LONG *value)
{
ITextFontImpl *This = impl_from_ITextFont(iface);
FIXME("(%p)->(%p): stub\n", This, value);
+
+ if (This->range && !get_range_reole(This->range))
+ return CO_E_RELEASED;
+
return E_NOTIMPL;
}
@@ -2848,6 +2864,10 @@ static HRESULT WINAPI TextFont_SetStyle(ITextFont *iface, LONG value)
{
ITextFontImpl *This = impl_from_ITextFont(iface);
FIXME("(%p)->(%d): stub\n", This, value);
+
+ if (This->range && !get_range_reole(This->range))
+ return CO_E_RELEASED;
+
return E_NOTIMPL;
}
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index 8047f4b..851ae9a 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -3528,6 +3528,97 @@ static void test_ITextSelection_SetEnd(void)
release_interfaces(&w, &reOle, &txtDoc, &txtSel);
}
+static void test_ITextRange_GetFont(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ ITextFont *txtFont = NULL, *txtFont1 = NULL;
+ HRESULT hres;
+ int first, lim;
+ int refcount;
+ static const CHAR test_text1[] = "TestSomeText";
+ LONG value;
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 4;
+ ITextDocument_Range(txtDoc, first, lim, &txtRge);
+ refcount = get_refcount((IUnknown *)txtRge);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextRange_GetFont(txtRge, &txtFont);
+ ok(hres == S_OK, "ITextRange_GetFont\n");
+ refcount = get_refcount((IUnknown *)txtFont);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ refcount = get_refcount((IUnknown *)txtRge);
+ ok(refcount == 2, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextRange_GetFont(txtRge, &txtFont1);
+ ok(hres == S_OK, "ITextRange_GetFont\n");
+ ok(txtFont1 != txtFont, "A new pointer should be return\n");
+ refcount = get_refcount((IUnknown *)txtFont1);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ ITextFont_Release(txtFont1);
+ refcount = get_refcount((IUnknown *)txtRge);
+ ok(refcount == 2, "got wrong ref count: %d\n", refcount);
+
+ ITextRange_Release(txtRge);
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+
+ hres = ITextFont_GetOutline(txtFont, &value);
+ ok(hres == CO_E_RELEASED, "ITextFont after ITextDocument destroyed\n");
+
+ ITextFont_Release(txtFont);
+}
+
+static void test_ITextSelection_GetFont(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextSelection *txtSel = NULL;
+ ITextFont *txtFont = NULL, *txtFont1 = NULL;
+ HRESULT hres;
+ int first, lim;
+ int refcount;
+ static const CHAR test_text1[] = "TestSomeText";
+ LONG value;
+
+ create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 4;
+ SendMessageA(w, EM_SETSEL, first, lim);
+ refcount = get_refcount((IUnknown *)txtSel);
+ ok(refcount == 2, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextSelection_GetFont(txtSel, &txtFont);
+ ok(hres == S_OK, "ITextSelection_GetFont\n");
+ refcount = get_refcount((IUnknown *)txtFont);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ refcount = get_refcount((IUnknown *)txtSel);
+ ok(refcount == 3, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextSelection_GetFont(txtSel, &txtFont1);
+ ok(hres == S_OK, "ITextSelection_GetFont\n");
+ ok(txtFont1 != txtFont, "A new pointer should be return\n");
+ refcount = get_refcount((IUnknown *)txtFont1);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ ITextFont_Release(txtFont1);
+ refcount = get_refcount((IUnknown *)txtSel);
+ ok(refcount == 3, "got wrong ref count: %d\n", refcount);
+
+ release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+
+ hres = ITextFont_GetOutline(txtFont, &value);
+ ok(hres == CO_E_RELEASED, "ITextFont after ITextDocument destroyed\n");
+
+ ITextFont_Release(txtFont);
+}
+
START_TEST(richole)
{
/* Must explicitly LoadLibrary(). The test has no references to functions in
@@ -3543,6 +3634,7 @@ START_TEST(richole)
test_ITextSelection_SetStart();
test_ITextSelection_SetEnd();
test_ITextSelection_Collapse();
+ test_ITextSelection_GetFont();
test_ITextDocument_Range();
test_ITextRange_GetChar();
test_ITextRange_ScrollIntoView();
@@ -3551,6 +3643,7 @@ START_TEST(richole)
test_ITextRange_SetStart();
test_ITextRange_SetEnd();
test_ITextRange_Collapse();
+ test_ITextRange_GetFont();
test_GetClientSite();
test_IOleWindow_GetWindow();
test_IOleInPlaceSite_GetWindow();
--
2.7.1

View File

@ -1,19 +1,19 @@
From b2a2a423ce6d478f1d34408c5db559bffc482a17 Mon Sep 17 00:00:00 2001
From bd691edcc2cedd99ca55b1628980c46b93ddf90d 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
Subject: [PATCH] riched20: Stub for ITextPara interface and implement
ITextRange::GetPara.
---
dlls/riched20/richole.c | 202 ++++++++++++++++++++++++++++++++++++++++++
dlls/riched20/tests/richole.c | 47 ++++++++++
2 files changed, 249 insertions(+)
dlls/riched20/richole.c | 202 +++++++++++++++++++++++++
dlls/riched20/tests/richole.c | 270 ++++++++++++++++++++++++++++++++++
2 files changed, 472 insertions(+)
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
index 64809cc..c309292 100644
index c1119200153..724113404b4 100644
--- a/dlls/riched20/richole.c
+++ b/dlls/riched20/richole.c
@@ -3264,6 +3264,16 @@ static ULONG WINAPI TextPara_Release(ITextPara *iface)
@@ -3422,6 +3422,16 @@ static ULONG WINAPI TextPara_Release(ITextPara *iface)
return ref;
}
@ -30,7 +30,7 @@ index 64809cc..c309292 100644
static HRESULT WINAPI TextPara_GetTypeInfoCount(ITextPara *iface, UINT *pctinfo)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
@@ -3330,6 +3340,10 @@ static HRESULT WINAPI TextPara_GetDuplicate(ITextPara *iface, ITextPara **ret)
@@ -3489,6 +3499,10 @@ static HRESULT WINAPI TextPara_GetDuplicate(ITextPara *iface, ITextPara **ret)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, ret);
@ -41,7 +41,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3337,6 +3351,10 @@ static HRESULT WINAPI TextPara_SetDuplicate(ITextPara *iface, ITextPara *para)
@@ -3496,6 +3510,10 @@ static HRESULT WINAPI TextPara_SetDuplicate(ITextPara *iface, ITextPara *para)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, para);
@ -52,7 +52,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3344,6 +3362,10 @@ static HRESULT WINAPI TextPara_CanChange(ITextPara *iface, LONG *ret)
@@ -3503,6 +3521,10 @@ static HRESULT WINAPI TextPara_CanChange(ITextPara *iface, LONG *ret)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, ret);
@ -63,7 +63,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3351,6 +3373,10 @@ static HRESULT WINAPI TextPara_IsEqual(ITextPara *iface, ITextPara *para, LONG *
@@ -3510,6 +3532,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);
@ -74,7 +74,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3358,6 +3384,10 @@ static HRESULT WINAPI TextPara_Reset(ITextPara *iface, LONG value)
@@ -3517,6 +3543,10 @@ static HRESULT WINAPI TextPara_Reset(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -85,7 +85,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3365,6 +3395,10 @@ static HRESULT WINAPI TextPara_GetStyle(ITextPara *iface, LONG *value)
@@ -3524,6 +3554,10 @@ static HRESULT WINAPI TextPara_GetStyle(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -96,7 +96,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3372,6 +3406,10 @@ static HRESULT WINAPI TextPara_SetStyle(ITextPara *iface, LONG value)
@@ -3531,6 +3565,10 @@ static HRESULT WINAPI TextPara_SetStyle(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -107,7 +107,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3379,6 +3417,10 @@ static HRESULT WINAPI TextPara_GetAlignment(ITextPara *iface, LONG *value)
@@ -3538,6 +3576,10 @@ static HRESULT WINAPI TextPara_GetAlignment(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -118,7 +118,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3386,6 +3428,10 @@ static HRESULT WINAPI TextPara_SetAlignment(ITextPara *iface, LONG value)
@@ -3545,6 +3587,10 @@ static HRESULT WINAPI TextPara_SetAlignment(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -129,7 +129,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3393,6 +3439,10 @@ static HRESULT WINAPI TextPara_GetHyphenation(ITextPara *iface, LONG *value)
@@ -3552,6 +3598,10 @@ static HRESULT WINAPI TextPara_GetHyphenation(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -140,7 +140,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3400,6 +3450,10 @@ static HRESULT WINAPI TextPara_SetHyphenation(ITextPara *iface, LONG value)
@@ -3559,6 +3609,10 @@ static HRESULT WINAPI TextPara_SetHyphenation(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -151,7 +151,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3407,6 +3461,10 @@ static HRESULT WINAPI TextPara_GetFirstLineIndent(ITextPara *iface, FLOAT *value
@@ -3566,6 +3620,10 @@ static HRESULT WINAPI TextPara_GetFirstLineIndent(ITextPara *iface, FLOAT *value
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -162,7 +162,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3414,6 +3472,10 @@ static HRESULT WINAPI TextPara_GetKeepTogether(ITextPara *iface, LONG *value)
@@ -3573,6 +3631,10 @@ static HRESULT WINAPI TextPara_GetKeepTogether(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -173,7 +173,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3421,6 +3483,10 @@ static HRESULT WINAPI TextPara_SetKeepTogether(ITextPara *iface, LONG value)
@@ -3580,6 +3642,10 @@ static HRESULT WINAPI TextPara_SetKeepTogether(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -184,7 +184,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3428,6 +3494,10 @@ static HRESULT WINAPI TextPara_GetKeepWithNext(ITextPara *iface, LONG *value)
@@ -3587,6 +3653,10 @@ static HRESULT WINAPI TextPara_GetKeepWithNext(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -195,7 +195,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3435,6 +3505,10 @@ static HRESULT WINAPI TextPara_SetKeepWithNext(ITextPara *iface, LONG value)
@@ -3594,6 +3664,10 @@ static HRESULT WINAPI TextPara_SetKeepWithNext(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -206,7 +206,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3442,6 +3516,10 @@ static HRESULT WINAPI TextPara_GetLeftIndent(ITextPara *iface, FLOAT *value)
@@ -3601,6 +3675,10 @@ static HRESULT WINAPI TextPara_GetLeftIndent(ITextPara *iface, FLOAT *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -217,7 +217,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3449,6 +3527,10 @@ static HRESULT WINAPI TextPara_GetLineSpacing(ITextPara *iface, FLOAT *value)
@@ -3608,6 +3686,10 @@ static HRESULT WINAPI TextPara_GetLineSpacing(ITextPara *iface, FLOAT *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -228,7 +228,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3456,6 +3538,10 @@ static HRESULT WINAPI TextPara_GetLineSpacingRule(ITextPara *iface, LONG *value)
@@ -3615,6 +3697,10 @@ static HRESULT WINAPI TextPara_GetLineSpacingRule(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -239,7 +239,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3463,6 +3549,10 @@ static HRESULT WINAPI TextPara_GetListAlignment(ITextPara *iface, LONG *value)
@@ -3622,6 +3708,10 @@ static HRESULT WINAPI TextPara_GetListAlignment(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -250,7 +250,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3470,6 +3560,10 @@ static HRESULT WINAPI TextPara_SetListAlignment(ITextPara *iface, LONG value)
@@ -3629,6 +3719,10 @@ static HRESULT WINAPI TextPara_SetListAlignment(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -261,7 +261,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3477,6 +3571,10 @@ static HRESULT WINAPI TextPara_GetListLevelIndex(ITextPara *iface, LONG *value)
@@ -3636,6 +3730,10 @@ static HRESULT WINAPI TextPara_GetListLevelIndex(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -272,7 +272,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3484,6 +3582,10 @@ static HRESULT WINAPI TextPara_SetListLevelIndex(ITextPara *iface, LONG value)
@@ -3643,6 +3741,10 @@ static HRESULT WINAPI TextPara_SetListLevelIndex(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -283,7 +283,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3491,6 +3593,10 @@ static HRESULT WINAPI TextPara_GetListStart(ITextPara *iface, LONG *value)
@@ -3650,6 +3752,10 @@ static HRESULT WINAPI TextPara_GetListStart(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -294,7 +294,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3498,6 +3604,10 @@ static HRESULT WINAPI TextPara_SetListStart(ITextPara *iface, LONG value)
@@ -3657,6 +3763,10 @@ static HRESULT WINAPI TextPara_SetListStart(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -305,7 +305,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3505,6 +3615,10 @@ static HRESULT WINAPI TextPara_GetListTab(ITextPara *iface, FLOAT *value)
@@ -3664,6 +3774,10 @@ static HRESULT WINAPI TextPara_GetListTab(ITextPara *iface, FLOAT *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -316,7 +316,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3512,6 +3626,10 @@ static HRESULT WINAPI TextPara_SetListTab(ITextPara *iface, FLOAT value)
@@ -3671,6 +3785,10 @@ static HRESULT WINAPI TextPara_SetListTab(ITextPara *iface, FLOAT value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%.2f)\n", This, value);
@ -327,7 +327,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3519,6 +3637,10 @@ static HRESULT WINAPI TextPara_GetListType(ITextPara *iface, LONG *value)
@@ -3678,6 +3796,10 @@ static HRESULT WINAPI TextPara_GetListType(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -338,7 +338,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3526,6 +3648,10 @@ static HRESULT WINAPI TextPara_SetListType(ITextPara *iface, LONG value)
@@ -3685,6 +3807,10 @@ static HRESULT WINAPI TextPara_SetListType(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -349,7 +349,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3533,6 +3659,10 @@ static HRESULT WINAPI TextPara_GetNoLineNumber(ITextPara *iface, LONG *value)
@@ -3692,6 +3818,10 @@ static HRESULT WINAPI TextPara_GetNoLineNumber(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -360,7 +360,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3540,6 +3670,10 @@ static HRESULT WINAPI TextPara_SetNoLineNumber(ITextPara *iface, LONG value)
@@ -3699,6 +3829,10 @@ static HRESULT WINAPI TextPara_SetNoLineNumber(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -371,7 +371,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3547,6 +3681,10 @@ static HRESULT WINAPI TextPara_GetPageBreakBefore(ITextPara *iface, LONG *value)
@@ -3706,6 +3840,10 @@ static HRESULT WINAPI TextPara_GetPageBreakBefore(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -382,7 +382,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3554,6 +3692,10 @@ static HRESULT WINAPI TextPara_SetPageBreakBefore(ITextPara *iface, LONG value)
@@ -3713,6 +3851,10 @@ static HRESULT WINAPI TextPara_SetPageBreakBefore(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -393,7 +393,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3561,6 +3703,10 @@ static HRESULT WINAPI TextPara_GetRightIndent(ITextPara *iface, FLOAT *value)
@@ -3720,6 +3862,10 @@ static HRESULT WINAPI TextPara_GetRightIndent(ITextPara *iface, FLOAT *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -404,7 +404,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3568,6 +3714,10 @@ static HRESULT WINAPI TextPara_SetRightIndent(ITextPara *iface, FLOAT value)
@@ -3727,6 +3873,10 @@ static HRESULT WINAPI TextPara_SetRightIndent(ITextPara *iface, FLOAT value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%.2f)\n", This, value);
@ -415,7 +415,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3575,6 +3725,10 @@ static HRESULT WINAPI TextPara_SetIndents(ITextPara *iface, FLOAT StartIndent, F
@@ -3734,6 +3884,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);
@ -426,7 +426,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3582,6 +3736,10 @@ static HRESULT WINAPI TextPara_SetLineSpacing(ITextPara *iface, LONG LineSpacing
@@ -3741,6 +3895,10 @@ static HRESULT WINAPI TextPara_SetLineSpacing(ITextPara *iface, LONG LineSpacing
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d %.2f)\n", This, LineSpacingRule, LineSpacing);
@ -437,7 +437,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3589,6 +3747,10 @@ static HRESULT WINAPI TextPara_GetSpaceAfter(ITextPara *iface, FLOAT *value)
@@ -3748,6 +3906,10 @@ static HRESULT WINAPI TextPara_GetSpaceAfter(ITextPara *iface, FLOAT *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -448,7 +448,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3596,6 +3758,10 @@ static HRESULT WINAPI TextPara_SetSpaceAfter(ITextPara *iface, FLOAT value)
@@ -3755,6 +3917,10 @@ static HRESULT WINAPI TextPara_SetSpaceAfter(ITextPara *iface, FLOAT value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%.2f)\n", This, value);
@ -459,7 +459,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3603,6 +3769,10 @@ static HRESULT WINAPI TextPara_GetSpaceBefore(ITextPara *iface, FLOAT *value)
@@ -3762,6 +3928,10 @@ static HRESULT WINAPI TextPara_GetSpaceBefore(ITextPara *iface, FLOAT *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -470,7 +470,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3610,6 +3780,10 @@ static HRESULT WINAPI TextPara_SetSpaceBefore(ITextPara *iface, FLOAT value)
@@ -3769,6 +3939,10 @@ static HRESULT WINAPI TextPara_SetSpaceBefore(ITextPara *iface, FLOAT value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%.2f)\n", This, value);
@ -481,7 +481,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3617,6 +3791,10 @@ static HRESULT WINAPI TextPara_GetWidowControl(ITextPara *iface, LONG *value)
@@ -3776,6 +3950,10 @@ static HRESULT WINAPI TextPara_GetWidowControl(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -492,7 +492,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3624,6 +3802,10 @@ static HRESULT WINAPI TextPara_SetWidowControl(ITextPara *iface, LONG value)
@@ -3783,6 +3961,10 @@ static HRESULT WINAPI TextPara_SetWidowControl(ITextPara *iface, LONG value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%d)\n", This, value);
@ -503,7 +503,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3631,6 +3813,10 @@ static HRESULT WINAPI TextPara_GetTabCount(ITextPara *iface, LONG *value)
@@ -3790,6 +3972,10 @@ static HRESULT WINAPI TextPara_GetTabCount(ITextPara *iface, LONG *value)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%p)\n", This, value);
@ -514,7 +514,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3638,6 +3824,10 @@ static HRESULT WINAPI TextPara_AddTab(ITextPara *iface, FLOAT tbPos, LONG tbAlig
@@ -3797,6 +3983,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);
@ -525,7 +525,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3645,6 +3835,10 @@ static HRESULT WINAPI TextPara_ClearAllTabs(ITextPara *iface)
@@ -3804,6 +3994,10 @@ static HRESULT WINAPI TextPara_ClearAllTabs(ITextPara *iface)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)\n", This);
@ -536,7 +536,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3652,6 +3846,10 @@ static HRESULT WINAPI TextPara_DeleteTab(ITextPara *iface, FLOAT pos)
@@ -3811,6 +4005,10 @@ static HRESULT WINAPI TextPara_DeleteTab(ITextPara *iface, FLOAT pos)
{
ITextParaImpl *This = impl_from_ITextPara(iface);
FIXME("(%p)->(%.2f)\n", This, pos);
@ -547,7 +547,7 @@ index 64809cc..c309292 100644
return E_NOTIMPL;
}
@@ -3659,6 +3857,10 @@ static HRESULT WINAPI TextPara_GetTab(ITextPara *iface, LONG iTab, FLOAT *ptbPos
@@ -3818,6 +4016,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);
@ -559,13 +559,235 @@ index 64809cc..c309292 100644
}
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index 5f8e1cc..c148034 100644
index 70646202f04..6dadf622732 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -3473,6 +3473,52 @@ static void test_ITextSelection_GetFont(void)
ITextFont_Release(txtFont);
@@ -3808,6 +3808,274 @@ static void test_MoveEnd(void)
ITextRange_Release(range);
}
+static void test_ITextRange_SetStart(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ ITextDocument_Range(txtDoc, first, lim, &txtRge);
+ hres = ITextRange_SetStart(txtRge, first);
+ ok(hres == S_FALSE, "ITextRange_SetStart\n");
+
+#define TEST_TXTRGE_SETSTART(cp, expected_start, expected_end) \
+ hres = ITextRange_SetStart(txtRge, cp); \
+ ok(hres == S_OK, "ITextRange_SetStart\n"); \
+ ITextRange_GetStart(txtRge, &start); \
+ ITextRange_GetEnd(txtRge, &end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTRGE_SETSTART(2, 2, 8)
+ TEST_TXTRGE_SETSTART(-1, 0, 8)
+ TEST_TXTRGE_SETSTART(13, 12, 12)
+
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+}
+
+static void test_ITextRange_SetEnd(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ ITextDocument_Range(txtDoc, first, lim, &txtRge);
+ hres = ITextRange_SetEnd(txtRge, lim);
+ ok(hres == S_FALSE, "ITextRange_SetEnd\n");
+
+#define TEST_TXTRGE_SETEND(cp, expected_start, expected_end) \
+ hres = ITextRange_SetEnd(txtRge, cp); \
+ ok(hres == S_OK, "ITextRange_SetEnd\n"); \
+ ITextRange_GetStart(txtRge, &start); \
+ ITextRange_GetEnd(txtRge, &end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTRGE_SETEND(6, 4, 6)
+ TEST_TXTRGE_SETEND(14, 4, 13)
+ TEST_TXTRGE_SETEND(-1, 0, 0)
+
+ ITextRange_Release(txtRge);
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+}
+
+static void test_ITextSelection_SetStart(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextSelection *txtSel = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ SendMessageA(w, EM_SETSEL, first, lim);
+ hres = ITextSelection_SetStart(txtSel, first);
+ ok(hres == S_FALSE, "ITextSelection_SetStart\n");
+
+#define TEST_TXTSEL_SETSTART(cp, expected_start, expected_end) \
+ hres = ITextSelection_SetStart(txtSel, cp); \
+ ok(hres == S_OK, "ITextSelection_SetStart\n"); \
+ SendMessageA(w, EM_GETSEL, (LPARAM)&start, (WPARAM)&end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTSEL_SETSTART(2, 2, 8)
+ TEST_TXTSEL_SETSTART(-1, 0, 8)
+ TEST_TXTSEL_SETSTART(13, 12, 12)
+
+ release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+}
+
+static void test_ITextSelection_SetEnd(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextSelection *txtSel = NULL;
+ HRESULT hres;
+ LONG first, lim, start, end;
+ static const CHAR test_text1[] = "TestSomeText";
+
+ create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 8;
+ SendMessageA(w, EM_SETSEL, first, lim);
+ hres = ITextSelection_SetEnd(txtSel, lim);
+ ok(hres == S_FALSE, "ITextSelection_SetEnd\n");
+
+#define TEST_TXTSEL_SETEND(cp, expected_start, expected_end) \
+ hres = ITextSelection_SetEnd(txtSel, cp); \
+ ok(hres == S_OK, "ITextSelection_SetEnd\n"); \
+ SendMessageA(w, EM_GETSEL, (LPARAM)&start, (WPARAM)&end); \
+ ok(start == expected_start, "got wrong start value: %d\n", start); \
+ ok(end == expected_end, "got wrong end value: %d\n", end);
+
+ TEST_TXTSEL_SETEND(6, 4, 6)
+ TEST_TXTSEL_SETEND(14, 4, 13)
+ TEST_TXTSEL_SETEND(-1, 0, 0)
+
+ release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+}
+
+static void test_ITextRange_GetFont(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ ITextFont *txtFont = NULL, *txtFont1 = NULL;
+ HRESULT hres;
+ int first, lim;
+ int refcount;
+ static const CHAR test_text1[] = "TestSomeText";
+ LONG value;
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 4;
+ ITextDocument_Range(txtDoc, first, lim, &txtRge);
+ refcount = get_refcount((IUnknown *)txtRge);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextRange_GetFont(txtRge, &txtFont);
+ ok(hres == S_OK, "ITextRange_GetFont\n");
+ refcount = get_refcount((IUnknown *)txtFont);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ refcount = get_refcount((IUnknown *)txtRge);
+ ok(refcount == 2, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextRange_GetFont(txtRge, &txtFont1);
+ ok(hres == S_OK, "ITextRange_GetFont\n");
+ ok(txtFont1 != txtFont, "A new pointer should be return\n");
+ refcount = get_refcount((IUnknown *)txtFont1);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ ITextFont_Release(txtFont1);
+ refcount = get_refcount((IUnknown *)txtRge);
+ ok(refcount == 2, "got wrong ref count: %d\n", refcount);
+
+ ITextRange_Release(txtRge);
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+
+ hres = ITextFont_GetOutline(txtFont, &value);
+ ok(hres == CO_E_RELEASED, "ITextFont after ITextDocument destroyed\n");
+
+ ITextFont_Release(txtFont);
+}
+
+static void test_ITextSelection_GetFont(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextSelection *txtSel = NULL;
+ ITextFont *txtFont = NULL, *txtFont1 = NULL;
+ HRESULT hres;
+ int first, lim;
+ int refcount;
+ static const CHAR test_text1[] = "TestSomeText";
+ LONG value;
+
+ create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ first = 4, lim = 4;
+ SendMessageA(w, EM_SETSEL, first, lim);
+ refcount = get_refcount((IUnknown *)txtSel);
+ ok(refcount == 2, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextSelection_GetFont(txtSel, &txtFont);
+ ok(hres == S_OK, "ITextSelection_GetFont\n");
+ refcount = get_refcount((IUnknown *)txtFont);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ refcount = get_refcount((IUnknown *)txtSel);
+ ok(refcount == 3, "got wrong ref count: %d\n", refcount);
+
+ hres = ITextSelection_GetFont(txtSel, &txtFont1);
+ ok(hres == S_OK, "ITextSelection_GetFont\n");
+ ok(txtFont1 != txtFont, "A new pointer should be return\n");
+ refcount = get_refcount((IUnknown *)txtFont1);
+ ok(refcount == 1, "got wrong ref count: %d\n", refcount);
+ ITextFont_Release(txtFont1);
+ refcount = get_refcount((IUnknown *)txtSel);
+ ok(refcount == 3, "got wrong ref count: %d\n", refcount);
+
+ release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+
+ hres = ITextFont_GetOutline(txtFont, &value);
+ ok(hres == CO_E_RELEASED, "ITextFont after ITextDocument destroyed\n");
+
+ ITextFont_Release(txtFont);
+}
+
+static void test_ITextRange_GetPara(void)
+{
+ HWND w;
@ -615,14 +837,15 @@ index 5f8e1cc..c148034 100644
START_TEST(richole)
{
/* Must explicitly LoadLibrary(). The test has no references to functions in
@@ -3497,6 +3543,7 @@ START_TEST(richole)
test_ITextRange_SetEnd();
@@ -3828,6 +4096,8 @@ START_TEST(richole)
test_ITextRange_SetRange();
test_ITextRange_GetDuplicate();
test_ITextRange_Collapse();
test_ITextRange_GetFont();
+ test_ITextRange_GetFont();
+ test_ITextRange_GetPara();
test_GetClientSite();
test_IOleWindow_GetWindow();
test_IOleInPlaceSite_GetWindow();
--
2.4.2
2.17.1

View File

@ -1,68 +0,0 @@
From ce774a2b82262619fb882649ca02802e943ce404 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.
---
dlls/riched20/tests/richole.c | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index c148034..051d9fe 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -3519,6 +3519,43 @@ static void test_ITextRange_GetPara(void)
ITextPara_Release(txtPara);
}
+static void test_ITextRange_GetText(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ HRESULT hres;
+ BSTR bstr = NULL;
+ static const CHAR test_text1[] = "TestSomeText";
+ static const WCHAR bufW1[] = {'T', 'e', 's', 't', 0};
+ static const WCHAR bufW2[] = {'T', 'e', 'x', 't', '\r', 0};
+ static const WCHAR bufW3[] = {'T', 'e', 'x', 't', 0};
+ static const WCHAR bufW4[] = {'T', 'e', 's', 't', 'S', 'o', 'm',
+ 'e', 'T', 'e', 'x', 't', '\r', 0};
+ static const WCHAR bufW5[] = {'\r', 0};
+
+
+#define TEST_TXTRGE_GETTEXT(first, lim, expected_string) \
+ create_interfaces(&w, &reOle, &txtDoc, NULL); \
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1); \
+ ITextDocument_Range(txtDoc, first, lim, &txtRge); \
+ hres = ITextRange_GetText(txtRge, &bstr); \
+ ok(hres == S_OK, "ITextRange_GetText\n"); \
+ ok(!lstrcmpW(bstr, expected_string), "got wrong text: %s\n", wine_dbgstr_w(bstr)); \
+ SysFreeString(bstr); \
+ ITextRange_Release(txtRge); \
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+
+ TEST_TXTRGE_GETTEXT(0, 4, bufW1)
+ TEST_TXTRGE_GETTEXT(4, 0, bufW1)
+ TEST_TXTRGE_GETTEXT(8, 12, bufW3)
+ TEST_TXTRGE_GETTEXT(8, 13, bufW2)
+ TEST_TXTRGE_GETTEXT(12, 13, bufW5)
+ TEST_TXTRGE_GETTEXT(0, 13, bufW4)
+ TEST_TXTRGE_GETTEXT(1, 1, NULL)
+}
+
START_TEST(richole)
{
/* Must explicitly LoadLibrary(). The test has no references to functions in
@@ -3544,6 +3581,7 @@ START_TEST(richole)
test_ITextRange_Collapse();
test_ITextRange_GetFont();
test_ITextRange_GetPara();
+ test_ITextRange_GetText();
test_GetClientSite();
test_IOleWindow_GetWindow();
test_IOleInPlaceSite_GetWindow();
--
2.4.2

View File

@ -1,77 +0,0 @@
From 2d05fb15e16385684dfc1e9f1d2c51fa4d5830d9 Mon Sep 17 00:00:00 2001
From: Jactry Zeng <wine@jactry.com>
Date: Fri, 15 Aug 2014 14:27:21 +0800
Subject: [PATCH] riched20: Implement ITextRange::IsEqual.
---
dlls/riched20/tests/richole.c | 47 +++++++++++++++++++++++++++++++++++
1 file changed, 47 insertions(+)
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index 4512085ea3..b2bb21d69b 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -4113,6 +4113,52 @@ static void test_ITextRange_GetText(void)
TEST_TXTRGE_GETTEXT(1, 1, NULL)
}
+static void test_ITextRange_IsEqual2(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge1 = NULL, *txtRge2 = NULL;
+ HRESULT hres;
+ static const CHAR test_text1[] = "TestSomeText";
+ LONG res;
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+ ITextDocument_Range(txtDoc, 2, 4, &txtRge1);
+ ITextDocument_Range(txtDoc, 2, 4, &txtRge2);
+
+#define TEST_TXTRGE_ISEQUAL(expected_hres, expected_res) \
+ hres = ITextRange_IsEqual(txtRge1, txtRge2, &res); \
+ ok(hres == expected_hres, "ITextRange_IsEqual\n"); \
+ ok(res == expected_res, "got wrong return value: %d\n", res);
+
+ TEST_TXTRGE_ISEQUAL(S_OK, tomTrue)
+ ITextRange_SetRange(txtRge2, 1, 2);
+ TEST_TXTRGE_ISEQUAL(S_FALSE, tomFalse)
+
+ ITextRange_SetRange(txtRge1, 1, 1);
+ ITextRange_SetRange(txtRge2, 2, 2);
+ TEST_TXTRGE_ISEQUAL(S_FALSE, tomFalse)
+
+ ITextRange_SetRange(txtRge2, 1, 1);
+ TEST_TXTRGE_ISEQUAL(S_OK, tomTrue)
+
+ hres = ITextRange_IsEqual(txtRge1, txtRge1, &res);
+ ok(hres == S_OK, "ITextRange_IsEqual\n");
+ ok(res == tomTrue, "got wrong return value: %d\n", res);
+
+ hres = ITextRange_IsEqual(txtRge1, txtRge2, NULL);
+ ok(hres == S_OK, "ITextRange_IsEqual\n");
+
+ hres = ITextRange_IsEqual(txtRge1, NULL, NULL);
+ ok(hres == S_FALSE, "ITextRange_IsEqual\n");
+
+ ITextRange_Release(txtRge1);
+ ITextRange_Release(txtRge2);
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+}
+
START_TEST(richole)
{
/* Must explicitly LoadLibrary(). The test has no references to functions in
@@ -4141,6 +4187,7 @@ START_TEST(richole)
test_ITextRange_GetFont();
test_ITextRange_GetPara();
test_ITextRange_GetText();
+ test_ITextRange_IsEqual2();
test_GetClientSite();
test_IOleWindow_GetWindow();
test_IOleInPlaceSite_GetWindow();
--
2.20.1

View File

@ -1,62 +0,0 @@
From a3c18216d981f2f46f3a2572d5ba17f278c259c2 Mon Sep 17 00:00:00 2001
From: Jactry Zeng <wine@jactry.com>
Date: Mon, 18 Aug 2014 14:38:50 +0800
Subject: [PATCH] riched20: Implement ITextRange::GetStoryLength.
---
dlls/riched20/tests/richole.c | 32 ++++++++++++++++++++++++++++++++
1 file changed, 32 insertions(+)
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index b2bb21d69bc..5e105b3444a 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -4159,6 +4159,37 @@ static void test_ITextRange_IsEqual2(void)
release_interfaces(&w, &reOle, &txtDoc, NULL);
}
+static void test_ITextRange_GetStoryLength(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextRange *txtRge = NULL;
+ HRESULT hres;
+ LONG count;
+ static const CHAR test_text1[] = "TestSomeText";
+ int len = strlen(test_text1) + 1;
+
+ create_interfaces(&w, &reOle, &txtDoc, NULL);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+ ITextDocument_Range(txtDoc, 0, 0, &txtRge);
+
+ hres = ITextRange_GetStoryLength(txtRge, &count);
+ ok(hres == S_OK, "ITextRange_GetStoryLength\n");
+ ok(count == len, "got wrong length: %d\n", count);
+
+ ITextRange_SetRange(txtRge, 1, 2);
+ hres = ITextRange_GetStoryLength(txtRge, &count);
+ ok(hres == S_OK, "ITextRange_GetStoryLength\n");
+ ok(count == len, "got wrong length: %d\n", count);
+
+ hres = ITextRange_GetStoryLength(txtRge, NULL);
+ ok(hres == E_INVALIDARG, "ITextRange_GetStoryLength\n");
+
+ ITextRange_Release(txtRge);
+ release_interfaces(&w, &reOle, &txtDoc, NULL);
+}
+
START_TEST(richole)
{
/* Must explicitly LoadLibrary(). The test has no references to functions in
@@ -4188,6 +4219,7 @@ START_TEST(richole)
test_ITextRange_GetPara();
test_ITextRange_GetText();
test_ITextRange_IsEqual2();
+ test_ITextRange_GetStoryLength();
test_GetClientSite();
test_IOleWindow_GetWindow();
test_IOleInPlaceSite_GetWindow();
--
2.20.1

View File

@ -1,60 +0,0 @@
From e5dad19d1dbab38b6a6c31bd23fe7dac278e6d1a 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.
---
dlls/riched20/tests/richole.c | 30 ++++++++++++++++++++++++++++++
1 file changed, 30 insertions(+)
diff --git a/dlls/riched20/tests/richole.c b/dlls/riched20/tests/richole.c
index c7d6299..38a8f80 100644
--- a/dlls/riched20/tests/richole.c
+++ b/dlls/riched20/tests/richole.c
@@ -3813,6 +3813,35 @@ static void test_ITextRange_GetStoryLength(void)
release_interfaces(&w, &reOle, &txtDoc, NULL);
}
+static void test_ITextSelection_GetStoryLength(void)
+{
+ HWND w;
+ IRichEditOle *reOle = NULL;
+ ITextDocument *txtDoc = NULL;
+ ITextSelection *txtSel = NULL;
+ HRESULT hres;
+ LONG count;
+ static const CHAR test_text1[] = "TestSomeText";
+ int len = strlen(test_text1) + 1;
+
+ create_interfaces(&w, &reOle, &txtDoc, &txtSel);
+ SendMessageA(w, WM_SETTEXT, 0, (LPARAM)test_text1);
+
+ hres = ITextSelection_GetStoryLength(txtSel, &count);
+ ok(hres == S_OK, "ITextSelection_GetStoryLength\n");
+ ok(count == len, "got wrong length: %d\n", count);
+
+ SendMessageA(w, EM_SETSEL, 1, 2);
+ hres = ITextSelection_GetStoryLength(txtSel, &count);
+ ok(hres == S_OK, "ITextSelection_GetStoryLength\n");
+ ok(count == len, "got wrong length: %d\n", count);
+
+ hres = ITextSelection_GetStoryLength(txtSel, NULL);
+ ok(hres == E_INVALIDARG, "ITextSelection_GetStoryLength\n");
+
+ release_interfaces(&w, &reOle, &txtDoc, &txtSel);
+}
+
START_TEST(richole)
{
/* Must explicitly LoadLibrary(). The test has no references to functions in
@@ -3829,6 +3858,7 @@ START_TEST(richole)
test_ITextSelection_SetEnd();
test_ITextSelection_Collapse();
test_ITextSelection_GetFont();
+ test_ITextSelection_GetStoryLength();
test_ITextDocument_Range();
test_ITextRange_GetChar();
test_ITextRange_ScrollIntoView();
--
2.7.1

View File

@ -1,7 +1,7 @@
From 17ad773281bf85925a0070fd0ba4ce07804c497c Mon Sep 17 00:00:00 2001
From fc7edfef4776f6ce7577a0597f78ad4971fe776d 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.
Subject: [PATCH] riched20: Silence repeated FIXMEs triggered by Adobe Reader.
Adobe Reader calls these functions very often while scrolling through a document.
---
@ -9,10 +9,10 @@ Adobe Reader calls these functions very often while scrolling through a document
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/dlls/riched20/richole.c b/dlls/riched20/richole.c
index 8aea23e..39cee96 100644
index 724113404b4..5a620c537d5 100644
--- a/dlls/riched20/richole.c
+++ b/dlls/riched20/richole.c
@@ -927,6 +927,14 @@ static HRESULT WINAPI IRichEditOleImpl_inner_fnQueryInterface(IUnknown *iface, R
@@ -951,6 +951,14 @@ static HRESULT WINAPI IRichEditOleImpl_inner_fnQueryInterface(IUnknown *iface, R
IUnknown_AddRef((IUnknown *)*ppvObj);
return S_OK;
}
@ -27,7 +27,7 @@ index 8aea23e..39cee96 100644
FIXME("%p: unhandled interface %s\n", This, debugstr_guid(riid));
return E_NOINTERFACE;
@@ -3438,7 +3446,9 @@ static HRESULT WINAPI TextPara_SetStyle(ITextPara *iface, LONG value)
@@ -3575,7 +3583,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);
@ -39,5 +39,5 @@ index 8aea23e..39cee96 100644
if (!para_get_reole(This))
return CO_E_RELEASED;
--
2.4.2
2.17.1

View File

@ -1,19 +1,19 @@
From 0873ea7db1a66d1555ac608b249ac350f9c9097b Mon Sep 17 00:00:00 2001
From 5613df7b70c1463cb5d115bf6d6bad077e27ca26 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Michael=20M=C3=BCller?= <michael@fds-team.de>
Date: Fri, 11 Mar 2016 21:44:53 +0100
Subject: [PATCH] wuauserv: Add dummy service.
---
configure.ac | 1 +
loader/wine.inf.in | 11 +++++
programs/wuauserv/Makefile.in | 6 +++
programs/wuauserv/main.c | 104 ++++++++++++++++++++++++++++++++++++++++++
loader/wine.inf.in | 11 ++++
programs/wuauserv/Makefile.in | 6 ++
programs/wuauserv/main.c | 104 ++++++++++++++++++++++++++++++++++
4 files changed, 122 insertions(+)
create mode 100644 programs/wuauserv/Makefile.in
create mode 100644 programs/wuauserv/main.c
diff --git a/configure.ac b/configure.ac
index 13467e5..ddfba7d 100644
index acdd8d5577f..adf23e9a95f 100644
--- a/configure.ac
+++ b/configure.ac
@@ -4039,6 +4039,7 @@ WINE_CONFIG_MAKEFILE(programs/wordpad)
@ -25,34 +25,34 @@ index 13467e5..ddfba7d 100644
WINE_CONFIG_MAKEFILE(programs/xcopy)
WINE_CONFIG_MAKEFILE(programs/xcopy/tests)
diff --git a/loader/wine.inf.in b/loader/wine.inf.in
index edb8401..c5d8e8f 100644
index f77831f44a6..3e6a8e0a8cf 100644
--- a/loader/wine.inf.in
+++ b/loader/wine.inf.in
@@ -136,6 +136,7 @@ AddService=Schedule,0,TaskSchedulerService
@@ -132,6 +132,7 @@ AddService=FontCache,0,FontCacheService
AddService=Schedule,0,TaskSchedulerService
AddService=WineBus,0,WineBusService
AddService=WineHID,0,WineHIDService
AddService=Winmgmt,0,WinmgmtService
+AddService=wuauserv,0,wuauService
[DefaultInstall.NT.Services]
AddService=BITS,0,BITSService
@@ -153,6 +154,7 @@ AddService=Schedule,0,TaskSchedulerService
@@ -148,6 +149,7 @@ AddService=FontCache,0,FontCacheService
AddService=Schedule,0,TaskSchedulerService
AddService=WineBus,0,WineBusService
AddService=WineHID,0,WineHIDService
AddService=Winmgmt,0,WinmgmtService
+AddService=wuauserv,0,wuauService
[DefaultInstall.ntamd64.Services]
AddService=BITS,0,BITSService
@@ -170,6 +172,7 @@ AddService=Schedule,0,TaskSchedulerService
@@ -164,6 +166,7 @@ AddService=FontCache,0,FontCacheService
AddService=Schedule,0,TaskSchedulerService
AddService=WineBus,0,WineBusService
AddService=WineHID,0,WineHIDService
AddService=Winmgmt,0,WinmgmtService
+AddService=wuauserv,0,wuauService
[Strings]
MciExtStr="Software\Microsoft\Windows NT\CurrentVersion\MCI Extensions"
@@ -3471,6 +3474,14 @@ ErrorControl=1
@@ -3634,6 +3637,14 @@ ErrorControl=1
HKR,Parameters,"ServiceDll",,"%11%\schedsvc.dll"
HKLM,%CurrentVersionNT%\SvcHost,"netsvcs",0x00010008,"Schedule"
@ -69,7 +69,7 @@ index edb8401..c5d8e8f 100644
HKLM,"System\CurrentControlSet\Services\Eventlog\Application",,16
diff --git a/programs/wuauserv/Makefile.in b/programs/wuauserv/Makefile.in
new file mode 100644
index 0000000..16f27f1
index 00000000000..16f27f13120
--- /dev/null
+++ b/programs/wuauserv/Makefile.in
@@ -0,0 +1,6 @@
@ -81,7 +81,7 @@ index 0000000..16f27f1
+ main.c
diff --git a/programs/wuauserv/main.c b/programs/wuauserv/main.c
new file mode 100644
index 0000000..31df299
index 00000000000..31df299e90e
--- /dev/null
+++ b/programs/wuauserv/main.c
@@ -0,0 +1,104 @@
@ -190,5 +190,5 @@ index 0000000..31df299
+ return 0;
+}
--
1.9.1
2.17.1