aboutsummaryrefslogtreecommitdiff
path: root/dep/recastnavigation/recastnavigation_2_area_merge.diff
blob: 9b6bf3424f8d9341ac8313a9aecd0dac60d739e2 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
diff --git a/dep/recastnavigation/Recast/Source/RecastRasterization.cpp b/dep/recastnavigation/Recast/Source/RecastRasterization.cpp
index a4cef74909..2ffffae8b0 100644
--- a/dep/recastnavigation/Recast/Source/RecastRasterization.cpp
+++ b/dep/recastnavigation/Recast/Source/RecastRasterization.cpp
@@ -122,16 +122,16 @@ static bool addSpan(rcHeightfield& hf, const int x, const int y,
 		}
 		else
 		{
+			// Merge flags.
+			if (rcAbs((int)s->smax - (int)cur->smax) <= flagMergeThr)
+				s->area = rcMax(s->area, cur->area);
+
 			// Merge spans.
 			if (cur->smin < s->smin)
 				s->smin = cur->smin;
 			if (cur->smax > s->smax)
 				s->smax = cur->smax;
 			
-			// Merge flags.
-			if (rcAbs((int)s->smax - (int)cur->smax) <= flagMergeThr)
-				s->area = rcMax(s->area, cur->area);
-			
 			// Remove current span.
 			rcSpan* next = cur->next;
 			freeSpan(hf, cur);