diff options
| author | Steve Block <steveblock@google.com> | 2009-12-17 09:55:06 -0800 |
|---|---|---|
| committer | Android Git Automerger <android-git-automerger@android.com> | 2009-12-17 09:55:06 -0800 |
| commit | b880d713c04257ca40abfef97c300afdead423b8 (patch) | |
| tree | 6982576c228bcd1a7efe98afed544d840751094c /WebCore/html/HTMLAppletElement.cpp | |
| parent | e2e7a5c57b53f01e63a0245b4420d54b454cb373 (diff) | |
| parent | 643ca7872b450ea4efacab6188849e5aac2ba161 (diff) | |
| download | external_webkit-b880d713c04257ca40abfef97c300afdead423b8.zip external_webkit-b880d713c04257ca40abfef97c300afdead423b8.tar.gz external_webkit-b880d713c04257ca40abfef97c300afdead423b8.tar.bz2 | |
am 643ca787: Merge webkit.org at r51976 : Initial merge by git.
Merge commit '643ca7872b450ea4efacab6188849e5aac2ba161' into eclair-mr2-plus-aosp
* commit '643ca7872b450ea4efacab6188849e5aac2ba161':
Merge webkit.org at r51976 : Initial merge by git.
Diffstat (limited to 'WebCore/html/HTMLAppletElement.cpp')
| -rw-r--r-- | WebCore/html/HTMLAppletElement.cpp | 17 |
1 files changed, 12 insertions, 5 deletions
diff --git a/WebCore/html/HTMLAppletElement.cpp b/WebCore/html/HTMLAppletElement.cpp index 46045d6..f67e9dc 100644 --- a/WebCore/html/HTMLAppletElement.cpp +++ b/WebCore/html/HTMLAppletElement.cpp @@ -28,6 +28,7 @@ #include "HTMLNames.h" #include "MappedAttribute.h" #include "RenderApplet.h" +#include "SecurityOrigin.h" #include "Settings.h" namespace WebCore { @@ -108,9 +109,7 @@ bool HTMLAppletElement::rendererIsNeeded(RenderStyle* style) RenderObject* HTMLAppletElement::createRenderer(RenderArena*, RenderStyle* style) { - Settings* settings = document()->settings(); - - if (settings && settings->isJavaEnabled()) { + if (canEmbedJava()) { HashMap<String, String> args; args.set("code", getAttribute(codeAttr)); @@ -142,8 +141,7 @@ RenderObject* HTMLAppletElement::createRenderer(RenderArena*, RenderStyle* style RenderWidget* HTMLAppletElement::renderWidgetForJSBindings() const { - Settings* settings = document()->settings(); - if (!settings || !settings->isJavaEnabled()) + if (!canEmbedJava()) return 0; RenderApplet* applet = toRenderApplet(renderer()); @@ -153,6 +151,15 @@ RenderWidget* HTMLAppletElement::renderWidgetForJSBindings() const return applet; } +bool HTMLAppletElement::canEmbedJava() const +{ + if (document()->securityOrigin()->isSandboxed(SandboxPlugins)) + return false; + + Settings* settings = document()->settings(); + return settings && settings->isJavaEnabled(); +} + void HTMLAppletElement::finishParsingChildren() { // The parser just reached </applet>, so all the params are available now. |
