Yeah, I meant that I compiled OIIO on that 64-bit machine.

2013/9/9 Kevin Brightwell <[email protected]>

> No no, I meant when you compiled oiio.
>
>
> On Mon, Sep 9, 2013 at 11:36 AM, Ramiro Pereira de Magalhães <
> [email protected]> wrote:
>
>> Yes, that machine has a 64bit processor and a 64 bit kernel. Here's the
>> uname -a output:
>>
>> Linux frodo 3.10-2-amd64 #1 SMP Debian 3.10.7-1 (2013-08-17) x86_64
>> GNU/Linux
>>
>>
>>
>> 2013/9/9 Kevin Brightwell <[email protected]>
>>
>>> First question, might be stupid, but are you compiling in 64-bit? 32-bit
>>> will definitely crash, and unreliably do so.
>>>
>>> Second, in a bit of PD, I think this might have something to do with it:
>>>
>>> private:
>>>     std::ifstream m_file;
>>>     std::string m_current_line; ///< Buffer the image pixels
>>>     const char * m_pos;
>>>     unsigned int m_pnm_type, m_max_val; // shouldn't this be long?
>>>
>>>
>>>
>>>     bool read_file_scanline (void * data);
>>>     bool read_file_header ();
>>> };
>>>
>>>
>>> and this shows up here:
>>>
>>> Line 267:
>>>             if (m_max_val > std::numeric_limits<unsigned char>::max())
>>>                 raw_to_raw ((unsigned short *)&buf[0], (unsigned short *
>>> ) data,
>>>                             nsamples, (unsigned short)m_max_val);
>>>             else
>>>                 raw_to_raw ((unsigned char *)&buf[0], (unsigned char *)
>>> data,
>>>                             nsamples, (unsigned char)m_max_val); //
>>> casting to a char?
>>>             break;
>>>
>>> Lots of places show up that could cause problems with massive file
>>> sizes. I'm no expert.
>>>
>>> Kevin
>>>
>>>
>>> On Mon, Sep 9, 2013 at 11:16 AM, Ramiro Pereira de Magalhães <
>>> [email protected]> wrote:
>>>
>>>> Hi,
>>>>
>>>> I have just learned about OIIO and I wrote a simple program with
>>>> OpenImageIO to load a 10GB PGM file into memory. To try things out I wrote
>>>> a simple program to load a 10GB PGM (yeah, PGM) file into memory. Sadly,
>>>> the program crashes prior to completing its task with a Segmentation Fault.
>>>> The machine where this is running has 64GB RAM, most of it free. Can anyone
>>>> help me figure out this issue?
>>>>
>>>> Bellow is the program I wrote. It is pretty simple: load the image
>>>> given as argument to it into a buffer, then close the file, clean the
>>>> buffers and leave.
>>>>
>>>> ================CODE================
>>>> #include <iostream>
>>>> #include <string>
>>>> #include <sstream>
>>>> #include <OpenImageIO/imageio.h>
>>>>
>>>> OIIO_NAMESPACE_USING
>>>>
>>>> int main(int argc, char* args[])
>>>> {
>>>>     if (argc != 2)
>>>>     {
>>>>         return 1;
>>>>     }
>>>>     const std::string filePath = args[1];
>>>>
>>>>     ImageInput *in = ImageInput::open (filePath);
>>>>     const ImageSpec & spec = in->spec();
>>>>     const int size = spec.width * spec.height;
>>>>
>>>>     unsigned char * pixels = new unsigned char[size];
>>>>     in->read_image(TypeDesc::UCHAR, pixels);
>>>>     std::cout << "Done reading." << std::endl;
>>>>     in->close();
>>>>     std::cout << "Closed file." << std::endl;
>>>>
>>>>     delete in;
>>>>     delete pixels;
>>>>
>>>>     std::cout << "Outta here." << std::endl;
>>>>     return 0;
>>>> }
>>>> ================CODE================
>>>>
>>>>
>>>> Segfault happens at line 173 of onminput.cpp. Here is the call stack
>>>> given by Qt Builder:
>>>>
>>>> 0    OpenImageIO::v1_3::raw_to_raw<unsigned char>    pnminput.cpp
>>>> 173    0x7ffff798c1e6
>>>> 1    OpenImageIO::v1_3::PNMInput::read_file_scanline    pnminput.cpp
>>>> 272    0x7ffff798b09c
>>>> 2    OpenImageIO::v1_3::PNMInput::read_native_scanline
>>>> pnminput.cpp    385    0x7ffff798b91e
>>>> 3    OpenImageIO::v1_3::ImageInput::read_native_scanlines
>>>> imageinput.cpp    260    0x7ffff76d9280
>>>> 4    OpenImageIO::v1_3::ImageInput::read_scanlines    imageinput.cpp
>>>> 197    0x7ffff76d8c24
>>>> 5    OpenImageIO::v1_3::ImageInput::read_scanlines    imageinput.cpp
>>>> 165    0x7ffff76d8977
>>>> 6    OpenImageIO::v1_3::ImageInput::read_image    imageinput.cpp
>>>> 631    0x7ffff76db3c8
>>>> 7    main    show.cpp    31    0x4012b7
>>>>
>>>>
>>>> I compiled OIIO from the git commit
>>>> d64b9ac8a63261040ae0263b0709924d8fecf4df (Tue Sep 3 12:53:12 2013 -0700).
>>>>
>>>> I appreciate any help.
>>>>
>>>> _______________________________________________
>>>> Oiio-dev mailing list
>>>> [email protected]
>>>> http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
>>>>
>>>>
>>>
>>>
>>> --
>>> Kevin Brightwell
>>> *BESc. and BSc. Candidate 2015*
>>> Western University www.westernu.ca <http://www.uwo.ca>
>>> e. [email protected] c. 226.678.4927
>>>
>>> _______________________________________________
>>> Oiio-dev mailing list
>>> [email protected]
>>> http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
>>>
>>>
>>
>> _______________________________________________
>> Oiio-dev mailing list
>> [email protected]
>> http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
>>
>>
>
>
> --
> Kevin Brightwell
> *BESc. and BSc. Candidate 2015*
> Western University www.westernu.ca <http://www.uwo.ca>
> e. [email protected] c. 226.678.4927
>
> _______________________________________________
> Oiio-dev mailing list
> [email protected]
> http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org
>
>
_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to