From 276fc155dea2912dce9b96830994a24cbbcb6bc4 Mon Sep 17 00:00:00 2001
From: Cyril Roussillon <cyril.roussillon@laas.fr>
Date: Mon, 24 Jun 2013 18:08:34 +0200
Subject: [PATCH] [wip/jafar-rtslam] add patch of bug fix not yet in package

---
 jafar-rtslam/Makefile         |  2 +-
 jafar-rtslam/distinfo         |  1 +
 jafar-rtslam/patches/patch-af | 49 +++++++++++++++++++++++++++++++++++
 3 files changed, 51 insertions(+), 1 deletion(-)
 create mode 100644 jafar-rtslam/patches/patch-af

diff --git a/jafar-rtslam/Makefile b/jafar-rtslam/Makefile
index 681cbe70..bed549d3 100644
--- a/jafar-rtslam/Makefile
+++ b/jafar-rtslam/Makefile
@@ -3,7 +3,7 @@
 #
 
 JAFAR_PKG=		rtslam-0.2
-PKGREVISION= 	5
+PKGREVISION= 	6
 CATEGORIES=		wip
 JAFAR_COMMENT=		Jafar module to do fast and generic EKF Slam.
 
diff --git a/jafar-rtslam/distinfo b/jafar-rtslam/distinfo
index d9dd8e1b..e3ff82e2 100644
--- a/jafar-rtslam/distinfo
+++ b/jafar-rtslam/distinfo
@@ -6,3 +6,4 @@ SHA1 (patch-ab) = fdaab1bc3511fdbb78b201782b8a0ffc76ed22ce
 SHA1 (patch-ac) = e9bf8fe7288a956fa84e00c9449831e28bb50a00
 SHA1 (patch-ad) = 4d0ae943a4ea8f97c65f31a056c5d0deaf5607f4
 SHA1 (patch-ae) = 7c1a788ca3c33430f5b6cb52ad10bdccd2f6a03a
+SHA1 (patch-af) = df658ab826f94bfb12ef984d9f8acf5fd2012fcb
diff --git a/jafar-rtslam/patches/patch-af b/jafar-rtslam/patches/patch-af
new file mode 100644
index 00000000..6da50761
--- /dev/null
+++ b/jafar-rtslam/patches/patch-af
@@ -0,0 +1,49 @@
+Fix 5a8a7b7a backcompatibility with old config files
+
+diff --git a/include/rtslam/main.hpp b/include/rtslam/main.hpp
+index 44b28cb..a9a1de1 100644
+--- include/rtslam/main.hpp
++++ include/rtslam/main.hpp
+@@ -1972,10 +1972,10 @@ void ConfigSetup::processKeyValueFile(jafar::kernel::KeyValueFile& keyValueFile,
+ 		{
+ 			if (read && ncam == 1)
+ 			{
+-				keyValueFile.getItem("CAMERA_IMG_WIDTH_SIMU", CAMERA_IMG_WIDTH_SIMU[0]);
+-				keyValueFile.getItem("CAMERA_IMG_HEIGHT_SIMU", CAMERA_IMG_HEIGHT_SIMU[0]);
+-				keyValueFile.getItem("CAMERA_INTRINSIC_SIMU", CAMERA_INTRINSIC_SIMU[0]);
+-				keyValueFile.getItem("CAMERA_DISTORTION_SIMU", CAMERA_DISTORTION_SIMU[0]);
++				keyValueFile.getItem("IMG_WIDTH_SIMU", CAMERA_IMG_WIDTH_SIMU[0]);
++				keyValueFile.getItem("IMG_HEIGHT_SIMU", CAMERA_IMG_HEIGHT_SIMU[0]);
++				keyValueFile.getItem("INTRINSIC_SIMU", CAMERA_INTRINSIC_SIMU[0]);
++				keyValueFile.getItem("DISTORTION_SIMU", CAMERA_DISTORTION_SIMU[0]);
+ 			} else throw e;
+ 		}
+ 	} else
+@@ -1999,10 +1999,10 @@ void ConfigSetup::processKeyValueFile(jafar::kernel::KeyValueFile& keyValueFile,
+ 				keyValueFile.getItem("CAMERA_TYPE", CAMERA_TYPE[0]);
+ 				keyValueFile.getItem("CAMERA_FORMAT", CAMERA_FORMAT[0], "0");
+ 				keyValueFile.getItem("CAMERA_DEVICE", CAMERA_DEVICE[0]);
+-				keyValueFile.getItem("CAMERA_IMG_WIDTH", CAMERA_IMG_WIDTH[0]);
+-				keyValueFile.getItem("CAMERA_IMG_HEIGHT", CAMERA_IMG_HEIGHT[0]);
+-				keyValueFile.getItem("CAMERA_INTRINSIC", CAMERA_INTRINSIC[0]);
+-				keyValueFile.getItem("CAMERA_DISTORTION", CAMERA_DISTORTION[0]);
++				keyValueFile.getItem("IMG_WIDTH", CAMERA_IMG_WIDTH[0]);
++				keyValueFile.getItem("IMG_HEIGHT", CAMERA_IMG_HEIGHT[0]);
++				keyValueFile.getItem("INTRINSIC", CAMERA_INTRINSIC[0]);
++				keyValueFile.getItem("DISTORTION", CAMERA_DISTORTION[0]);
+ 			} else throw e;
+ 		}
+ 	}
+@@ -2121,8 +2121,10 @@ void ConfigEstimation::processKeyValueFile(jafar::kernel::KeyValueFile& keyValue
+ 	KeyValueFile_processItem(KILL_SEARCH_SIZE);
+ 	KeyValueFile_processItem(MATCH_TH);
+ 	KeyValueFile_processItem(MIN_SCORE);
+-	KeyValueFile_processItem(HI_MATCH_TH);
+-	KeyValueFile_processItem(HI_LIMIT);
++
++	try { KeyValueFile_processItem(HI_MATCH_TH) } catch (kernel::KernelException &e) { if (read) HI_MATCH_TH = MATCH_TH; }
++	try { KeyValueFile_processItem(HI_LIMIT) } catch (kernel::KernelException &e) { if (read) HI_LIMIT = 1000; }
++
+ 	KeyValueFile_processItem(PARTIAL_POSITION);
+ }
+
-- 
GitLab