mshtml: Don't assume that nsIDOMHTMLScriptElement inherits from nsIDOMHTMLElement in get_script_guid.

This commit is contained in:
Jacek Caban 2014-10-02 11:56:18 +02:00 committed by Alexandre Julliard
parent 1e214eb5d3
commit 013b403c58
1 changed files with 6 additions and 1 deletions

View File

@ -849,6 +849,7 @@ static BOOL get_guid_from_language(LPCWSTR type, GUID *guid)
static BOOL get_script_guid(HTMLInnerWindow *window, nsIDOMHTMLScriptElement *nsscript, GUID *guid) static BOOL get_script_guid(HTMLInnerWindow *window, nsIDOMHTMLScriptElement *nsscript, GUID *guid)
{ {
nsIDOMHTMLElement *nselem;
const PRUnichar *language; const PRUnichar *language;
nsAString val_str; nsAString val_str;
BOOL ret = FALSE; BOOL ret = FALSE;
@ -872,7 +873,11 @@ static BOOL get_script_guid(HTMLInnerWindow *window, nsIDOMHTMLScriptElement *ns
ERR("GetType failed: %08x\n", nsres); ERR("GetType failed: %08x\n", nsres);
} }
nsres = get_elem_attr_value((nsIDOMHTMLElement*)nsscript, languageW, &val_str, &language); nsres = nsIDOMHTMLScriptElement_QueryInterface(nsscript, &IID_nsIDOMHTMLElement, (void**)&nselem);
assert(nsres == NS_OK);
nsres = get_elem_attr_value(nselem, languageW, &val_str, &language);
nsIDOMHTMLElement_Release(nselem);
if(NS_SUCCEEDED(nsres)) { if(NS_SUCCEEDED(nsres)) {
if(*language) { if(*language) {
ret = get_guid_from_language(language, guid); ret = get_guid_from_language(language, guid);