Blob Blame History Raw
diff -up wpa_supplicant-0.7.3/wpa_supplicant/events.c.foo wpa_supplicant-0.7.3/wpa_supplicant/events.c
--- wpa_supplicant-0.7.3/wpa_supplicant/events.c.foo	2012-06-12 12:03:36.172962193 -0500
+++ wpa_supplicant-0.7.3/wpa_supplicant/events.c	2012-06-12 12:03:51.388771973 -0500
@@ -871,16 +871,14 @@ static int wpa_supplicant_need_to_roam(s
 
 	min_diff = 2;
 	if (current_bss->level < 0) {
-		if (current_bss->level < -85)
-			min_diff = 1;
-		else if (current_bss->level < -80)
-			min_diff = 2;
-		else if (current_bss->level < -75)
-			min_diff = 3;
-		else if (current_bss->level < -70)
+		if (current_bss->level < -75)
 			min_diff = 4;
+		else if (current_bss->level < -70)
+			min_diff = 6;
+		else if (current_bss->level < -65)
+			min_diff = 8;
 		else
-			min_diff = 5;
+			min_diff = 15;
 	}
 	if (abs(current_bss->level - selected->level) < min_diff) {
 		wpa_dbg(wpa_s, MSG_DEBUG, "Skip roam - too small difference "