mirror of
https://github.com/reactos/reactos.git
synced 2024-06-27 16:31:30 +00:00
[0.4.9][WIN32SS] Fix BSOD CORE-15433 and repeatedly hit assert CORE-14755
CORE-15433 "Fix assertless BSOD when Opera 12.18 browses duckduckgo.com" fix ported from 0.4.12-dev-20-g43e2089
(I ported it back earlier into 0.4.11-RC-7-g7d0eadd
already) CORE-14775 Allow NULL, Fix repeatedly hit assert when Opera 12.18 browses www.palemoon.org style_name==NULL by taking parts only of the fix from 0.4.10-dev-284-gae8762e
. I left the verbosed debug-prints aside, as that is not performance-neutral. They are both related. Actually style_name == NULL is ok, that assert was not correct. but some of the code was just not handling it properly and dereferenced it.
This commit is contained in:
parent
3e63d1b811
commit
7c969a1e23
|
@ -912,7 +912,8 @@ IntGdiLoadFontsFromMemory(PGDI_LOAD_FONT pLoadFont,
|
|||
Status = RtlAnsiStringToUnicodeString(&Entry->FaceName, &AnsiString, TRUE);
|
||||
if (NT_SUCCESS(Status))
|
||||
{
|
||||
if (Face->style_name[0] && strcmp(Face->style_name, "Regular"))
|
||||
if (Face->style_name && Face->style_name[0] &&
|
||||
strcmp(Face->style_name, "Regular") != 0)
|
||||
{
|
||||
RtlInitAnsiString(&AnsiString, Face->style_name);
|
||||
Status = RtlAnsiStringToUnicodeString(&Entry->StyleName, &AnsiString, TRUE);
|
||||
|
@ -4067,7 +4068,6 @@ GetFontPenalty(const LOGFONTW * LogFont,
|
|||
|
||||
ASSERT(Otm);
|
||||
ASSERT(LogFont);
|
||||
ASSERT(style_name);
|
||||
|
||||
/* FIXME: Aspect Penalty 30 */
|
||||
/* FIXME: IntSizeSynth Penalty 20 */
|
||||
|
|
Loading…
Reference in a new issue