Index: src/uk/me/parabola/imgfmt/app/trergn/LinePreparer.java =================================================================== --- src/uk/me/parabola/imgfmt/app/trergn/LinePreparer.java (revision 808) +++ src/uk/me/parabola/imgfmt/app/trergn/LinePreparer.java (working copy) @@ -102,11 +102,6 @@ log.debug("y same is", ySameSign, "sign is", ySignNegative); } - // first extra bit always appears to be false - // refers to the start point? - if (extraBit) - bw.put1(false); - for (int i = 0; i < deltas.length; i+=2) { int dx = deltas[i]; int dy = deltas[i + 1]; @@ -116,6 +111,10 @@ if (log.isDebugEnabled()) log.debug("x delta", dx, "~", xbits); assert dx >> xbits == 0 || dx >> xbits == -1; + + if (extraBit) + bw.put1(nodes[i/2+1]); + if (xSameSign) { bw.putn(abs(dx), xbits); } else { @@ -132,8 +131,6 @@ bw.putn(dy, ybits); bw.put1(dy < 0); } - if (extraBit) - bw.put1(nodes[i/2+1]); } if (log.isDebugEnabled())