diff --git a/mozilla/content/html/document/src/nsHTMLDocument.cpp b/mozilla/content/html/document/src/nsHTMLDocument.cpp
index 7edc364ba5c..1b1b7cafab6 100644
--- a/mozilla/content/html/document/src/nsHTMLDocument.cpp
+++ b/mozilla/content/html/document/src/nsHTMLDocument.cpp
@@ -4594,6 +4594,11 @@ nsHTMLDocument::QueryCommandValue(const nsAString & commandID,
if (NS_SUCCEEDED(rv) && cStringResult && cStringResult[0]) {
_retval.Assign(NS_ConvertUTF8toUCS2(cStringResult));
}
+ else if (NS_FAILED(rv)) {
+ // get string value if it's not a c-string; might be a font name
+ rv = cmdParams->GetStringValue("state_attribute", _retval);
+ }
+
if (cStringResult) {
nsMemory::Free(cStringResult);
}