aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/or/circuitbuild.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/or/circuitbuild.c b/src/or/circuitbuild.c
index f8521c5cf..24362460c 100644
--- a/src/or/circuitbuild.c
+++ b/src/or/circuitbuild.c
@@ -540,6 +540,7 @@ circuit_build_times_get_initial_timeout(void)
* Check if we have LearnCircuitBuildTimeout, and if we don't,
* always use CircuitBuildTimeout, no questions asked.
*/
+ /*XXXX025 this logic could be cleaned up a lot. */
if (get_options()->LearnCircuitBuildTimeout) {
if (!unit_tests && get_options()->CircuitBuildTimeout) {
timeout = get_options()->CircuitBuildTimeout*1000;
@@ -552,7 +553,10 @@ circuit_build_times_get_initial_timeout(void)
timeout = circuit_build_times_initial_timeout();
}
} else {
- timeout = get_options()->CircuitBuildTimeout*1000;
+ if (get_options()->CircuitBuildTimeout > 0)
+ timeout = get_options()->CircuitBuildTimeout*1000;
+ else
+ timeout = circuit_build_times_initial_timeout();
}
return timeout;