vranki / siilihai-client

Siilihai web forum reader
http://www.siilihai.com/
GNU General Public License v3.0
18 stars 5 forks source link

Hangs when entering message list extraction pattern #4

Closed klasrocket closed 7 years ago

klasrocket commented 7 years ago

Running git version of Siilihai on ubuntu gnome 17.04 64 qt 5.9.1 and I have no problems entering most data and extr. patterns except for message list, the whole client crashes when trying to enter any % wildcards in the text filed. Tried 2 different forums and seems to be same procedure.

Got some logs from QT Application output but probably not so useful, is there any other way to trace the problem or is QT debug next step?

Starting /home/linus/siilihai-client/src/siilihai-client... ClientLogic::ClientLogic(QObject*) Network connected: true virtual void ClientLogic::launchSiilihai() Loaded settings from "/home/linus/.local/share/Siilihai/Siilihai/siilihai_settings.ini" virtual void ClientLogic::launchSiilihai() Using data files under "/home/linus/.local/share/Siilihai/Siilihai" void UpdateEngine::setState(UpdateEngine::UpdateEngineState) " Svenska ElektronikForumet" "Missing Parser" -> "Idle" void ForumSubscription::setBeingUpdated(bool) false "Subscription to 358 ( Svenska ElektronikForumet) su 0 bu 0 ss 0 bs 0" void UpdateEngine::setState(UpdateEngine::UpdateEngineState) "elmoto.net" "Missing Parser" -> "Idle" void ForumSubscription::setBeingUpdated(bool) false "Subscription to 388 (elmoto.net) su 0 bu 0 ss 0 bs 0" qt.network.ssl: QSslSocket: cannot resolve SSLv2_client_method qt.network.ssl: QSslSocket: cannot resolve SSLv2_server_method virtual void ClientLogic::changeState(ClientLogic::siilihai_states) Offline changed: false virtual void ClientLogic::changeState(ClientLogic::siilihai_states) Login virtual void ClientLogic::changeState(ClientLogic::siilihai_states) Startsync void ForumSubscription::setScheduledForUpdate(bool) true "Subscription to 358 ( Svenska ElektronikForumet) su 1 bu 0 ss 0 bs 0" void ForumSubscription::setScheduledForUpdate(bool) true "Subscription to 388 (elmoto.net) su 1 bu 0 ss 0 bs 0" void ForumSubscription::setScheduledForUpdate(bool) false "Subscription to 388 (elmoto.net) su 0 bu 0 ss 0 bs 0" void ClientLogic::updateForum(ForumSubscription*) updating now "Subscription to 388 (elmoto.net) su 0 bu 0 ss 0 bs 0" () void UpdateEngine::setState(UpdateEngine::UpdateEngineState) "elmoto.net" "Idle" -> "Updating" void ForumSubscription::setScheduledForUpdate(bool) false "Subscription to 388 (elmoto.net) su 0 bu 0 ss 0 bs 0" void ForumSubscription::setBeingUpdated(bool) true "Subscription to 388 (elmoto.net) su 0 bu 1 ss 0 bs 0" virtual void ClientLogic::syncFinished(bool, QString) true void ForumSubscription::setScheduledForUpdate(bool) false "Subscription to 358 ( Svenska ElektronikForumet) su 0 bu 0 ss 0 bs 0" void ClientLogic::updateForum(ForumSubscription*) updating now "Subscription to 358 ( Svenska ElektronikForumet) su 0 bu 0 ss 0 bs 0" () void UpdateEngine::setState(UpdateEngine::UpdateEngineState) " Svenska ElektronikForumet" "Idle" -> "Updating" void ForumSubscription::setScheduledForUpdate(bool) false "Subscription to 358 ( Svenska ElektronikForumet) su 0 bu 0 ss 0 bs 0" void ForumSubscription::setBeingUpdated(bool) true "Subscription to 358 ( Svenska ElektronikForumet) su 0 bu 1 ss 0 bs 0" virtual void ClientLogic::changeState(ClientLogic::siilihai_states) Ready void UpdateEngine::setState(UpdateEngine::UpdateEngineState) "" "Missing Parser" -> "Idle" void ForumSubscription::setBeingUpdated(bool) false "Subscription to 0 () su 0 bu 0 ss 0 bs 0" void UpdateEngine::setState(UpdateEngine::UpdateEngineState) "elmoto.net" "Updating" -> "Error" void ForumSubscription::setScheduledForUpdate(bool) false "Subscription to 388 (elmoto.net) su 0 bu 1 ss 0 bs 0" void ForumSubscription::setBeingUpdated(bool) false "Subscription to 388 (elmoto.net) su 0 bu 0 ss 0 bs 0" void ClientLogic::forumUpdated(ForumSubscription*) "elmoto.net" Selected group "Unknown/22: Lite av varje" void UpdateEngine::listThreadsFinished(QList<ForumThread*>&, ForumGroup*) Group "0/22: Lite av varje" not subscribed! Ignoring these. Data MisMatch at pos 11139 pre 11134 : "><!--\ngoogle_ad_client = \"pub-99657" != "><!--\r\ngoogle_ad_client = \"pub-9965" Problem char = '\xa' ( 10 ) != '\xd' ( 13 ) Position: 0 match type = 0 Data MisMatch at pos 0 pre 0 : "\"elbil-about4549.html\" class=\"" != "<span class=\"topictitle\"><a hr" Problem char = '"' ( 34 ) != '<' ( 60 ) Position: 14427 match type = 1 Data MisMatch at pos 0 pre 0 : "S el" != "4549" Problem char = 'S' ( 83 ) != '4' ( 52 ) Position: 14472 match type = 3 Data MisMatch at pos 0 pre 0 : "Saab</a></span><span class" != ".html\" class=\"topictitle\">" Problem char = 'S' ( 83 ) != '.' ( 46 ) Position: 14476 match type = 1 Data MisMatch at pos 0 pre 0 : "=\"gensmall\"" != "NEVS elSaab" Problem char = '=' ( 61 ) != 'N' ( 78 ) Position: 14502 match type = 3 QTextCursor::setPosition: Position '81522' out of range void UpdateEngine::setState(UpdateEngine::UpdateEngineState) " Svenska ElektronikForumet" "Updating" -> "Idle" void ForumSubscription::setBeingUpdated(bool) false "Subscription to 358 ( Svenska ElektronikForumet) su 0 bu 0 ss 0 bs 0" void ClientLogic::forumUpdated(ForumSubscription*) " Svenska ElektronikForumet" Selected thread "0/22/4549: NEVS elSaab" Selected thread "0/22/4549: NEVS elSaab" Selected thread "0/22/7538: �rets el(d)sj�l" Selected thread "0/22/7185: SGF energy (Northvolt) hade pressrelease idag" Selected thread "0/22/7538: �rets el(d)sj�l" void UpdateEngine::listMessagesFinished(QList<ForumMessage*>&, ForumThread*, bool) got 0 messages in thread "0/22/7538: �rets el(d)sj�l" void UpdateEngine::listMessagesFinished(QList<ForumMessage*>&, ForumThread*, bool) got 0 messages in thread "0/22/7538: �rets el(d)sj�l" Warning: last or first token can't be tag!! void UpdateEngine::listMessagesFinished(QList<ForumMessage*>&, ForumThread*, bool) got 0 messages in thread "0/22/7538: �rets el(d)sj�l" Warning: last or first token can't be tag!! void UpdateEngine::listMessagesFinished(QList<ForumMessage*>&, ForumThread*, bool) got 0 messages in thread "0/22/7538: �rets el(d)sj�l" The program has unexpectedly finished. /home/linus/siilihai-client/src/siilihai-client crashed.

