Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(446)

Side by Side Diff: Source/platform/ScriptForbiddenScope.h

Issue 403133002: Suppress ScriptForbiddenScope in Document.cpp and FrameView.cpp in release mode (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 6 years, 5 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef ScriptForbiddenScope_h 5 #ifndef ScriptForbiddenScope_h
6 #define ScriptForbiddenScope_h 6 #define ScriptForbiddenScope_h
7 7
8 #include "platform/PlatformExport.h" 8 #include "platform/PlatformExport.h"
9 #include "wtf/Assertions.h" 9 #include "wtf/Assertions.h"
10 #include "wtf/TemporaryChange.h" 10 #include "wtf/TemporaryChange.h"
11 11
12 namespace blink { 12 namespace blink {
13 13
14 class PLATFORM_EXPORT ScriptForbiddenScope { 14 class PLATFORM_EXPORT ScriptForbiddenScope {
15 public: 15 public:
16 ScriptForbiddenScope(); 16 ScriptForbiddenScope();
17 ~ScriptForbiddenScope(); 17 ~ScriptForbiddenScope();
18 18
19 class PLATFORM_EXPORT AllowUserAgentScript { 19 class PLATFORM_EXPORT AllowUserAgentScript {
20 public: 20 public:
21 AllowUserAgentScript(); 21 AllowUserAgentScript();
22 ~AllowUserAgentScript(); 22 ~AllowUserAgentScript();
23 private: 23 private:
24 TemporaryChange<unsigned> m_change; 24 TemporaryChange<unsigned> m_change;
25 }; 25 };
26 26
27 // FIXME: This should be removed. SuppressScriptForbiddenScopeInRelease is u sed
28 // to exceptionally allow script execution in ScriptForbiddenScope, because
29 // some real-world plugins try to execute script in ScriptForbiddenScope.
30 // This is unsafe and we should get rid of all the unsafe script executions.
31 class PLATFORM_EXPORT SuppressScriptForbiddenScopeInRelease {
32 public:
33 SuppressScriptForbiddenScopeInRelease();
34 ~SuppressScriptForbiddenScopeInRelease();
35 #if !ASSERT_ENABLED
36 private:
37 TemporaryChange<unsigned> m_change;
38 #endif
39 };
40
27 static bool isScriptForbidden(); 41 static bool isScriptForbidden();
28 }; 42 };
29 43
30 } // namespace blink 44 } // namespace blink
31 45
32 #endif // ScriptForbiddenScope_h 46 #endif // ScriptForbiddenScope_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698