diff options
author | Slávek Banko <slavek.banko@axis.cz> | 2021-10-29 03:47:53 +0200 |
---|---|---|
committer | Slávek Banko <slavek.banko@axis.cz> | 2021-10-29 03:47:53 +0200 |
commit | a08c6ac9e3c8ac162ce08b730fd6108e2f71213c (patch) | |
tree | 842abfbe689363ffb623bfba5c9cce742fa7ceb0 /src/basket.cpp | |
parent | 260c019dc2e15be0618067a8c1c9f7b4b9340526 (diff) | |
download | basket-a08c6ac9e3c8ac162ce08b730fd6108e2f71213c.tar.gz basket-a08c6ac9e3c8ac162ce08b730fd6108e2f71213c.zip |
Prevent null pointer deference in methods for selection.
This resolves the crash when exporting the Basket archive.
Signed-off-by: Slávek Banko <slavek.banko@axis.cz>
Diffstat (limited to 'src/basket.cpp')
-rw-r--r-- | src/basket.cpp | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/basket.cpp b/src/basket.cpp index 6e14c65..128c1cb 100644 --- a/src/basket.cpp +++ b/src/basket.cpp @@ -4469,12 +4469,20 @@ void Basket::noteUngroup() void Basket::unplugSelection(NoteSelection *selection) { + if (!selection) + { + return; + } for (NoteSelection *toUnplug = selection->firstStacked(); toUnplug; toUnplug = toUnplug->nextStacked()) unplugNote(toUnplug->note); } void Basket::insertSelection(NoteSelection *selection, Note *after) { + if (!selection) + { + return; + } for (NoteSelection *toUnplug = selection->firstStacked(); toUnplug; toUnplug = toUnplug->nextStacked()) { if (toUnplug->note->isGroup()) { Note *group = new Note(this); @@ -4496,6 +4504,10 @@ void Basket::insertSelection(NoteSelection *selection, Note *after) void Basket::selectSelection(NoteSelection *selection) { + if (!selection) + { + return; + } for (NoteSelection *toUnplug = selection->firstStacked(); toUnplug; toUnplug = toUnplug->nextStacked()) { if (toUnplug->note->isGroup()) selectSelection(toUnplug); |