Results 1 to 5 of 5

Thread: Devel Compile SegFault

  1. #1
    Administrator
    Join Date
    Sep 2005
    Posts
    354

    Devel Compile SegFault

    Hi, cn187.

    Seeing the following backtrace when using the devel compile. Only snagged the last few lines as you can see it's 60k+ lines. Any idea what's going on here?

    Code:
    #68258 0x00007ffff732f739 in QTreeView::sortByColumn(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68259 0x00007ffff7a8830a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4
    #68260 0x00007ffff72ffd4f in QHeaderView::sortIndicatorChanged(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68261 0x00007ffff732f739 in QTreeView::sortByColumn(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68262 0x00007ffff7a8830a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4
    #68263 0x00007ffff72ffd4f in QHeaderView::sortIndicatorChanged(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68264 0x00007ffff732f739 in QTreeView::sortByColumn(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68265 0x00007ffff7a8830a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4
    #68266 0x00007ffff72ffd4f in QHeaderView::sortIndicatorChanged(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68267 0x00007ffff732f739 in QTreeView::sortByColumn(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68268 0x00007ffff7a8830a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4
    #68269 0x00007ffff72ffd4f in QHeaderView::sortIndicatorChanged(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68270 0x00007ffff732f739 in QTreeView::sortByColumn(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68271 0x00007ffff7a8830a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /lib64/libQtCore.so.4
    #68272 0x00007ffff72ffd4f in QHeaderView::sortIndicatorChanged(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68273 0x00007ffff732f739 in QTreeView::sortByColumn(int, Qt::SortOrder) () at /lib64/libQtGui.so.4
    #68274 0x00000000004eaafb in SEQListView::restoreColumns() (this=0xdc3560) at seqlistview.cpp:259
    #68275 0x00000000004af1e6 in ExperienceWindow::ExperienceWindow(DataLocationMgr const*, Player*, GroupMgr*, ZoneMgr*, QWidget*, char const*) (this=0xccc8e0, dataLocMgr=<optimized out>, player=
        0x55883b0, groupMgr=<optimized out>, zoneMgr=<optimized out>, parent=0x7fffffffd4f0, name=0x0) at experiencelog.cpp:273
    #68276 0x000000000046fe2e in EQInterface::EQInterface(DataLocationMgr*, QWidget*, char const*) (this=0x7fffffffd4f0, dlm=<optimized out>, parent=<optimized out>, name=<optimized out>) at interface.cpp:385
    #68277 0x0000000000429a90 in main(int, char**) (argc=1, argv=0x7fffffffe098) at main.cpp:749

  2. #2
    Administrator
    Join Date
    Oct 2019
    Posts
    504

    Re: Devel Compile SegFault

    Oof. That's a big stack trace.

    I have a rough idea of what's happening, and it's related to a fix I put in for column sorting issues. I've tested it under Qt5 and it seems to work fine, but apparently not under Qt4. So thanks for being the guinea pig ;-)

    I can reproduce it here on my Qt4 vm, so hopefully I'll have a fix for you in an hour or two.

  3. #3
    Administrator
    Join Date
    Oct 2019
    Posts
    504

    Re: Devel Compile SegFault

    Ok, with further testing, it looks like the original issue that I was trying to fix only affects Qt5 and newer, and the crash due to the fix only affects Qt4.

    So for now, the simple work around is to only use the fix when the user is running Qt5+. I've just made a commit to do that. So hopefully that solves it for you.

    Eventually I want to rework all the windowing backend (including sorting) so this kicks the can down the road a bit, but it will keep things moving for now.

    Thanks for running/testing my dev branch. It's very much appreciated.

  4. #4
    Administrator
    Join Date
    Sep 2005
    Posts
    354

    Post Re: Devel Compile SegFault

    That worked. Thank you! I am toying with installing Qt5 on Centos7 but looks like I can put that off for a bit longer

    I am seeing some guilds appear as a number in the spawnlist. All my old tricks for forcing an update to guilds.dat seem to be obsolete. Heck, I cannot even find the world opcode for the guild list anymore. Seems like the guild list may have additional data in it as the numbering includes way more digits than it used to. Any places you'd recommend looking to see if I can fix it? I am generally pretty good with structs and op codes so willing to give it a go.

  5. #5
    Administrator
    Join Date
    Oct 2019
    Posts
    504

    Re: Devel Compile SegFault

    The guild packet stuff changed at some point, and I reworked it to make it work again. They're no longer sending the global list. Instead (unless they changed it again since I last looked at it), when you zone in, they send a list of guilds with members in the zone, and then if someone else zones in from a guild not in that list, they send a packet with that player's guild.

    Newby usually doesn't include these opcodes in his updates, but looking at the binary, I think the current values should be

    OP_GuildsInZoneList 5f77
    OP_NewGuildInZone 5fbb

    Though I haven't verified via packet logs that these are correct.

    Edit: Also, regarding the numbering - the guild update packets include a constant that only seemed to be different if you're on a different server. So I assumed it was some sort of server ID or something. You wouldn't think it would be necessary except to support something like cross-server guild chat. So I assume there's some legacy reason for it - maybe because of something to do with the guild management backend. (back in the day, did server names used to have to be unique across all servers?)
    Last edited by cn187; 03-17-2024 at 11:05 AM.

Thread Information

Users Browsing this Thread

There are currently 9 users browsing this thread. (0 members and 9 guests)

Posting Permissions

You may post new threads
You may post replies
You may post attachments
You may edit your posts
HTML code is Off
vB code is On
Smilies are On
[IMG] code is On