summaryrefslogtreecommitdiffstatshomepage
path: root/src/lib/formats/flopimg.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/formats/flopimg.cpp')
-rw-r--r--src/lib/formats/flopimg.cpp9
1 files changed, 7 insertions, 2 deletions
diff --git a/src/lib/formats/flopimg.cpp b/src/lib/formats/flopimg.cpp
index 9fb487ba971..82f8d28ca93 100644
--- a/src/lib/formats/flopimg.cpp
+++ b/src/lib/formats/flopimg.cpp
@@ -654,9 +654,14 @@ floperr_t floppy_format_track(floppy_image_legacy *floppy, int head, int track,
/* create a dummy resolution; if no parameters were specified */
if (!parameters)
{
- alloc_resolution = std::make_unique<util::option_resolution>(floppy_option_guide);
- if (!alloc_resolution)
+ try
+ {
+ alloc_resolution = std::make_unique<util::option_resolution>(floppy_option_guide);
+ }
+ catch (...)
+ {
return FLOPPY_ERROR_OUTOFMEMORY;
+ }
alloc_resolution->set_specification(floppy->floppy_option->param_guidelines);
parameters = alloc_resolution.get();