aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--xbmc/network/WebServer.cpp10
1 files changed, 8 insertions, 2 deletions
diff --git a/xbmc/network/WebServer.cpp b/xbmc/network/WebServer.cpp
index 82625e19b5..9fa969c698 100644
--- a/xbmc/network/WebServer.cpp
+++ b/xbmc/network/WebServer.cpp
@@ -75,15 +75,21 @@ CWebServer::CWebServer()
int CWebServer::FillArgumentMap(void *cls, enum MHD_ValueKind kind, const char *key, const char *value)
{
+ if (cls == NULL || key == NULL)
+ return MHD_NO;
+
map<string, string> *arguments = (map<string, string> *)cls;
- arguments->insert(pair<string,string>(key,value));
+ arguments->insert(pair<string, string>(key, value != NULL ? value : StringUtils::Empty));
return MHD_YES;
}
int CWebServer::FillArgumentMultiMap(void *cls, enum MHD_ValueKind kind, const char *key, const char *value)
{
+ if (cls == NULL || key == NULL)
+ return MHD_NO;
+
multimap<string, string> *arguments = (multimap<string, string> *)cls;
- arguments->insert(pair<string,string>(key,value));
+ arguments->insert(pair<string, string>(key, value != NULL ? value : StringUtils::Empty));
return MHD_YES;
}