HylaFAX The world's
most advanced open source fax server
|
|
[
Date Prev][
Date Next][
Thread Prev][
Thread Next]
[
Date Index]
[
Thread Index]
Re: [hylafax-users] consecutive bad lines > total bad lines?
On 2003.12.11 08:14 Giulio Orsero wrote:
cvs20031206, rh6x, rockwell class1.
RECV: 2291 total lines, 0 bad lines, 1 consecutive bad lines
The problem existed prior to the ECM development and was perpetuated by
that development. The problem is that the decoder doesn't take into
account that RTCrow is supposed to reference the row number after the
last image row (the first row of the RTC/EOFB) rather than the last
line of image data. I think that this was probably a result of
confusion about the first row being numbered as zero (row 0).
The attached patch fixes this as well as 1) preventing the bottom one
line of image data from being trimmed, and 2) it should correct some
line-counting disagreement that we've seen between the HylaFAX CQ
decoder and some Class 2 CQ mechanisms.
Lee.
diff -Nru hylafax-4.2.0.orig/faxd/G3Decoder.c++ hylafax-4.2.0/faxd/G3Decoder.c++
--- hylafax-4.2.0.orig/faxd/G3Decoder.c++ Wed Dec 10 13:33:42 2003
+++ hylafax-4.2.0/faxd/G3Decoder.c++ Thu Dec 11 09:52:31 2003
@@ -217,7 +217,7 @@
b1 = *pb++;
#define badlength(a0,lastx) do { \
if (isG4) \
- RTCrow = rowref-1; \
+ RTCrow = rowref; \
badPixelCount("2D", a0, lastx); \
rowgood = false; \
} while (0)
@@ -228,7 +228,7 @@
#define badlength(a0,lastx) do { \
nullrow = (a0 == 0); \
if (nullrow && ++RTCrun == 5 && RTCrow == -1) \
- RTCrow = rowref-5; \
+ RTCrow = rowref-4; \
badPixelCount("1D", a0, lastx); \
rowgood = false; \
} while (0)