544 }
545 boolean foundFF = false;
546 String IOOBE = "skipImage : Reached EOF before we got EOI marker";
547 int markerLength = 2;
548 for (int byteval = iis.read();
549 byteval != -1;
550 byteval = iis.read()) {
551
552 if (foundFF == true) {
553 switch (byteval) {
554 case JPEG.EOI:
555 if (debug) {
556 System.out.println("skipImage : Found EOI at " +
557 (iis.getStreamPosition() - markerLength));
558 }
559 return;
560 case JPEG.SOI:
561 throw new IOException("skipImage : Found extra SOI"
562 + " marker before getting to EOI");
563 case 0:
564 // markers which doesn't contain length data
565 case JPEG.RST0:
566 case JPEG.RST1:
567 case JPEG.RST2:
568 case JPEG.RST3:
569 case JPEG.RST4:
570 case JPEG.RST5:
571 case JPEG.RST6:
572 case JPEG.RST7:
573 case JPEG.TEM:
574 break;
575 // markers which contains length data
576 case JPEG.SOF0:
577 case JPEG.SOF1:
578 case JPEG.SOF2:
579 case JPEG.SOF3:
580 case JPEG.DHT:
581 case JPEG.SOF5:
582 case JPEG.SOF6:
583 case JPEG.SOF7:
|
544 }
545 boolean foundFF = false;
546 String IOOBE = "skipImage : Reached EOF before we got EOI marker";
547 int markerLength = 2;
548 for (int byteval = iis.read();
549 byteval != -1;
550 byteval = iis.read()) {
551
552 if (foundFF == true) {
553 switch (byteval) {
554 case JPEG.EOI:
555 if (debug) {
556 System.out.println("skipImage : Found EOI at " +
557 (iis.getStreamPosition() - markerLength));
558 }
559 return;
560 case JPEG.SOI:
561 throw new IOException("skipImage : Found extra SOI"
562 + " marker before getting to EOI");
563 case 0:
564 case 255:
565 // markers which doesn't contain length data
566 case JPEG.RST0:
567 case JPEG.RST1:
568 case JPEG.RST2:
569 case JPEG.RST3:
570 case JPEG.RST4:
571 case JPEG.RST5:
572 case JPEG.RST6:
573 case JPEG.RST7:
574 case JPEG.TEM:
575 break;
576 // markers which contains length data
577 case JPEG.SOF0:
578 case JPEG.SOF1:
579 case JPEG.SOF2:
580 case JPEG.SOF3:
581 case JPEG.DHT:
582 case JPEG.SOF5:
583 case JPEG.SOF6:
584 case JPEG.SOF7:
|