[aseprite] 108/128: Fix crash when we press Del key to completely delete a cel
Tobias Hansen
thansen at moszumanska.debian.org
Mon May 9 21:24:29 UTC 2016
This is an automated email from the git hooks/post-receive script.
thansen pushed a commit to branch master
in repository aseprite.
commit eec29049748b224c368e6266035917f38bd3d9cb
Author: David Capello <davidcapello at gmail.com>
Date: Wed May 4 18:58:36 2016 -0300
Fix crash when we press Del key to completely delete a cel
---
src/app/ui/document_view.cpp | 5 ++++-
src/app/ui/editor/pixels_movement.cpp | 5 ++++-
src/app/util/clipboard.cpp | 6 +++++-
3 files changed, 13 insertions(+), 3 deletions(-)
diff --git a/src/app/ui/document_view.cpp b/src/app/ui/document_view.cpp
index 748d9c4..17571e9 100644
--- a/src/app/ui/document_view.cpp
+++ b/src/app/ui/document_view.cpp
@@ -509,7 +509,10 @@ bool DocumentView::onClear(Context* ctx)
{
Transaction transaction(writer.context(), "Clear");
transaction.execute(new cmd::ClearMask(writer.cel()));
- transaction.execute(new cmd::TrimCel(writer.cel()));
+
+ // If the cel wasn't deleted by cmd::ClearMask, we trim it.
+ if (writer.cel())
+ transaction.execute(new cmd::TrimCel(writer.cel()));
if (visibleMask &&
!Preferences::instance().selection.keepSelectionAfterClear())
diff --git a/src/app/ui/editor/pixels_movement.cpp b/src/app/ui/editor/pixels_movement.cpp
index 25fab61..b985c46 100644
--- a/src/app/ui/editor/pixels_movement.cpp
+++ b/src/app/ui/editor/pixels_movement.cpp
@@ -179,7 +179,10 @@ void PixelsMovement::cutMask()
ContextWriter writer(m_reader, 1000);
if (writer.cel()) {
m_transaction.execute(new cmd::ClearMask(writer.cel()));
- m_transaction.execute(new cmd::TrimCel(writer.cel()));
+
+ ASSERT(writer.cel());
+ if (writer.cel())
+ m_transaction.execute(new cmd::TrimCel(writer.cel()));
}
}
diff --git a/src/app/util/clipboard.cpp b/src/app/util/clipboard.cpp
index f834baf..e451572 100644
--- a/src/app/util/clipboard.cpp
+++ b/src/app/util/clipboard.cpp
@@ -226,7 +226,11 @@ void cut(ContextWriter& writer)
{
Transaction transaction(writer.context(), "Cut");
transaction.execute(new cmd::ClearMask(writer.cel()));
- transaction.execute(new cmd::TrimCel(writer.cel()));
+
+ ASSERT(writer.cel());
+ if (writer.cel())
+ transaction.execute(new cmd::TrimCel(writer.cel()));
+
transaction.execute(new cmd::DeselectMask(writer.document()));
transaction.commit();
}
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/aseprite.git
More information about the Pkg-games-commits
mailing list