From 64c236800c2087e78635afabe6b007e1e34ea01e Mon Sep 17 00:00:00 2001
From: Adam M Rivera <a432511@gmail.com>
Date: Tue, 20 Mar 2012 16:43:13 -0500
Subject: [PATCH] AP_Declination: Moved check for y index of zero to after the
 y index is properly transformed.

---
 libraries/AP_Declination/AP_Declination.cpp | 9 ++++-----
 1 file changed, 4 insertions(+), 5 deletions(-)

diff --git a/libraries/AP_Declination/AP_Declination.cpp b/libraries/AP_Declination/AP_Declination.cpp
index adcc81e0b..a082f57c2 100644
--- a/libraries/AP_Declination/AP_Declination.cpp
+++ b/libraries/AP_Declination/AP_Declination.cpp
@@ -171,17 +171,16 @@ AP_Declination::get_lookup_value(uint8_t x, uint8_t y)
 		return val;
 	}
 
-
-	// If we are looking for the first value we can just use the
-	// row_start value from declination_keys
-	if(y == 0) return declination_keys.row_start[x];
-
 	// Because the values were removed from the start of the
 	// original array (0-6) to the exception array, all the indicies
 	// in this main lookup need to be shifted left 7
 	// EX: User enters 7 -> 7 is the first row in this array so it needs to be zero
 	if(x >= 7) x -= 7;
 
+	// If we are looking for the first value we can just use the
+	// row_start value from declination_keys
+	if(y == 0) return declination_keys.row_start[x];
+
 	// Init vars
 	row_value stval;
 	int16_t offset = 0;
-- 
GitLab