<p><b>dwj07@fsu.edu</b> 2012-06-05 13:04:08 -0600 (Tue, 05 Jun 2012)</p><p><br>
        -- BRANCH COMMIT --<br>
<br>
        Fixed an issue with multidimensional communication lists, and buffer indexing.<br>
</p><hr noshade><pre><font color="gray">Modified: branches/omp_blocks/multiple_blocks/src/framework/mpas_dmpar.F
===================================================================
--- branches/omp_blocks/multiple_blocks/src/framework/mpas_dmpar.F        2012-06-05 17:43:39 UTC (rev 1960)
+++ branches/omp_blocks/multiple_blocks/src/framework/mpas_dmpar.F        2012-06-05 19:04:08 UTC (rev 1961)
@@ -1580,7 +1580,7 @@
                    fieldOutPtr % array(j, exchListPtr % destList(i)) = commListPtr % ibuffer(iBuffer)
                  end do
                end do
-               nAdded = max(nAdded, maxval(exchListPtr % srcList))
+               nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldOutPtr % dimSizes(1) * fieldOutPtr % dimSizes(2))
              end if
              exchListPtr =&gt; exchListPtr % next
            end do
@@ -1843,7 +1843,7 @@
                    end do
                  end do
                end do
-               nAdded = max(nAdded, maxval(exchListPtr % srcList))
+               nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldOutPtr % dimSizes(1) * fieldOutPtr % dimSizes(2))
              end if
              exchListPtr =&gt; exchListPtr % next
            end do
@@ -2357,7 +2357,7 @@
                    fieldOutPtr % array(j, exchListPtr % destList(i)) = commListPtr % rbuffer(iBuffer)
                  end do
                end do
-               nAdded = max(nAdded, maxval(exchListPtr % srcList))
+               nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldOutPtr % dimSizes(1))
              end if
              exchListPtr =&gt; exchListPtr % next
            end do
@@ -2620,7 +2620,7 @@
                    end do
                  end do
                end do
-               nAdded = max(nAdded, maxval(exchListPtr % srcList))
+               nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldOutPtr % dimSizes(1) * fieldOutPtr % dimSizes(2))
              end if
              exchListPtr =&gt; exchListPtr % next
            end do
@@ -3121,10 +3121,10 @@
               if(exchListPtr % endPointID == commListPtr % procID) then
                 do i = 1, exchListPtr % nList
                   do j = 1, fieldCursor % dimSizes(1)
-                    fieldCursor % array(j, exchListPtr % destList(i)) = commListPtr % ibuffer((exchListPtr % srcList(i)-1)*fieldCursor % dimSizeS(1) + j + bufferOffset)
+                    fieldCursor % array(j, exchListPtr % destList(i)) = commListPtr % ibuffer((exchListPtr % srcList(i)-1)*fieldCursor % dimSizes(1) + j + bufferOffset)
                   end do
                 end do
-                nAdded = max(nAdded, maxval(exchListPtr % srcList))
+                nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldCursor % dimSizes(1))
               end if
               exchListPtr =&gt; exchListPtr % next
             end do
@@ -3382,7 +3382,7 @@
                     end do
                   end do
                 end do
-                nAdded = max(nAdded, maxval(exchListPtr % srcList))
+                nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldCursor % dimSizes(1) * fieldCursor % dimSizes(2))
               end if
               exchListPtr =&gt; exchListPtr % next
             end do
@@ -3678,6 +3678,8 @@
 
       dminfo =&gt; field % block % domain % dminfo
 
+      write(6,*) 'Halo exchange on....', field % fieldName
+
       if(present(haloLayersIn)) then
         nHaloLayers = size(haloLayersIn)
         allocate(haloLayers(nHaloLayers))
@@ -3882,7 +3884,7 @@
                     fieldCursor % array(j, exchListPtr % destList(i)) = commListPtr % rbuffer((exchListPtr % srcList(i)-1)*fieldCursor % dimSizeS(1) + j + bufferOffset)
                   end do
                 end do
-                nAdded = max(nAdded, maxval(exchListPtr % srcList))
+                nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldCursor % dimSizes(1))
               end if
               exchListPtr =&gt; exchListPtr % next
             end do
@@ -4140,7 +4142,7 @@
                     end do
                   end do
                 end do
-                nAdded = max(nAdded, maxval(exchListPtr % srcList))
+                nAdded = max(nAdded, maxval(exchListPtr % srcList) * fieldCursor % dimSizes(1) * fieldCursor % dimSizes(2))
               end if
               exchListPtr =&gt; exchListPtr % next
             end do

</font>
</pre>