summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMaximiliano Curia <maxy@debian.org>2015-11-07 16:00:53 +0100
committerMaximiliano Curia <maxy@debian.org>2015-11-08 18:39:47 +0100
commit1054ccd0637df3bd3fefc2ac5944cd4d8f7f84d8 (patch)
treefdedfbed44fa36a71d2830f6759c6ef405131c58
parentab9222cfa0378bbe6a2440791cd8738bed3971a6 (diff)
line.drawing
## Description: When moving a wire so that it joins with another delete the moved one, as well as extending the other. ## Origin/Author: Fole ## Bug: https://bugs.edge.launchpad.net/ubuntu/+source/oregano/+bug/60777 Gbp-Pq: Name line.drawing.patch
-rw-r--r--src/sheet/sheet-item.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/src/sheet/sheet-item.c b/src/sheet/sheet-item.c
index 35120e3..e7aa1e1 100644
--- a/src/sheet/sheet-item.c
+++ b/src/sheet/sheet-item.c
@@ -525,7 +525,11 @@ sheet_item_event (SheetItem *sheet_item, const GdkEvent *event, SchematicView *s
item_data = SHEET_ITEM (list->data)->priv->data;
item_data_move (item_data, &delta);
- item_data_register (item_data);
+ if (item_data_register(item_data) == -1) {
+ /* Merged item needs to be deleted */
+ g_object_unref (G_OBJECT (item_data));
+ gtk_object_destroy(GTK_OBJECT(list->data));
+ }
}
break;