riched20: Use run ptrs in the EM_GETLINECOUNT handler.
Signed-off-by: Huw Davies <huw@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
fe2fd44e0a
commit
d55bc24001
|
@ -4291,27 +4291,24 @@ LRESULT ME_HandleMessage(ME_TextEditor *editor, UINT msg, WPARAM wParam,
|
||||||
}
|
}
|
||||||
case EM_GETLINECOUNT:
|
case EM_GETLINECOUNT:
|
||||||
{
|
{
|
||||||
ME_DisplayItem *item = editor->pBuffer->pLast;
|
int count = editor->total_rows;
|
||||||
int nRows = editor->total_rows;
|
ME_Run *prev_run, *last_run;
|
||||||
ME_DisplayItem *prev_para = NULL, *last_para = NULL;
|
|
||||||
|
|
||||||
last_para = ME_FindItemBack(item, diRun);
|
last_run = para_end_run( para_prev( editor_end_para( editor ) ) );
|
||||||
prev_para = ME_FindItemBack(last_para, diRun);
|
prev_run = run_prev_all_paras( last_run );
|
||||||
assert(last_para);
|
|
||||||
assert(last_para->member.run.nFlags & MERF_ENDPARA);
|
if (editor->bEmulateVersion10 && prev_run && last_run->nCharOfs == 0 &&
|
||||||
if (editor->bEmulateVersion10 && prev_para &&
|
prev_run->len == 1 && *get_text( prev_run, 0 ) == '\r')
|
||||||
last_para->member.run.nCharOfs == 0 &&
|
|
||||||
prev_para->member.run.len == 1 &&
|
|
||||||
*get_text( &prev_para->member.run, 0 ) == '\r')
|
|
||||||
{
|
{
|
||||||
/* In 1.0 emulation, the last solitary \r at the very end of the text
|
/* In 1.0 emulation, the last solitary \r at the very end of the text
|
||||||
(if one exists) is NOT a line break.
|
(if one exists) is NOT a line break.
|
||||||
FIXME: this is an ugly hack. This should have a more regular model. */
|
FIXME: this is an ugly hack. This should have a more regular model. */
|
||||||
nRows--;
|
count--;
|
||||||
}
|
}
|
||||||
|
|
||||||
TRACE("EM_GETLINECOUNT: nRows==%d\n", nRows);
|
count = max(1, count);
|
||||||
return max(1, nRows);
|
TRACE("EM_GETLINECOUNT: count==%d\n", count);
|
||||||
|
return count;
|
||||||
}
|
}
|
||||||
case EM_LINEFROMCHAR:
|
case EM_LINEFROMCHAR:
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue