vserver 1.9.5.x5
[linux-2.6.git] / drivers / isdn / hisax / isdnhdlc.c
index c25b3d6..cbdf54c 100644 (file)
@@ -308,7 +308,7 @@ int isdnhdlc_decode (struct isdnhdlc_vars *hdlc, const unsigned char *src,
                                hdlc->crc = crc_ccitt_byte(hdlc->crc, hdlc->shift_reg);
 
                                // good byte received
-                               if (dsize--) {
+                               if (hdlc->dstpos < dsize) {
                                        dst[hdlc->dstpos++] = hdlc->shift_reg;
                                } else {
                                        // frame too long