Преглед на файлове

Stop crashing when the controller asks us to resetconf more than
one config option at once. (Vidalia 0.0.11 does this.)
Backport candidate.


svn:r9545

Roger Dingledine преди 19 години
родител
ревизия
01ddb05fba
променени са 2 файла, в които са добавени 5 реда и са изтрити 1 реда
  1. 4 0
      ChangeLog
  2. 1 1
      src/or/control.c

+ 4 - 0
ChangeLog

@@ -3,6 +3,10 @@ Changes in version 0.1.2.8-alpha - 2007-??-??
     - When we start during an accounting interval before it's time to wake
     - When we start during an accounting interval before it's time to wake
       up, remember to wake up at the correct time. (May fix bug 342.)
       up, remember to wake up at the correct time. (May fix bug 342.)
 
 
+  o Major bugfixes (crashes):
+    - Stop crashing when the controller asks us to resetconf more than
+      one config option at once. (Vidalia 0.0.11 does this.)
+
   o Minor bugfixes (controller):
   o Minor bugfixes (controller):
     - Give the controller END_STREAM_REASON_DESTROY events _before_ we
     - Give the controller END_STREAM_REASON_DESTROY events _before_ we
       clear the corresponding on_circuit variable, and remember later that
       clear the corresponding on_circuit variable, and remember later that

+ 1 - 1
src/or/control.c

@@ -810,9 +810,9 @@ control_setconf_helper(control_connection_t *conn, uint32_t len, char *body,
         ++eq;
         ++eq;
       memcpy(outp, body, eq-body);
       memcpy(outp, body, eq-body);
       outp += (eq-body);
       outp += (eq-body);
-      *outp++ = ' ';
       body = eq+1;
       body = eq+1;
       if (*eq == '=') {
       if (*eq == '=') {
+        *outp++ = ' ';
         if (*body != '\"') {
         if (*body != '\"') {
           while (!TOR_ISSPACE(*body))
           while (!TOR_ISSPACE(*body))
             *outp++ = *body++;
             *outp++ = *body++;