klasrocket commented 7 years ago

The problem seems to be ralated to functions; MessageListPatternEditor::patternChanged and QString::length

But didn't manage to get it working. Same thing even if the html is not loaded.

Here is my stack;

1 QString::length qstring.h 883 0x5555555a0578 2 ForumThread::isSane forumthread.cpp 61 0x7ffff7b41b86 3 ParserEngine::performListMessages parserengine.cpp 583 0x7ffff7b79e7d 4 MessageListPatternEditor::patternChanged messagelistpatterneditor.cpp 158 0x5555555b5b95 5 PatternEditor::qt_static_metacall moc_patterneditor.cpp 143 0x5555555d3cfd 6 QMetaObject::activate(QObject *, int, int, void * *) 0x7ffff609af89 7 QTimer::timeout(QTimer::QPrivateSignal) 0x7ffff6110837 8 QTimer::timerEvent(QTimerEvent *) 0x7ffff60a7738 9 QObject::event(QEvent *) 0x7ffff609be9b 10 QApplicationPrivate::notify_helper(QObject *, QEvent *) 0x7ffff71c84bc 11 QApplication::notify(QObject *, QEvent *) 0x7ffff71cf8e7 12 QCoreApplication::notifyInternal2(QObject *, QEvent *) 0x7ffff6070e78 13 QTimerInfoList::activateTimers() 0x7ffff60c16be 14 ?? 0x7ffff60c1e81 15 g_main_context_dispatch 0x7fffe9e9d377 16 ?? 0x7fffe9e9d5e0 17 g_main_context_iteration 0x7fffe9e9d68c 18 QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) 0x7ffff60c293f 19 QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) 0x7ffff606f5ea 20 QCoreApplication::exec() 0x7ffff6077a44 ... <More>

vranki commented 7 years ago

Thanks, I'll check it out. This is one of the features i didn't have time to test yet. I won't make a binary release before it's fixed.

vranki commented 7 years ago

I couldn't reproduce bug exactly, but i just pushed some fixes related to parser maker. I managed to create a parser without any crashes. Could you try again?

klasrocket commented 7 years ago

Yes! Now it seems to work, but got a popup with the text Unable to save the parser when I tried to upload it.