libweave: Remove release() calls on scoped_ptr

Now that scoped_ptr is just a type alias to std::unique_ptr, there
is no need to do release()/aquire semantics to convert between
scoped_ptr and unique_ptr. Also, replaced base::Value::DeepCopy with
the safer smart-pointer-enabled base::Value::CreateDeepCopy.

Change-Id: I6b7ed78b3fae6d42a68b7d73ae4d9d5eebf48922
Reviewed-on: https://weave-review.googlesource.com/3067
Reviewed-by: Robert Ginda <rginda@google.com>
diff --git a/src/commands/command_instance.cc b/src/commands/command_instance.cc
index dfc3fbd..1e7e16f 100644
--- a/src/commands/command_instance.cc
+++ b/src/commands/command_instance.cc
@@ -156,7 +156,7 @@
                                 "Property '%s' must be a JSON object",
                                 commands::attributes::kCommand_Parameters);
     }
-    params.reset(params_dict->DeepCopy());
+    params = params_dict->CreateDeepCopy();
   } else {
     // "parameters" are not specified. Assume empty param list.
     params.reset(new base::DictionaryValue);
@@ -221,14 +221,14 @@
   json->SetString(commands::attributes::kCommand_Id, id_);
   json->SetString(commands::attributes::kCommand_Name, name_);
   json->SetString(commands::attributes::kCommand_Component, component_);
-  json->Set(commands::attributes::kCommand_Parameters, parameters_.DeepCopy());
-  json->Set(commands::attributes::kCommand_Progress, progress_.DeepCopy());
-  json->Set(commands::attributes::kCommand_Results, results_.DeepCopy());
+  json->Set(commands::attributes::kCommand_Parameters,
+            parameters_.CreateDeepCopy());
+  json->Set(commands::attributes::kCommand_Progress,
+            progress_.CreateDeepCopy());
+  json->Set(commands::attributes::kCommand_Results, results_.CreateDeepCopy());
   json->SetString(commands::attributes::kCommand_State, EnumToString(state_));
-  if (error_) {
-    json->Set(commands::attributes::kCommand_Error,
-              ErrorInfoToJson(*error_).release());
-  }
+  if (error_)
+    json->Set(commands::attributes::kCommand_Error, ErrorInfoToJson(*error_));
 
   return json;
 }