OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 #include "chrome/browser/renderer_host/chrome_url_request_user_data.h" | 5 #include "chrome/browser/renderer_host/chrome_url_request_user_data.h" |
6 | 6 |
7 namespace { | 7 namespace { |
8 | 8 |
9 const char* const kKeyName = "chrome_url_request_user_data"; | 9 const char* const kKeyName = "chrome_url_request_user_data"; |
10 | 10 |
11 } // namespace | 11 } // namespace |
12 | 12 |
13 ChromeURLRequestUserData::ChromeURLRequestUserData() | 13 ChromeURLRequestUserData::ChromeURLRequestUserData() |
14 : is_prerender_(false) { | 14 : is_prerender_(false) { |
15 } | 15 } |
16 | 16 |
17 // static | 17 // static |
18 ChromeURLRequestUserData* ChromeURLRequestUserData::Get( | 18 ChromeURLRequestUserData* ChromeURLRequestUserData::Get( |
19 const net::URLRequest* request) { | 19 const net::URLRequest* request) { |
20 DCHECK(request); | 20 DCHECK(request); |
21 return static_cast<ChromeURLRequestUserData*>(request->GetUserData(kKeyName)); | 21 return static_cast<ChromeURLRequestUserData*>(request->GetUserData(kKeyName)); |
22 } | 22 } |
23 | 23 |
24 // static | 24 // static |
25 ChromeURLRequestUserData* ChromeURLRequestUserData::Create( | 25 ChromeURLRequestUserData* ChromeURLRequestUserData::Create( |
26 net::URLRequest* request) { | 26 net::URLRequest* request) { |
27 DCHECK(request); | 27 DCHECK(request); |
28 DCHECK(!Get(request)); | 28 // TODO(mpcomplete): since we're reusing an old URLRequest, this DCHECK |
| 29 // gets hit. We should add a way to clear the UserData for retargeted |
| 30 // requests. |
| 31 //DCHECK(!Get(request)); |
29 ChromeURLRequestUserData* user_data = new ChromeURLRequestUserData(); | 32 ChromeURLRequestUserData* user_data = new ChromeURLRequestUserData(); |
30 request->SetUserData(kKeyName, user_data); | 33 request->SetUserData(kKeyName, user_data); |
31 return user_data; | 34 return user_data; |
32 } | 35 } |
OLD | NEW |