mirror of https://github.com/stella-emu/stella.git
Fixed crash in ROM launcher when openROM failed (typically on 0-byte file).
This commit is contained in:
parent
d716f42b5c
commit
f15d1ec7a5
|
@ -126,31 +126,32 @@ void RomInfoWidget::parseProperties(const FilesystemNode& node)
|
|||
myRomInfo.push_back("Note: " + myProperties.get(Cartridge_Note));
|
||||
bool swappedPorts = myProperties.get(Console_SwapPorts) == "YES";
|
||||
|
||||
string left = myProperties.get(Controller_Left);
|
||||
string right = myProperties.get(Controller_Right);
|
||||
|
||||
// load the image for auto detection
|
||||
BytePtr image;
|
||||
string md5 = myProperties.get(Cartridge_MD5);
|
||||
uInt32 size = 0;
|
||||
|
||||
if(node.exists() && !node.isDirectory() && (image = instance().openROM(node, md5, size)) != nullptr)
|
||||
// Load the image for controller auto detection
|
||||
try
|
||||
{
|
||||
left = ControllerDetector::detectName(image.get(), size, left,
|
||||
!swappedPorts ? Controller::Jack::Left : Controller::Jack::Right,
|
||||
instance().settings());
|
||||
right = ControllerDetector::detectName(image.get(), size, right,
|
||||
!swappedPorts ? Controller::Jack::Right : Controller::Jack::Left,
|
||||
instance().settings());
|
||||
BytePtr image;
|
||||
string md5 = myProperties.get(Cartridge_MD5);
|
||||
uInt32 size = 0;
|
||||
|
||||
string left = myProperties.get(Controller_Left);
|
||||
string right = myProperties.get(Controller_Right);
|
||||
if(node.exists() && !node.isDirectory() &&
|
||||
(image = instance().openROM(node, md5, size)) != nullptr)
|
||||
{
|
||||
left = ControllerDetector::detectName(image.get(), size, left,
|
||||
!swappedPorts ? Controller::Jack::Left : Controller::Jack::Right,
|
||||
instance().settings());
|
||||
right = ControllerDetector::detectName(image.get(), size, right,
|
||||
!swappedPorts ? Controller::Jack::Right : Controller::Jack::Left,
|
||||
instance().settings());
|
||||
}
|
||||
myRomInfo.push_back("Controllers: " + (left + " (left), " + right + " (right)"));
|
||||
}
|
||||
catch(const runtime_error&)
|
||||
{
|
||||
// Do nothing; we simply don't update the controllers if openROM
|
||||
// failed for any reason
|
||||
}
|
||||
myRomInfo.push_back("Controllers: " + (left + " (left), " + right + " (right)"));
|
||||
|
||||
#if 0
|
||||
myRomInfo.push_back("YStart/Height: " + myProperties.get(Display_YStart) +
|
||||
" " + myProperties.get(Display_Height));
|
||||
#endif
|
||||
|
||||
setDirty();
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
Loading…
Reference in New Issue