Index: branches/SHM-6-dev/source/Lib/TLibCommon/TComUpsampleFilter.cpp
===================================================================
--- branches/SHM-6-dev/source/Lib/TLibCommon/TComUpsampleFilter.cpp	(revision 706)
+++ branches/SHM-6-dev/source/Lib/TLibCommon/TComUpsampleFilter.cpp	(revision 707)
@@ -316,4 +316,10 @@
     Int   deltaY = 4 * phaseY;
 #endif
+
+#if Q0200_CONFORMANCE_BL_SIZE
+    deltaX -= ( confBL.getWindowLeftOffset() * xScal ) << 4;
+    deltaY -= ( confBL.getWindowTopOffset() * yScal ) << 4;
+#endif
+
     Int shiftXM4 = shiftX - 4;
     Int shiftYM4 = shiftY - 4;
@@ -330,8 +336,4 @@
     Int bottomEndL = pcUsPic->getHeight() - scalEL.getWindowBottomOffset();
     Int leftOffset = leftStartL > 0 ? leftStartL : 0;
-#if Q0200_CONFORMANCE_BL_SIZE
-    leftStartL += ( confBL.getWindowLeftOffset() * xScal ) << 4;
-    topStartL  += ( confBL.getWindowTopOffset() * yScal ) << 4;
-#endif
 #if N0214_INTERMEDIATE_BUFFER_16BITS
 #if O0194_JOINT_US_BITSHIFT
@@ -450,8 +452,4 @@
     Int bottomEndC = (pcUsPic->getHeight() >> 1) - (scalEL.getWindowBottomOffset() >> 1);
     leftOffset = leftStartC > 0 ? leftStartC : 0;
-#if Q0200_CONFORMANCE_BL_SIZE
-    leftStartC += ( ( confBL.getWindowLeftOffset() * xScal ) >> 1 ) << 4;
-    topStartC  += ( ( confBL.getWindowTopOffset() * yScal ) >> 1 ) << 4;
-#endif
     shiftX = 16;
     shiftY = 16;
@@ -495,4 +493,9 @@
     deltaX     = 4 * phaseXC;
     deltaY     = 4 * phaseYC;
+#endif
+
+#if Q0200_CONFORMANCE_BL_SIZE
+    deltaX -= ( ( confBL.getWindowLeftOffset() * xScal ) >> 1 ) << 4;
+    deltaY  -= ( ( confBL.getWindowTopOffset() * yScal ) >> 1 ) << 4;
 #endif
 
