OLD | NEW |
1 // Copyright (c) 2010 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2010 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 CHROME_FRAME_BUGGY_BHO_HANDLING_H_ | 5 #ifndef CHROME_FRAME_BUGGY_BHO_HANDLING_H_ |
6 #define CHROME_FRAME_BUGGY_BHO_HANDLING_H_ | 6 #define CHROME_FRAME_BUGGY_BHO_HANDLING_H_ |
7 | 7 |
8 #include <atlbase.h> | 8 #include <atlbase.h> |
9 #include <atlcom.h> | 9 #include <atlcom.h> |
10 #include <exdisp.h> | 10 #include <exdisp.h> |
11 | 11 |
12 #include <vector> | 12 #include <vector> |
13 | 13 |
14 #include "base/thread_local.h" | 14 #include "base/threading/thread_local.h" |
15 | 15 |
16 namespace buggy_bho { | 16 namespace buggy_bho { |
17 | 17 |
18 // Method prototype for IDispatch::Invoke. | 18 // Method prototype for IDispatch::Invoke. |
19 typedef HRESULT (__stdcall* InvokeFunc)(IDispatch* me, DISPID dispid, | 19 typedef HRESULT (__stdcall* InvokeFunc)(IDispatch* me, DISPID dispid, |
20 REFIID riid, LCID lcid, WORD flags, | 20 REFIID riid, LCID lcid, WORD flags, |
21 DISPPARAMS* params, VARIANT* result, | 21 DISPPARAMS* params, VARIANT* result, |
22 EXCEPINFO* ei, UINT* err); | 22 EXCEPINFO* ei, UINT* err); |
23 | 23 |
24 // Construct an instance of this class on the stack when firing web browser | 24 // Construct an instance of this class on the stack when firing web browser |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 // that we could get reentrant calls, hence we maintain a stack. | 77 // that we could get reentrant calls, hence we maintain a stack. |
78 BuggyBhoTls* previous_instance_; | 78 BuggyBhoTls* previous_instance_; |
79 | 79 |
80 // Where we store the current thread's instance. | 80 // Where we store the current thread's instance. |
81 static base::ThreadLocalPointer<BuggyBhoTls> s_bad_object_tls_; | 81 static base::ThreadLocalPointer<BuggyBhoTls> s_bad_object_tls_; |
82 }; | 82 }; |
83 | 83 |
84 } // end namespace buggy_bho | 84 } // end namespace buggy_bho |
85 | 85 |
86 #endif // CHROME_FRAME_BUGGY_BHO_HANDLING_H_ | 86 #endif // CHROME_FRAME_BUGGY_BHO_HANDLING_H_ |
87 | |
OLD | NEW |