From b4cebf87816cde49f6d4991ffa254e5ead97703b Mon Sep 17 00:00:00 2001 From: "aa@chromium.org" Date: Mon, 29 Dec 2008 19:59:08 +0000 Subject: Change the signature of JSONReader::Read() and related methods to be more friendly to use with scoped_ptr. Change all the callsites. Review URL: http://codereview.chromium.org/16270 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@7486 0039d316-1c4b-4281-b951-d872f2087c98 --- chrome/installer/util/master_preferences.cc | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) (limited to 'chrome/installer/util/master_preferences.cc') diff --git a/chrome/installer/util/master_preferences.cc b/chrome/installer/util/master_preferences.cc index 34d10a9..21c74dd 100644 --- a/chrome/installer/util/master_preferences.cc +++ b/chrome/installer/util/master_preferences.cc @@ -12,14 +12,13 @@ namespace { DictionaryValue* ReadJSONPrefs(const std::string& data) { JSONStringValueSerializer json(data); - Value* root; - if (!json.Deserialize(&root, NULL)) + scoped_ptr root(json.Deserialize(NULL)); + if (!root.get()) return NULL; - if (!root->IsType(Value::TYPE_DICTIONARY)) { - delete root; + if (!root->IsType(Value::TYPE_DICTIONARY)) return NULL; - } - return static_cast(root); + + return static_cast(root.release()); } bool GetBooleanPref(const DictionaryValue* prefs, const std::wstring& name) { -- cgit v1.1