Updated emulationstation (v.2.4.0RP) and random select is now crashing to terminal.
-
This occurs in both emulationstation updated by binary and source. Selecting a console or even the Tools menu (Tools menu seems to be the easiest to trigger the crash in) in emulationstation and hitting X to random select several times (even occurs if tapped slowly) will eventually crash emulationstation with the following error message:
terminate called after throwing an instance of 'std::out_of_range' what(): vector::_M_range_check: __n (which is 13) >= this->size() (which is 13) Aborted
Is there anything specific I should change to prevent this from occurring?
-
Sorry, missed this.
I refactored that for 2.4.0 and must have committed a very basic off by one error, by distraction. I'm terribly sorry.
Thanks for the report. I'll look into it tomorrow.
Question: does it only happen on the gamelist, or does it also happen on the system view?
Best.
-
@pjft I just tested it and it does not seem to be crashing on the system carousel view
-
@lostless said in Updated emulationstation (v.2.4.0RP) and random select is now crashing to terminal.:
@pjft I just tested it and it does not seem to be crashing on the system carousel view
@pjft Can confirm this. Hitting X to random system view (even mashing the button like a maniac) has no problems whatsoever.
-
Thanks.
Sorry about that - naive mistake from my end on the random selection logic refactoring.
I just submitted a fix, and I'm providing a patched binary here:
https://github.com/pjft/EmulationStation/releases/download/2.4.0/emulationstation
In case you want to install it yourself.
Thanks for flagging this.
To install, exit ES, and in the terminal (or via SSH), run:
mkdir ES-update cd ES-update wget https://github.com/pjft/EmulationStation/releases/download/2.4.0/emulationstation chmod +x emulationstation sudo cp emulationstation /opt/retropie/supplementary/emulationstation
and then reboot.
Should be good.
Sorry about that once again.
-
@pjft No need to apologize, I totally understand that these things can happen. Thanks so much for the quick fix, by the way! It worked like a charm. Spammed the X button under Tools and various systems and no issues whatsoever.
-
@MapleStory Not a bother, glad it's sorted there.
As a separate fact, even though it wasn't crashing on the system view, there were systems that were never chosen (meaning, the same indexing problem was happening there - your first system would never be chosen, but when it randomly selected a system number that was larger than the total list, it just didn't crash).
So I now tested and confirmed that both first and last systems are randomly selectable, and same for all games in a list.
Thanks!
-
@pjft Will this update when choosing "Update all installed packages" or do I need to run the commands above?
-
Not yet. When it's approved, you will be able to update it by:
- Updating RetroPie-Setup script
- Manage Core Packages > EmulationStation > Update from source
No need to update all packages.
I'll let you know when it's approved, though.
-
@pjft Excellent, thank you and great work!
-
@theWinterDojer This has now been merged.
If you exit ES, open RetroPie-Setup, and then proceed by:
- Updating RetroPie-Setup script
- Manage Core Packages > EmulationStation > Updating from source
It should be good.
-
@pjft Perfect, will update when I get home. Thanks again.
-
@thewinterdojer Binaries for RPI are now updated.
-
@buzz Well this just keeps getting better. Thank you.
-
@pjft One more thing I forgot to ask/mention. In my es_log.txt, there are a lot of these instances:
lvl2: Couldn't find entry in index! 1 lvl2: Couldn't find entry in index! FALSE
It seems to mainly appear under systems that have no roms in them. Any reason for concern or can it be ignored safely?
-
@maplestory they're safe to ignore, though they ideally wouldn't be there. I should remove those or make them less scary: they're just stating that they're trying to remove an entry from the filter index (for filtering the gamelist), but they can't find a corresponding entry.
Do they show up on empty systems, is that it?
That can help me chase those down. I see them every now and then but can't consistently track them.
-
@pjft Mostly in empty systems, although there were 9 instances under Game Boy Color (which does indeed have roms). Here's the log itself, if it helps. This is after a fresh reboot using the up-to-date Carbon theme:
lvl2: EmulationStation - v2.4.1rp, built Jul 11 2017 - 14:19:37
lvl2: Creating surface...
lvl2: Created window successfully.
lvl2: Added known joystick 8Bitdo FC30 Pro (instance ID: 0, device index: 0)
lvl2: Checking available OpenGL extensions...
lvl2: ARB_texture_non_power_of_two: MISSING
lvl2: Loading system config file /etc/emulationstation/es_systems.cfg...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/amstradcpc/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/amstradcpc/../carbon.xml")
could not find file ""
lvl1: System "amstradcpc" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/arcade/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/arcade/../carbon.xml")
could not find file ""
lvl1: System "arcade" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/atari2600/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/atari2600/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/atari2600/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/atari7800/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/atari7800/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/atari7800/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/atarilynx/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/atarilynx/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/atarilynx/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/fba/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/fba/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/fba/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/fds/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/fds/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/fds/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/gamegear/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/gamegear/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/gamegear/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/gb/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/gb/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/gb/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/gba/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/gba/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/gba/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/gbc/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/gbc/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/gbc/../carbon.xml")
could not find file ""
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/mame/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/mame/../carbon.xml")
could not find file ""
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/mame/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/mame/../carbon.xml")
could not find file ""
lvl1: System "mame-mame4all" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/mastersystem/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/mastersystem/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/mastersystem/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/megadrive/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/megadrive/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/megadrive/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/msx/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/msx/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/msx/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/n64/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/n64/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/n64/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/neogeo/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/neogeo/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/neogeo/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/nes/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/nes/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/nes/../carbon.xml")
could not find file ""
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/ngp/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/ngp/../carbon.xml")
could not find file ""
lvl1: System "ngp" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/ngpc/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/ngpc/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/ngpc/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/pcengine/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/pcengine/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/pcengine/../carbon.xml")
could not find file ""
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/psx/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/psx/../carbon.xml")
could not find file ""
lvl1: System "psx" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/retropie/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/retropie/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/retropie/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/sega32x/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/sega32x/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/sega32x/../carbon.xml")
could not find file ""
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/segacd/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/segacd/../carbon.xml")
could not find file ""
lvl1: System "segacd" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/sg-1000/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/sg-1000/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/sg-1000/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/snes/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/snes/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/snes/../carbon.xml")
could not find file ""
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/vectrex/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/vectrex/../carbon.xml")
could not find file ""
lvl1: System "vectrex" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/virtualboy/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/virtualboy/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/virtualboy/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/wonderswan/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/wonderswan/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/wonderswan/../carbon.xml")
could not find file ""
lvl2: Parsing XML file "/home/pi/.emulationstation/gamelists/wonderswancolor/gamelist.xml"...
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/wonderswancolor/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/wonderswancolor/../carbon.xml")
could not find file ""
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/zxspectrum/theme.xml"
(from included file "/etc/emulationstation/themes/carbon/zxspectrum/../carbon.xml")
could not find file ""
lvl1: System "zxspectrum" has no games! Ignoring it.
lvl2: Couldn't find entry in index! 1
lvl2: Couldn't find entry in index! FALSE
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-allgames.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file ""
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-favorites.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file ""
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/logo/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/logo/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "./art/controller/${system.theme}.svg" (which resolved to "/etc/emulationstation/themes/carbon/art/controller/auto-lastplayed.svg")
lvl1: Warning from theme "/etc/emulationstation/themes/carbon/theme.xml"
could not find file "" -
@maplestory I see. What mame systems do you have set up as well? Advance mame? MAME libretro?
-
Nevermind.
These are completely safe. I'll handle these properly in a future update.
If you're interested in the technical details:
Short version:
- These are a result of the initial loading process, scraping for folders where ROMs may be, and if they end up being empty, deleting them.
Long version:
- I recently forced the deletion of "FileData" instances to remove themselves from the index of the respective systems, as there was an edge case of the users potentially deleting a file and the index not being updated. Alas, empty folders aren't added to the index (as intended), but we were attempting to remove them anyway. It was handling it correctly, but it was letting us know that it couldn't find one such entry.
Thanks for flagging this. It's harmless, but I can see how it can look scary!
-
@pjft Thanks for clearing everything up, totally makes sense. I thought it was a bit alarming when I saw the filesize of the log compared to how it was before having updated emulationstation...thought maybe I had cluttered up some gamelists somehow! lol
Also, I'm sure it probably doesn't matter now but I only had 4 roms in mame-libretro.
Contributions to the project are always appreciated, so if you would like to support us with a donation you can do so here.
Hosting provided by Mythic-Beasts. See the Hosting Information page for more information.