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

Side by Side Diff: webkit/plugins/ppapi/ppb_var_impl.cc

Issue 7621054: Don't use a scoped_refptr for StringVar::FromPPVar (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 4 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 (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 "webkit/plugins/ppapi/ppb_var_impl.h" 5 #include "webkit/plugins/ppapi/ppb_var_impl.h"
6 6
7 #include <limits> 7 #include <limits>
8 8
9 #include "ppapi/c/dev/ppb_var_deprecated.h" 9 #include "ppapi/c/dev/ppb_var_deprecated.h"
10 #include "ppapi/c/ppb_var.h" 10 #include "ppapi/c/ppb_var.h"
(...skipping 50 matching lines...) Expand 10 before | Expand all | Expand 10 after
61 case PP_VARTYPE_BOOL: 61 case PP_VARTYPE_BOOL:
62 BOOLEAN_TO_NPVARIANT(var.value.as_bool, *result); 62 BOOLEAN_TO_NPVARIANT(var.value.as_bool, *result);
63 break; 63 break;
64 case PP_VARTYPE_INT32: 64 case PP_VARTYPE_INT32:
65 INT32_TO_NPVARIANT(var.value.as_int, *result); 65 INT32_TO_NPVARIANT(var.value.as_int, *result);
66 break; 66 break;
67 case PP_VARTYPE_DOUBLE: 67 case PP_VARTYPE_DOUBLE:
68 DOUBLE_TO_NPVARIANT(var.value.as_double, *result); 68 DOUBLE_TO_NPVARIANT(var.value.as_double, *result);
69 break; 69 break;
70 case PP_VARTYPE_STRING: { 70 case PP_VARTYPE_STRING: {
71 scoped_refptr<StringVar> string(StringVar::FromPPVar(var)); 71 StringVar* string = StringVar::FromPPVar(var);
72 if (!string) { 72 if (!string) {
73 VOID_TO_NPVARIANT(*result); 73 VOID_TO_NPVARIANT(*result);
74 return false; 74 return false;
75 } 75 }
76 const std::string& value = string->value(); 76 const std::string& value = string->value();
77 STRINGN_TO_NPVARIANT(value.c_str(), value.size(), *result); 77 STRINGN_TO_NPVARIANT(value.c_str(), value.size(), *result);
78 break; 78 break;
79 } 79 }
80 case PP_VARTYPE_OBJECT: { 80 case PP_VARTYPE_OBJECT: {
81 scoped_refptr<NPObjectVar> object(NPObjectVar::FromPPVar(var)); 81 scoped_refptr<NPObjectVar> object(NPObjectVar::FromPPVar(var));
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
175 175
176 void ReleaseVar(PP_Var var) { 176 void ReleaseVar(PP_Var var) {
177 ResourceTracker::Get()->GetVarTracker()->ReleaseVar(var); 177 ResourceTracker::Get()->GetVarTracker()->ReleaseVar(var);
178 } 178 }
179 179
180 PP_Var VarFromUtf8(PP_Module module, const char* data, uint32_t len) { 180 PP_Var VarFromUtf8(PP_Module module, const char* data, uint32_t len) {
181 return StringVar::StringToPPVar(module, data, len); 181 return StringVar::StringToPPVar(module, data, len);
182 } 182 }
183 183
184 const char* VarToUtf8(PP_Var var, uint32_t* len) { 184 const char* VarToUtf8(PP_Var var, uint32_t* len) {
185 scoped_refptr<StringVar> str(StringVar::FromPPVar(var)); 185 StringVar* str = StringVar::FromPPVar(var);
186 if (!str) { 186 if (!str) {
187 *len = 0; 187 *len = 0;
188 return NULL; 188 return NULL;
189 } 189 }
190 *len = static_cast<uint32_t>(str->value().size()); 190 *len = static_cast<uint32_t>(str->value().size());
191 if (str->value().empty()) 191 if (str->value().empty())
192 return ""; // Don't return NULL on success. 192 return ""; // Don't return NULL on success.
193 return str->value().data(); 193 return str->value().data();
194 } 194 }
195 195
(...skipping 262 matching lines...) Expand 10 before | Expand all | Expand 10 after
458 } 458 }
459 459
460 // static 460 // static
461 const PPB_Var_Deprecated* PPB_Var_Impl::GetVarDeprecatedInterface() { 461 const PPB_Var_Deprecated* PPB_Var_Impl::GetVarDeprecatedInterface() {
462 return &var_deprecated_interface; 462 return &var_deprecated_interface;
463 } 463 }
464 464
465 } // namespace ppapi 465 } // namespace ppapi
466 } // namespace webkit 466 } // namespace webkit
467 467
OLDNEW
« no previous file with comments | « webkit/plugins/ppapi/ppb_url_util_impl.cc ('k') | webkit/plugins/ppapi/resource_creation_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698