Commit f61d417a authored by Dylan Smith's avatar Dylan Smith Committed by Alexandre Julliard

richedit: Return number of chars inserted for EM_STREAMIN with SF_RTF.

parent e060272d
...@@ -1470,6 +1470,8 @@ static LRESULT ME_StreamIn(ME_TextEditor *editor, DWORD format, EDITSTREAM *stre ...@@ -1470,6 +1470,8 @@ static LRESULT ME_StreamIn(ME_TextEditor *editor, DWORD format, EDITSTREAM *stre
if (!invalidRTF && !inStream.editstream->dwError) if (!invalidRTF && !inStream.editstream->dwError)
{ {
if (format & SF_RTF) { if (format & SF_RTF) {
from = ME_GetCursorOfs(&editor->pCursors[0]);
/* setup the RTF parser */ /* setup the RTF parser */
memset(&parser, 0, sizeof parser); memset(&parser, 0, sizeof parser);
RTFSetEditStream(&parser, &inStream); RTFSetEditStream(&parser, &inStream);
...@@ -1563,6 +1565,8 @@ static LRESULT ME_StreamIn(ME_TextEditor *editor, DWORD format, EDITSTREAM *stre ...@@ -1563,6 +1565,8 @@ static LRESULT ME_StreamIn(ME_TextEditor *editor, DWORD format, EDITSTREAM *stre
} }
} }
} }
to = ME_GetCursorOfs(&editor->pCursors[0]);
num_read = to - from;
style = parser.style; style = parser.style;
} }
......
...@@ -5062,7 +5062,7 @@ static void test_EM_STREAMIN(void) ...@@ -5062,7 +5062,7 @@ static void test_EM_STREAMIN(void)
es.dwError = 0; es.dwError = 0;
es.pfnCallback = test_EM_STREAMIN_esCallback; es.pfnCallback = test_EM_STREAMIN_esCallback;
result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es); result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es);
todo_wine ok(result == 12, "got %ld, expected %d\n", result, 12); ok(result == 12, "got %ld, expected %d\n", result, 12);
result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer); result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer);
ok (result == 12, ok (result == 12,
...@@ -5077,7 +5077,7 @@ static void test_EM_STREAMIN(void) ...@@ -5077,7 +5077,7 @@ static void test_EM_STREAMIN(void)
es.dwError = 0; es.dwError = 0;
es.pfnCallback = test_EM_STREAMIN_esCallback; es.pfnCallback = test_EM_STREAMIN_esCallback;
result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es); result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es);
todo_wine ok(result == 12, "got %ld, expected %d\n", result, 12); ok(result == 12, "got %ld, expected %d\n", result, 12);
result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer); result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer);
ok (result == 12, ok (result == 12,
...@@ -5092,7 +5092,7 @@ static void test_EM_STREAMIN(void) ...@@ -5092,7 +5092,7 @@ static void test_EM_STREAMIN(void)
es.dwError = 0; es.dwError = 0;
es.pfnCallback = test_EM_STREAMIN_esCallback; es.pfnCallback = test_EM_STREAMIN_esCallback;
result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es); result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es);
todo_wine ok(result == 13, "got %ld, expected %d\n", result, 13); ok(result == 13, "got %ld, expected %d\n", result, 13);
result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer); result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer);
ok (result == 14, ok (result == 14,
...@@ -5106,7 +5106,7 @@ static void test_EM_STREAMIN(void) ...@@ -5106,7 +5106,7 @@ static void test_EM_STREAMIN(void)
es.dwError = 0; es.dwError = 0;
es.pfnCallback = test_EM_STREAMIN_esCallback; es.pfnCallback = test_EM_STREAMIN_esCallback;
result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es); result = SendMessage(hwndRichEdit, EM_STREAMIN, SF_RTF, (LPARAM)&es);
todo_wine ok(result == 12, "got %ld, expected %d\n", result, 12); ok(result == 12, "got %ld, expected %d\n", result, 12);
result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer); result = SendMessage(hwndRichEdit, WM_GETTEXT, 1024, (LPARAM) buffer);
ok (result == 12, ok (result == 12,
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment