[haiku-bugs] Re: [Haiku] #6975: ShowImage Wonderbush Tarsizer all end in GDB when opening JPG files, other formats maybe effected

  • From: "stimut" <trac@xxxxxxxxxxxx>
  • Date: Tue, 01 Mar 2011 16:38:28 -0000

#6975: ShowImage Wonderbush Tarsizer all end in GDB when opening JPG files, 
other
formats maybe effected
------------------------------------+----------------------------
   Reporter:  stargatefan           |      Owner:  axeld
       Type:  bug                   |     Status:  new
   Priority:  normal                |  Milestone:  R1
  Component:  Kits/Translation Kit  |    Version:  R1/Development
 Resolution:                        |   Keywords:
 Blocked By:                        |   Blocking:
Has a Patch:  0                     |   Platform:  All
------------------------------------+----------------------------

Comment (by stimut):

 There are two parts to this ticket.

 The first is the crash that occurs because the file can't be loaded. This
 was fixed in r40692.

 The second is that the file can't be loaded. At the bottom level this is
 because the TReadHelper class throws an exception when it reads 0 bytes,
 but only in one form of the operator() functions. In the other form (where
 a length is also provided in the call), reading 0 bytes does not throw an
 exception. I personally don't think reading 0 bytes should raise an
 exception, only more serious errors should; plus, the two operator()
 functions should behave the same when reading 0 bytes. Other code that
 uses the TReadHelper seems to agree with me, and assumes that it is
 possible for 0 bytes to be read. I ran Haiku with my proposed change, did
 some basic computing (used WebPositive etc) and found no problems.

 Just for completeness, the call in question occurs in
 parse_tiff_directory() in exif_parser.cpp in the jpeg translator.

-- 
Ticket URL: <http://dev.haiku-os.org/ticket/6975#comment:11>
Haiku <http://dev.haiku-os.org>
Haiku - the operating system.

Other related posts: