Better late than never?

A fix for this has been posted: https://github.com/OpenImageIO/oiio/pull/1365


> On Apr 23, 2013, at 11:59 PM, Michel Lerenard <[email protected]> 
> wrote:
> 
> No, i have not. After commenting the code to avoid the crash I switch to 
> another task. I will try it, hopefully it will tell us the source of the 
> issue. 
> 
> On 4/23/2013 7:45 PM, Larry Gritz wrote:
>> Michel, were you able to try out my test below?
>> 
>> 
>> 
>> On Apr 10, 2013, at 9:51 AM, Larry Gritz wrote:
>> 
>>> Works fine for me on both Linux and OSX.
>>> 
>>> I'm wondering if perhaps the problem is on the JPEG library end, rather 
>>> than with OIIO or std::string per se.  Which version of libjpeg are you 
>>> using?
>>> 
>>> Can you try something for me?  Alter the code as follows, and let's see 
>>> what happens:
>>> 
>>> else if (m->marker == JPEG_COM) {
>>>             if (! m_spec.find_attribute ("ImageDescription", 
>>> TypeDesc::STRING)) {
>>>                 printf ("About to access m->data\n");
>>>          printf ("m->data is a string of length %d\n", strlen((const char 
>>> *)m->data));
>>>                 std::string s = std::string ((const char *)m->data);
>>>  printf ("grabbed the string: '%s'\n", s.c_str());
>>>                 m_spec.attribute ("ImageDescription", s);
>>>                 printf ("completed\n");
>>>         }
>>> 
>>> Here's my suspicion: that somehow with your version of libjpeg, the data in 
>>> m->data is not a valid string (not NULL-terminated, for example).  If this 
>>> is the case, then std::string is a red herring -- changing everything to 
>>> char* would not help at all.
>>> 
>>> 
>>> On Apr 9, 2013, at 3:23 AM, Michel Lerenard wrote:
>>> 
>>>> Hi everybody
>>>> 
>>>> In my other post i mentionned a crash with a specific file. We've been 
>>>> able to find the source of the crash, and it seems to be the comment field 
>>>> stored in metadata: oiio crashed in jpeginput, line 235:
>>>> 
>>>>     else if (m->marker == JPEG_COM) {
>>>>             if (! m_spec.find_attribute ("ImageDescription", 
>>>> TypeDesc::STRING))
>>>>                 m_spec.attribute ("ImageDescription",
>>>>                                   std::string ((const char *)m->data));
>>>>         }
>>>> 
>>>> We failed to understand why, being unable to see the content of the 
>>>> variables. The file can be opened without any issue in XnView, Gimp, 
>>>> ImageMagick. We have commented the line of code, and the file could be 
>>>> loaded successfully.
>>>> 
>>>> I've attached the file, if someone using windows can try to load it, i'd 
>>>> like to know if it works.
>>>> 
>>>> Thanks.
>>>> <concrete.jpg>_______________________________________________

--
Larry Gritz
[email protected]


_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to