From 447fd2e2f226e3e4312b6020f4ac63f0a25f0c37 Mon Sep 17 00:00:00 2001
From: Andreas Schenk <andreas_schenk@hms.harvard.edu>
Date: Tue, 28 Aug 2012 17:42:03 -0400
Subject: [PATCH] spead tweak for mrc io real_filler

---
 modules/io/src/img/map_io_mrc_handler.cc | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/modules/io/src/img/map_io_mrc_handler.cc b/modules/io/src/img/map_io_mrc_handler.cc
index bdde9d1e1..55d4f6913 100644
--- a/modules/io/src/img/map_io_mrc_handler.cc
+++ b/modules/io/src/img/map_io_mrc_handler.cc
@@ -585,13 +585,13 @@ void real_filler(img::image_state::RealSpatialImageState& isi,
   img::Progress::Instance().Register(&this_dummy,header.ns*header.nr,100);
   for(int is=0;is<header.ns;++is) {
     pnt[maps]=header.nsstart+is;
+    std::vector<B> buffer(header.nr*header.nc);
+    f.read(&buffer[0],header.nr*header.nc);
     for(int ir=0;ir<header.nr;++ir) {
       pnt[mapr]=header.nrstart+ir;
       for(int ic=0;ic<header.nc;++ic) {
         pnt[mapc]=header.ncstart+ic;
-        B tmp;
-        f >> tmp;
-        isi.Value(pnt) = static_cast<Real>(tmp);
+        isi.Value(pnt) = img::Val2Val<B,Real>(buffer[header.nc*ir+ic]);
       }
       img::Progress::Instance().AdvanceProgress(&this_dummy);
     }
-- 
GitLab