In file DCTStream.cc:75 at method init() field cinfo.err is initialized after call to jpeg_create_decompress(&cinfo) and this makes a segmentation fault when an error thrown while calling this function (jpeg_create_decompress). The correct usage should be like this: void DCTStream::init() { jpeg_std_error(&jerr); jerr.error_exit = &exitErrorHandler; cinfo.err = &jerr; src.pub.init_source = str_init_source; src.pub.fill_input_buffer = str_fill_input_buffer; src.pub.skip_input_data = str_skip_input_data; src.pub.resync_to_restart = jpeg_resync_to_restart; src.pub.term_source = str_term_source; src.pub.bytes_in_buffer = 0; src.pub.next_input_byte = NULL; src.str = str; src.index = 0; src.abort = false; cinfo.src = (jpeg_source_mgr *)&src; jpeg_create_decompress(&cinfo); x = 0; row_buffer = NULL; }
Fixed, thanks for reporting.
Use of freedesktop.org services, including Bugzilla, is subject to our Code of Conduct. How we collect and use information is described in our Privacy Policy.