On 18 July 2014 10:47, Robert Helling <hell...@lmu.de> wrote: > Hi, > > I was going to see what you guys have done wrt printing. But I don’t get > there as subsurface crashes reliably when opening the print dialog. Just > startup subsurface and hit Cmd-P. Relevant part of stack trace: > > Thread 0 Crashed:: Dispatch queue: com.apple.main-thread > 0 ??? 0x00007fff7d88fd60 vtable for > __cxxabiv1::__si_class_type_info + 16 > 1 subsurface 0x00000001000c8c60 > PrintOptions::initSliderWithLabel(QSlider*, QLabel*, int) + 48 > (printoptions.cpp:74) > 2 subsurface 0x00000001000c86e4 > PrintOptions::setup(options*) + 84 (printoptions.cpp:27) > 3 subsurface 0x00000001000c8680 > PrintOptions::PrintOptions(QWidget*, options*) + 208 (printoptions.cpp:13) > 4 subsurface 0x00000001000c85a5 > PrintOptions::PrintOptions(QWidget*, options*) + 37 (printoptions.cpp:13) > 5 subsurface 0x00000001000c212b > PrintDialog::PrintDialog(QWidget*, QFlags<Qt::WindowType>) + 379 > (printdialog.cpp:25) > 6 subsurface 0x00000001000c1f9d > PrintDialog::PrintDialog(QWidget*, QFlags<Qt::WindowType>) + 29 > (printdialog.cpp:66) > 7 subsurface 0x000000010008f4fa > MainWindow::on_actionPrint_triggered() + 74 (mainwindow.cpp:309) > 8 subsurface 0x00000001001331a4 > MainWindow::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) + > 260 (moc_mainwindow.cpp:161) > 9 subsurface 0x00000001001337ee > MainWindow::qt_metacall(QMetaObject::Call, int, void**) + 126 > (moc_mainwindow.cpp:251) > > > Exception Type: EXC_BAD_ACCESS (SIGBUS) > Exception Codes: KERN_PROTECTION_FAILURE at 0x00007fff7d88fd60 > > VM Regions Near 0x7fff7d88fd60: > __DATA 00007fff7d88e000-00007fff7d88f000 [ 4K] > rw-/rwx SM=COW > /System/Library/Frameworks/Carbon.framework/Versions/A/Frameworks/Print.framework/Versions/A/Print > --> __DATA 00007fff7d88f000-00007fff7d891000 [ 8K] > rw-/rwx SM=COW /usr/lib/libc++abi.dylib > unused shlib __DATA 00007fff7d891000-00007fff7d8b1000 [ 128K] > rw-/rwx SM=COW system shared lib __DATA not used by this process > > Application Specific Information: > Performing @selector(qtDispatcherToQAction:) from sender NSMenuItem > 0x10fb5ac50 > > > Running in debugger did not point to anything obvious, maybe except the fact > that line 3 of the stack trace is actually > > > initSliderWithLabel(ui.sliderPHeight, ui.valuePHeight, > printOptions->profile_height); > > > where ui.sliderPHeight happens to be a NULL pointer. But the exception seems > to be thrown before that is tried to be accessed. >
here are a couple of patches that remove some dead code - they remove the print height slider options entirely, but i don't think the SIGBUS is caused by a slider. if the sliders cause a SIGBUS that is quite bad and it's not really our fault. to explain, setupUI() is called before PrintOptions::setup(), so when reaching initSliderWithLabel() any of the sliders should be non-NULL and we also assume that memory is mapped (ui_printoptions.h), aligned and the physical address is valid. the SIGBUS itself could be caused by the OSX print framework or by a faulting RAM module. 0x00007fff7d88fd60 looks OK in terms of 8 bytes alignment. best would be to post the OSX version so that other users can test as well. lubomir --
0001-Print-remove-the-height-sliders-from-the-PrintOption.patch
Description: Binary data
0002-Print-remove-the-options-for-height-from-display.h-s.patch
Description: Binary data
_______________________________________________ subsurface mailing list subsurface@hohndel.org http://lists.hohndel.org/cgi-bin/mailman/listinfo/subsurface