| 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 |