Browse Source

Merge remote-tracking branch 'origin/maint-0.2.6'

Nick Mathewson 9 years ago
parent
commit
b683b9af00
2 changed files with 13 additions and 0 deletions
  1. 5 0
      changes/bug15245
  2. 8 0
      src/or/cpuworker.c

+ 5 - 0
changes/bug15245

@@ -0,0 +1,5 @@
+  o Major bugfixes:
+    - Avoid crashing when making certain configuration option changes
+      on clients. Fixes bug 15245; bugfix on 0.2.6.3-alpha. Reported
+      by "anonym".
+

+ 8 - 0
src/or/cpuworker.c

@@ -178,6 +178,12 @@ update_state_threadfn(void *state_, void *work_)
 void
 cpuworkers_rotate_keyinfo(void)
 {
+  if (!threadpool) {
+    /* If we're a client, then we won't have cpuworkers, and we won't need
+     * to tell them to rotate their state.
+     */
+    return;
+  }
   if (threadpool_queue_update(threadpool,
                               worker_state_new,
                               update_state_threadfn,
@@ -486,6 +492,8 @@ assign_onionskin_to_cpuworker(or_circuit_t *circ,
   cpuworker_request_t req;
   int should_time;
 
+  tor_assert(threadpool);
+
   if (!circ->p_chan) {
     log_info(LD_OR,"circ->p_chan gone. Failing circ.");
     tor_free(onionskin);