From d927d1a3236a2bea5f3b8d92ad17ec5c6314f537 Mon Sep 17 00:00:00 2001
From: Luc Hermitte <luc.hermitte@c-s.fr>
Date: Wed, 9 May 2012 14:31:50 +0200
Subject: [PATCH] COM: OTB-134/OGR -> (*layer.begin())[0].GetValue<int>() now
 works

---
 Code/UtilitiesAdapters/OGRAdapters/otbOGRLayerWrapper.h       | 4 ++--
 .../OGRAdapters/otbOGRDataSourceWrapperNew.cxx                | 2 ++
 2 files changed, 4 insertions(+), 2 deletions(-)

diff --git a/Code/UtilitiesAdapters/OGRAdapters/otbOGRLayerWrapper.h b/Code/UtilitiesAdapters/OGRAdapters/otbOGRLayerWrapper.h
index 2245455018..f1ba1c682b 100644
--- a/Code/UtilitiesAdapters/OGRAdapters/otbOGRLayerWrapper.h
+++ b/Code/UtilitiesAdapters/OGRAdapters/otbOGRLayerWrapper.h
@@ -300,8 +300,8 @@ public:
     Value & dereference() const
       { return m_Crt; }
 
-    otb::ogr::Layer * m_Layer;
-    otb::ogr::Feature m_Crt;
+    otb::ogr::Layer         * m_Layer;
+    otb::ogr::Feature mutable m_Crt;
     };
 
   template <class> friend class feature_iter;
diff --git a/Testing/Code/UtilitiesAdapters/OGRAdapters/otbOGRDataSourceWrapperNew.cxx b/Testing/Code/UtilitiesAdapters/OGRAdapters/otbOGRDataSourceWrapperNew.cxx
index 1e584a0436..edbd4e0124 100644
--- a/Testing/Code/UtilitiesAdapters/OGRAdapters/otbOGRDataSourceWrapperNew.cxx
+++ b/Testing/Code/UtilitiesAdapters/OGRAdapters/otbOGRDataSourceWrapperNew.cxx
@@ -227,6 +227,8 @@ BOOST_AUTO_TEST_CASE(Add_n_Read_Fields)
   f0.SetValue(42);
   BOOST_ASSERT(f0.HasBeenSet());
   BOOST_CHECK_EQUAL(f0.GetValue<int>(), 42);
+  BOOST_CHECK_EQUAL(g0[0].GetValue<int>(), 42);
+  BOOST_CHECK_EQUAL((*l.begin())[0].GetValue<int>(), 42);
   // BOOST_CHECK_assert_FAILS(f0.GetValue<double>(), itk::ExceptionObject);
 
   ogr::Field f1 = g0["OFTReal"];
-- 
GitLab