Don't trigger "Missing plugin" UI for supported image or document types when there's no URI. b=429157 r+sr=jst a1.9=beltzner

This commit is contained in:
mats.palmgren@bredband.net 2008-04-16 13:07:11 -07:00
Родитель 6bf782cd21
Коммит 3919282961
3 изменённых файлов: 48 добавлений и 2 удалений

Просмотреть файл

@ -1205,8 +1205,8 @@ nsObjectLoadingContent::LoadObject(nsIURI* aURI,
rv = NS_ERROR_NOT_AVAILABLE;
// We should only notify the UI if there is at least a type to go on for
// finding a plugin to use.
if (!aTypeHint.IsEmpty()) {
// finding a plugin to use, unless it's a supported image or document type.
if (!aTypeHint.IsEmpty() && GetTypeOfContent(aTypeHint) == eType_Null) {
UpdateFallbackState(thisContent, fallback, aTypeHint);
}

Просмотреть файл

@ -163,6 +163,7 @@ _TEST_FILES = test_bug5141.html \
test_bug425013.html \
bug426308-redirect.sjs \
test_bug426308.html \
test_bug429157.html \
test_XHR.html \
file_XHR_pass1.xml \
file_XHR_pass2.txt \

Просмотреть файл

@ -0,0 +1,45 @@
<!DOCTYPE HTML>
<html>
<!--
https://bugzilla.mozilla.org/show_bug.cgi?id=429157
-->
<head>
<title>Test for Bug 429157</title>
<script type="text/javascript" src="/MochiKit/MochiKit.js"></script>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body onload="runtests();">
<a target="_blank" href="https://bugzilla.mozilla.org/show_bug.cgi?id=429157">Mozilla Bug 429157</a>
<br>
<script>
var missingPlugins = new Array();
function pluginNotFound(event)
{
missingPlugins.push(event.target);
}
document.addEventListener("PluginNotFound", pluginNotFound, false);
</script>
<object id="obj1" type="image/png" >ALT image/png</object><br>
<object id="obj2" type="image/svg+xml">ALT image/svg+xml</object><br>
<object id="obj3" type="text/html" >ALT text/html</object><br>
<object id="obj4" type="text/plain" >ALT text/plain</object><br>
<script class="testbody" type="text/javascript">
function runtests()
{
is(missingPlugins.length, 0, "There should be no missing plugins for this page");
SimpleTest.finish();
}
SimpleTest.waitForExplicitFinish();
</script>
</pre>
</body>
</html>