[Author Prev][Author Next][Thread Prev][Thread Next][Author Index][Thread Index]

[vidalia-svn] r1996: Use a QMultiHash instead of a QHash for storing network conf (in trunk: . src/config)



Author: edmanm
Date: 2007-10-11 12:45:04 -0400 (Thu, 11 Oct 2007)
New Revision: 1996

Modified:
   trunk/
   trunk/src/config/networksettings.cpp
Log:
 r2055@lysithea:  edmanm | 2007-10-11 12:43:30 -0400
 Use a QMultiHash instead of a QHash for storing network configuration
 settings, so we can set multiple bridges (we were trying a csv before, which
 is wrong). It also appears we weren't setting UseBridges before either. Oops.



Property changes on: trunk
___________________________________________________________________
 svk:merge ticket from /local/vidalia/trunk [r2055] on dc66be73-d13e-47ba-a267-8dc7cda68c65

Modified: trunk/src/config/networksettings.cpp
===================================================================
--- trunk/src/config/networksettings.cpp	2007-10-11 16:44:53 UTC (rev 1995)
+++ trunk/src/config/networksettings.cpp	2007-10-11 16:45:04 UTC (rev 1996)
@@ -37,6 +37,7 @@
 #define SETTING_HTTPS_PROXY_AUTH    "HttpsProxyAuthenticator"
 #define SETTING_USE_BRIDGES         "UseBridges"
 #define SETTING_BRIDGE_LIST         "Bridge"
+#define SETTING_UPDATE_BRIDGES      "UpdateBridgesFromAuthority"
 
 
 /** Default constructor */
@@ -61,7 +62,7 @@
 bool
 NetworkSettings::apply(QString *errmsg)
 {
-  QHash<QString, QString> conf;
+  QMultiHash<QString, QString> conf;
   
   conf.insert(SETTING_REACHABLE_ADDRESSES,
     (getFascistFirewall() ? 
@@ -76,12 +77,19 @@
     (getUseHttpsProxy() ? localValue(SETTING_HTTPS_PROXY).toString() : ""));
   conf.insert(SETTING_HTTPS_PROXY_AUTH,
               localValue(SETTING_HTTPS_PROXY_AUTH).toString());
+  
+  if (getUseBridges()) {
+    conf.insert(SETTING_USE_BRIDGES, "1");
+    conf.insert(SETTING_UPDATE_BRIDGES, "1");
+    foreach (QString bridge, localValue(SETTING_BRIDGE_LIST).toStringList()) {
+      conf.insert(SETTING_BRIDGE_LIST, bridge);
+    }
+  } else {
+    conf.insert(SETTING_USE_BRIDGES, "0");
+    conf.insert(SETTING_BRIDGE_LIST, "");
+    conf.insert(SETTING_UPDATE_BRIDGES, "0");
+  }
 
-  conf.insert(SETTING_BRIDGE_LIST,
-    (getUseBridges() ?
-      localValue(SETTING_BRIDGE_LIST).toStringList().join(",") : ""));
-  conf.insert("UpdateBridgesFromAuthority", (getUseBridges() ? "1" : "0"));
-
   return _torControl->setConf(conf, errmsg);
 }