Index: media/midi/midi_manager_alsa.cc |
diff --git a/media/midi/midi_manager_alsa.cc b/media/midi/midi_manager_alsa.cc |
index 2050780f5ebfb2ce000693aabf54346e57f988f0..31956208af9e37a78e2039fcf027d8a47dd48aa6 100644 |
--- a/media/midi/midi_manager_alsa.cc |
+++ b/media/midi/midi_manager_alsa.cc |
@@ -91,6 +91,13 @@ const std::string UdevDeviceGetPropertyOrSysattr( |
} |
#endif // defined(USE_UDEV) |
+void SetStringIfNonEmpty(base::DictionaryValue* value, |
+ const std::string& path, |
+ const std::string& in_value) { |
+ if (!in_value.empty()) |
+ value->SetString(path, in_value); |
+} |
+ |
} // namespace |
MidiManagerAlsa::MidiManagerAlsa() |
@@ -396,15 +403,15 @@ MidiManagerAlsa::AlsaPortMetadata::~AlsaPortMetadata() { |
scoped_ptr<base::Value> MidiManagerAlsa::AlsaPortMetadata::Value() const { |
base::DictionaryValue* value = new base::DictionaryValue(); |
Takashi Toyoshima
2015/03/23 06:17:11
This is not introduced by this CL, but it's better
|
- value->SetString("path", path_); |
- value->SetString("bus", bus_); |
- value->SetString("id", id_); |
+ SetStringIfNonEmpty(value, "path", path_); |
+ SetStringIfNonEmpty(value, "bus", bus_); |
+ SetStringIfNonEmpty(value, "id", id_); |
value->SetInteger("clientAddr", client_addr_); |
value->SetInteger("portAddr", port_addr_); |
- value->SetString("clientName", client_name_); |
- value->SetString("portName", port_name_); |
- value->SetString("cardName", card_name_); |
- value->SetString("cardLongname", card_longname_); |
+ SetStringIfNonEmpty(value, "clientName", client_name_); |
+ SetStringIfNonEmpty(value, "portName", port_name_); |
+ SetStringIfNonEmpty(value, "cardName", card_name_); |
+ SetStringIfNonEmpty(value, "cardLongname", card_longname_); |
std::string type; |
switch (type_) { |
case Type::kInput: |
@@ -415,7 +422,7 @@ scoped_ptr<base::Value> MidiManagerAlsa::AlsaPortMetadata::Value() const { |
type = "output"; |
break; |
} |
- value->SetString("type", type); |
+ SetStringIfNonEmpty(value, "type", type); |
return scoped_ptr<base::Value>(value).Pass(); |
} |