Very nice catch. ACK
--
Russell Bryant
On 08/17/2011 12:12 PM, Zane Bitter wrote:
Using insert is prone to errors if the content of the map is also set
in
other parts of the code, since in the event of a key collision the map is
not updated by insert().
Signed-off-by: Zane Bitter<zbitter(a)redhat.com>
---
src/lib/mh_agent.cpp | 7 +++----
src/service/service-qmf-console.cpp | 5 ++---
2 files changed, 5 insertions(+), 7 deletions(-)
diff --git a/src/lib/mh_agent.cpp b/src/lib/mh_agent.cpp
index 1cad1ed..63352df 100644
--- a/src/lib/mh_agent.cpp
+++ b/src/lib/mh_agent.cpp
@@ -154,15 +154,14 @@ connection_option(int code, const char *name, const char *arg, void
*userdata)
qpid::types::Variant::Map *options =
static_cast<qpid::types::Variant::Map*>(userdata);
if(strcmp(name, "service") == 0) {
- options->insert(std::pair<std::string,
qpid::types::Variant>("sasl-service", arg));
- options->insert(std::pair<std::string,
qpid::types::Variant>("sasl-mechanism", "GSSAPI"));
-
+ (*options)["sasl-service"] = arg;
+ (*options)["sasl-mechanism"] = "GSSAPI";
} else if(strcmp(name, "reconnect") == 0) {
bool reconnect = !arg || (strcasecmp(arg, "no") != 0&&
strcasecmp(arg, "false") != 0);
(*options)["reconnect"] = reconnect;
} else {
- options->insert(std::pair<std::string, qpid::types::Variant>(name,
arg));
+ (*options)[name] = arg;
}
return 0;
}
diff --git a/src/service/service-qmf-console.cpp b/src/service/service-qmf-console.cpp
index 9398746..31ad417 100644
--- a/src/service/service-qmf-console.cpp
+++ b/src/service/service-qmf-console.cpp
@@ -54,10 +54,9 @@ resource_arg(int code, const char *name, const char *arg, void
*userdata)
cout<< name<< "="<< arg<< endl;
if(strcmp(name, "timeout") == 0 || strcmp(name, "interval") ==
0) {
uint32_t number = 1000 * atoi(arg);
- options->insert(std::pair<std::string, qpid::types::Variant>(name,
number));
-
+ (*options)[name] = number;
} else {
- options->insert(std::pair<std::string, qpid::types::Variant>(name,
arg));
+ (*options)[name] = arg;
}
return 0;
_______________________________________________
Matahari mailing list
Matahari(a)lists.fedorahosted.org
https://fedorahosted.org/mailman/listinfo/matahari