Hi ports@, Sorry for taking so long, got involved with work. I'm attaching an updated port.
The port has been tested with xfce4 & cwm on OpenBSD snapshot from Jan 22 i386. Crashes on modal dialog close / full window resize in xfce are gone on qt5-5.3.2p7. See below for more details (especially on the cwm crash reported by zhuk@). On Fri, Jan 16, 2015, at 02:52 PM, Vadim Zhukov wrote: > > > Being fully agree with Landry's points, I'd ask for the following > > > tweaks in addition: > > > > > > 1. Remove gcc4 from MODULES and MODGCC4_* lines, qt5.port.mk already > > > takes care of those. > > > Fixed. gcc4 has been removed from modules and MODGCC4_* lines have been deleted. > > > 2. CONFIGURE_STYLE comes from cmake.port.mk automagically as well. > > > Fixed. The CONFIGURE_STYLE has been removed. > > > Hi zhuk@, > > > > Thanks for taking the time to test. I'll address the first 2 issues > > today right after work and will try to get > > a good whack on the backtrace from pt. 3. > > > > Regarding pt 3: > > Since you are the qt5 porter I assume it's a port with latest patches? > > Would you mind providing me the exact port version used for this test? > > > > > 3. Crashes or stucks with hidding window when resizing arbitrary (not via > > > window > > > manager's hotkeys) on amd64 with CWM. Here is a backtrace after crash > > > (SIGBUS): > > > > > > > I'm not sure if I'm understanding you correctly. I saw a crash > > previously when trying > > to make the window not full screen using the window manager option in > > the toolbar. > > Are you doing something similar? I will be trying to reproduce this and > > can of course > > run CWM for the test. Any more details on what exactly leads to the > > crash will > > most definetly help :) > I use cwm on -CURRENT amd64. Cwm has commands "maximize window" (Ctrl+Alt+m, > by default) and "make window full screen" (Ctrl+Alt+f). While I use only > those to switch between "maximized", "full screen" and "normal" window > states, everything works fine. But if I try to resize window manually > (Alt+mouse), in a few seconds crash or hang happens. Window disappears in any > case, so it, probably, gets stuck in cleanup code in case of hang. > > > #0 0x00001d0b7c82240d in WebCore::QNetworkReplyHandler::finish() () > > > from /usr/local/lib/qt5/libQt5WebKit.so.0.0 > > > #1 0x00001d0b7c81f820 in > > > WebCore::QNetworkReplyHandlerCallQueue::flush() [clone .part.79] () > > > from /usr/local/lib/qt5/libQt5WebKit.so.0.0 > > > #2 0x00001d0b7c82258a in > > > WebCore::QNetworkReplyWrapper::emitMetaDataChanged() () from > > > /usr/local/lib/qt5/libQt5WebKit.so.0.0 > > > #3 0x00001d0ae69fe2f8 in QMetaObject::activate(QObject*, int, int, > > > void**) () from /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #4 0x00001d0ae69fe2f8 in QMetaObject::activate(QObject*, int, int, > > > void**) () from /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #5 0x00001d0b64ce5c34 in QNetworkReplyHttpImplPrivate::finished() () > > > from /usr/local/lib/qt5/libQt5Network.so.0.0 > > > #6 0x00001d0b64d6c139 in > > > QNetworkReplyHttpImpl::qt_static_metacall(QObject*, QMetaObject::Call, > > > int, void**) () from /usr/local/lib/qt5/libQt5Network.so.0.0 > > > #7 0x00001d0ae69ff48e in QObject::event(QEvent*) () from > > > /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #8 0x00001d0af9f6d72c in QApplicationPrivate::notify_helper(QObject*, > > > QEvent*) () from /usr/local/lib/qt5/libQt5Widgets.so.0.0 > > > #9 0x00001d0af9f729f0 in QApplication::notify(QObject*, QEvent*) () > > > from /usr/local/lib/qt5/libQt5Widgets.so.0.0 > > > #10 0x00001d0ae69d543d in QCoreApplication::notifyInternal(QObject*, > > > QEvent*) () from /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #11 0x00001d0ae69d78a7 in > > > QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) > > > () from /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #12 0x00001d0ae6a25b63 in postEventSourceDispatch(_GSource*, int > > > (*)(void*), void*) () from /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #13 0x00001d0b35513f4f in g_main_context_dispatch () from > > > /usr/local/lib/libglib-2.0.so.4200.0 > > > #14 0x00001d0b35515f9e in g_main_context_iterate () from > > > /usr/local/lib/libglib-2.0.so.4200.0 > > > #15 0x00001d0b35516077 in g_main_context_iteration () from > > > /usr/local/lib/libglib-2.0.so.4200.0 > > > #16 0x00001d0ae6a257f3 in > > > QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) > > > () from /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #17 0x00001d0ae69d403b in > > > QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from > > > /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #18 0x00001d0ae69dac38 in QCoreApplication::exec() () from > > > /usr/local/lib/qt5/libQt5Core.so.0.0 > > > #19 0x00001d08ae15e0e7 in main () > > > > > > I'm not sure if (3) is critical because Otter is designed to behave > > > like Opera, and Opera was used on the whole screen everywhere I've > > > seen it, thus no resizing used. > > > zhuk@ I tried to reproduce the issue with: - OpenBSD i386 snapshot from Jan 22 - running both xfce4 & cwm - using qt5-5.3.2p7 I am able to: - make the browser full screen, minimize, resize in xfce & full screen using the built-in option in otter - do the same on cwm using the short-cuts you provided (including resizing) In both cases I was unable to reproduce the crash you encountered. I talked with otter upstream with your back-trace in hand. Their feedback roughly is: - weird that network is included in the back-trace as it's obviously the UI thread dying - can you reproduce it with Qt5 example applications? Starting with something without WebKit and ending with the demobrowser example or just QMainWindow with a QWebView (in the latter case while it's pointed at an URL) Since I am unable to reproduce this on i386, can anyone else with amd64 check with cwm? I'm of course also open to any feedback regarding this port. & changes required to import it. Regards, Adam Wolk
otter-browser.tar.gz
Description: application/gzip