The previous attempt to handle unexpected markers in the data stream caused breakage in applications that attempted to set bytes_in_buffer to a larger value than the actual size of the JPEG image.  The latter behavior was causing the fast decoder to be used for the last MCU in the image under certain circumstances, and this sometimes caused the EOI marker to be encountered by the fast decoder, which was treating it as an "unexpected" marker and throwing an error.  Now, the fast decoder simply hands off the decoding of the block to the slow decoder if any marker is encountered.


git-svn-id: svn+ssh://svn.code.sf.net/p/libjpeg-turbo/code/trunk@584 632fc199-4ca6-4c93-a231-07263d6284db
1 file changed
tree: 9fd6b9b7236adb44f43b35ee0c16951464578330
  1. cmakescripts/
  2. java/
  3. release/
  4. sharedlib/
  5. simd/
  6. win/
  7. acinclude.m4
  8. bmp.c
  9. bmp.h
  10. BUILDING.txt
  11. cderror.h
  12. cdjpeg.c
  13. cdjpeg.h
  14. change.log
  15. ChangeLog.txt
  16. cjpeg.1
  17. cjpeg.c
  18. CMakeLists.txt
  19. coderules.txt
  20. configure.ac
  21. djpeg.1
  22. djpeg.c
  23. example.c
  24. filelist.txt
  25. install.txt
  26. jaricom.c
  27. jcapimin.c
  28. jcapistd.c
  29. jcarith.c
  30. jccoefct.c
  31. jccolor.c
  32. jcdctmgr.c
  33. jchuff.c
  34. jchuff.h
  35. jcinit.c
  36. jcmainct.c
  37. jcmarker.c
  38. jcmaster.c
  39. jcomapi.c
  40. jconfig.h.in
  41. jconfig.txt
  42. jcparam.c
  43. jcphuff.c
  44. jcprepct.c
  45. jcsample.c
  46. jctrans.c
  47. jdapimin.c
  48. jdapistd.c
  49. jdarith.c
  50. jdatadst.c
  51. jdatasrc.c
  52. jdcoefct.c
  53. jdcolor.c
  54. jdct.h
  55. jddctmgr.c
  56. jdhuff.c
  57. jdhuff.h
  58. jdinput.c
  59. jdmainct.c
  60. jdmarker.c
  61. jdmaster.c
  62. jdmerge.c
  63. jdphuff.c
  64. jdpostct.c
  65. jdsample.c
  66. jdtrans.c
  67. jerror.c
  68. jerror.h
  69. jfdctflt.c
  70. jfdctfst.c
  71. jfdctint.c
  72. jidctflt.c
  73. jidctfst.c
  74. jidctint.c
  75. jidctred.c
  76. jinclude.h
  77. jmemmgr.c
  78. jmemnobs.c
  79. jmemsys.h
  80. jmorecfg.h
  81. jpegcomp.h
  82. jpegint.h
  83. jpeglib.h
  84. jpegtran.1
  85. jpegtran.c
  86. jpegut.c
  87. jpgtest.c
  88. jquant1.c
  89. jquant2.c
  90. jsimd.h
  91. jsimd_none.c
  92. jsimddct.h
  93. jutils.c
  94. jversion.h
  95. LGPL.txt
  96. libjpeg.map.in
  97. libjpeg.txt
  98. LICENSE.txt
  99. Makefile.am
  100. rdbmp.c
  101. rdcolmap.c
  102. rdgif.c
  103. rdjpgcom.1
  104. rdjpgcom.c
  105. rdppm.c
  106. rdrle.c
  107. rdswitch.c
  108. rdtarga.c
  109. README
  110. README-turbo.txt
  111. rrtimer.h
  112. rrutil.h
  113. structure.txt
  114. testimg.bmp
  115. testimgari.jpg
  116. testimgari.ppm
  117. testimgcrop.jpg
  118. testimgflt-nosimd.jpg
  119. testimgflt.jpg
  120. testimgflt.ppm
  121. testimgfst.jpg
  122. testimgfst.ppm
  123. testimgfst100.jpg
  124. testimggray.jpg
  125. testimgint.jpg
  126. testimgint.ppm
  127. testimgp.jpg
  128. testorig.jpg
  129. testorig.ppm
  130. transupp.c
  131. transupp.h
  132. turbojpeg-jni.c
  133. turbojpeg-mapfile
  134. turbojpeg-mapfile.jni
  135. turbojpeg.h
  136. turbojpegl.c
  137. usage.txt
  138. wizard.txt
  139. wrbmp.c
  140. wrgif.c
  141. wrjpgcom.1
  142. wrjpgcom.c
  143. wrppm.c
  144. wrrle.c
  145. wrtarga.c