Project

General

Profile

Actions

Emulator Issues #12707

closed

Assertion error in interface

Added by fpdotmonkey over 2 years ago. Updated over 2 years ago.

Status:
Fixed
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

Game Name?

Dolphin Main Window

Game ID? (right click the game in the game list, Properties, Info tab)

N/A, not an issue in a game

MD5 Hash? (right click the game in the game list, Properties, Verify tab, Verify Integrity button)

N/A, not an issue in a game

What's the problem? Describe what went wrong.

A popup for an assertion error occurs when changing the theme from "Clean" to "Clean Blue".

What steps will reproduce the problem?

  1. Open Dolphin
  2. Go to Options>Configure...>Interface
  3. In the "Theme" drop down, change the theme to something other than what it's currently set to.
  4. An error popup appears warning of an Assertion Error
  5. In one case, I had Dolphin crash after dismissing the popup

Is the issue present in the latest development version? For future reference, please also write down the version number of the latest development version.

[Version number here]

Is the issue present in the latest stable version?

This issue is present in 5.0+dfsg-6build1, the latest shipped via apt by Ubuntu Developers ubuntu-devel-discuss@lists.ubuntu.com and Debian Games Team pkg-games-devel@lists.alioth.debian.org.

I attempted to download the latest stable release from ppa:dolphin-emu/ppa, however there was an error in updating from it.

E: The repository 'http://ppa.launchpad.net/dolphin-emu/ppa/ubuntu focal Release' does not have a Release file.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.

This should probably be its own issue.

If the issue isn't present in the latest stable version, which is the first broken version? (You can find the first broken version by bisecting. Windows users can use the tool https://forums.dolphin-emu.org/Thread-green-notice-development-thread-unofficial-dolphin-bisection-tool-for-finding-broken-builds and anyone who is building Dolphin on their own can use git bisect.)

I wasn't able to update from the Dolphin apt repo, see above.

If your issue is a graphical issue, please attach screenshots and record a three frame fifolog of the issue if possible. Screenshots showing what it is supposed to look like from either console or older builds of Dolphin will help too. For more information on how to use the fifoplayer, please check here: https://wiki.dolphin-emu.org/index.php?title=FifoPlayer

N/A, not a graphical issue

What are your PC specifications? (CPU, GPU, Operating System, more)

Linux theo 5.11.0-37-generic #41~20.04.2-Ubuntu SMP Fri Sep 24 09:06:38 UTC 2021 x86_64 x86_64 x86_64 GNU/Linux

CPU: AMD Ryzen 7 5800X 8-Core Processor

GPU: NVIDIA Corporation GM107GL Quadro K2200

Is there anything else that can help developers narrow down the issue? (e.g. logs, screenshots,
configuration files, savefiles, savestates)

Details of the Assertion Error:

ASSERT INFO:
../src/generic/imaglist.cpp(63): assert "(bitmap.GetWidth() >= m_width && bitmap.GetHeight() == m_height) || (m_width == 0 && m_height == 0)" failed in Add(): invalid bitmap size in wxImageList: this might work on this platform but definitely won't under Windows.

