diff options
author | David Crocker <dcrocker@eschertech.com> | 2021-05-08 10:31:40 +0300 |
---|---|---|
committer | David Crocker <dcrocker@eschertech.com> | 2021-05-08 10:31:40 +0300 |
commit | 027a3a8c9a08342f38c3fa78c392b38ef8f415fa (patch) | |
tree | 1c2d2bcab49084578898ddee34c797aa09fbc820 /src/GCodes/GCodes4.cpp | |
parent | 147b0a97e04855562c5007a5aaa5d914d322335d (diff) |
Allow empty K and F parameters in M409
Diffstat (limited to 'src/GCodes/GCodes4.cpp')
-rw-r--r-- | src/GCodes/GCodes4.cpp | 20 |
1 files changed, 14 insertions, 6 deletions
diff --git a/src/GCodes/GCodes4.cpp b/src/GCodes/GCodes4.cpp index c3d2bbbb..96c0c019 100644 --- a/src/GCodes/GCodes4.cpp +++ b/src/GCodes/GCodes4.cpp @@ -554,8 +554,12 @@ void GCodes::RunStateMachine(GCodeBuffer& gb, const StringRef& reply) noexcept { bool updating = false; String<MaxFilenameLength> filenameString; - bool dummy; - gb.TryGetQuotedString('P', filenameString.GetRef(), dummy); + try + { + bool dummy; + gb.TryGetQuotedString('P', filenameString.GetRef(), dummy); + } + catch (const GCodeException&) { } for (unsigned int module = 1; module < NumFirmwareUpdateModules; ++module) { if (firmwareUpdateModuleMap.IsBitSet(module)) @@ -594,10 +598,14 @@ void GCodes::RunStateMachine(GCodeBuffer& gb, const StringRef& reply) noexcept // Update main firmware firmwareUpdateModuleMap.Clear(); String<MaxFilenameLength> filenameString; - bool dummy; - gb.TryGetQuotedString('P', filenameString.GetRef(), dummy); - reprap.UpdateFirmware(filenameString.GetRef()); - // The above call does not return unless an error occurred + try + { + bool dummy; + gb.TryGetQuotedString('P', filenameString.GetRef(), dummy); + reprap.UpdateFirmware(filenameString.GetRef()); + // The above call does not return unless an error occurred + } + catch (const GCodeException&) { } } isFlashing = false; gb.SetState(GCodeState::normal); |