BACKTRACE:
[1] wxGenericImageList::Add(wxBitmap const&)
[2] void std::vector<int, std::allocator<int> >::emplace_back<int>(int&&)
[3] void std::vector<int, std::allocator<int> >::emplace_back<int>(int&&)
[4] void std::vector<int, std::allocator<int> >::emplace_back<int>(int&&)
[5] std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > std::operator+<char, std::char_traits<char>, std::allocator<char> >(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >&&, char const*)
[6] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&)
[7] wxEvtHandler::SearchDynamicEventTable(wxEvent&)
[8] wxEvtHandler::TryHereOnly(wxEvent&)
[9] wxEvtHandler::ProcessEventLocally(wxEvent&)
[10] wxEvtHandler::ProcessEvent(wxEvent&)
[11] wxEvtHandler::SafelyProcessEvent(wxEvent&)
[12] wxControlWithItemsBase::SendSelectionChangedEvent(int)
[13] g_signal_emit_valist
[14] g_signal_emit
[15] gtk_combo_box_set_active_iter
[16] g_cclosure_marshal_VOID__STRINGv
[17] g_signal_emit_valist
[18] g_signal_emit
[19] g_closure_invoke
[20] g_signal_emit_valist
[21] g_signal_emit
[22] gtk_widget_activate
[23] gtk_menu_shell_activate_item
[24] g_signal_emit_valist
[25] g_signal_emit
[26] gtk_main_do_event
[27] g_main_context_dispatch
[28] g_main_loop_run
[29] gtk_main
[30] wxGUIEventLoop::DoRun()
[31] wxEventLoopBase::Run()
[32] wxDialog::ShowModal()
[33] void std::vector<int, std::allocator<int> >::emplace_back<int>(int&&)
[34] wxEvtHandler::ProcessEventIfMatchesId(wxEventTableEntryBase const&, wxEvtHandler*, wxEvent&)
[35] wxEventHashTable::HandleEvent(wxEvent&, wxEvtHandler*)
[36] wxEvtHandler::TryHereOnly(wxEvent&)
[37] wxEvtHandler::DoTryChain(wxEvent&)
[38] wxEvtHandler::ProcessEvent(wxEvent&)
[39] wxWindowBase::TryAfter(wxEvent&)
[40] wxEvtHandler::SafelyProcessEvent(wxEvent&)
[41] wxToolBarBase::OnLeftClick(int, bool)
[42] g_signal_emit_valist
[43] g_signal_emit_by_name
[44] g_signal_emit_valist
[45] g_signal_emit
[46] g_closure_invoke
[47] g_signal_emit_valist
[48] g_signal_emit
[49] g_signal_emit_valist
[50] g_signal_emit
[51] g_cclosure_marshal_VOID__BOXEDv
[52] g_signal_emit_valist
[53] g_signal_emit
[54] gtk_event_controller_handle_event
[55] g_signal_emit_valist
[56] g_signal_emit
[57] gtk_main_do_event
[58] g_main_context_dispatch
[59] g_main_loop_run
[60] gtk_main
[61] wxGUIEventLoop::DoRun()
[62] wxEventLoopBase::Run()
[63] wxAppConsoleBase::MainLoop()
[64] wxEntry(int&, wchar_t**)
[65] __libc_start_main
[66] _start
Actions #1

Updated by fpdotmonkey over 2 years ago

For Latest Development Version, I couldn't find that because of the same apt repo issue.

Actions #2

Updated by JMC4789 over 2 years ago

Have you tried building from source instead?

Instructions are here - https://github.com/dolphin-emu/dolphin

Actions #3

Updated by fpdotmonkey over 2 years ago

I've been trying to, but I keep hitting a compiler error that it can't find qpa/qplatformnativeinterface.h, which appears to be a Qt thing.

I looked into it a bit, and it seems that the issue is that my system Qt (5.12.X) doesn't have that, but I have a local Qt (~/Qt/5.15.2/) that does. I don't know how to tell the compiler to link against my local Qt instead of the system Qt. Maybe there's some environment variable I need to pass?

Actions #4

Updated by pokechu22 over 2 years ago

You need to install qtbase5-private-dev.

Actions #5

Updated by fpdotmonkey over 2 years ago

Oh excellent, that worked.

I got it to build on ff1cb5a1c0 and on eee302c040, but there doesn't appear to be any options in the "Theme" dropdown. Do I need to download data to populate that?

Actions #6

Updated by pokechu22 over 2 years ago

You need to link the Data/Sys folder to the place where Dolphin is being run. (If you didn't run make install, that's the Binaries folder: ln -s ../../Data/Sys Binaries/ should work. If you did run make install I think it gets copied automatically, but I'm not sure.)

Actions #7

Updated by JosJuice over 2 years ago

  • Status changed from New to Fixed

Marking as fixed since the issue was only present in old versions of Dolphin. (It's still possible to comment on this issue if you have further questions, though.)

Actions

Also available in: Atom PDF