diff options
author | Gard Spreemann <gspreemann@gmail.com> | 2019-01-25 11:37:59 +0100 |
---|---|---|
committer | Gard Spreemann <gspreemann@gmail.com> | 2019-01-25 11:37:59 +0100 |
commit | 3a5e53720d7c648f98fdfb8bbb8091cb7f17d869 (patch) | |
tree | 98a2d97075861094f4c9fcea244222ce2649198c /src/data/edge.cpp | |
parent | 8c5a101a2009a9f5f1e3976f51f23e0f7da109aa (diff) | |
parent | 539bc84f39ffaff04c99b7d10aac60275588dc79 (diff) |
Merge tag 'v2.1.3' into debian/sid
Diffstat (limited to 'src/data/edge.cpp')
-rw-r--r-- | src/data/edge.cpp | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/src/data/edge.cpp b/src/data/edge.cpp index 4803547..0bd49e8 100644 --- a/src/data/edge.cpp +++ b/src/data/edge.cpp @@ -57,8 +57,14 @@ Edge::Edge(Node *s, Node *t, QObject *parent) : Edge *Edge::copy(QMap<Node*,Node*> *nodeTable)
{
Edge *e;
- if (nodeTable == nullptr) e = new Edge(_source, _target);
- else e = new Edge(nodeTable->value(_source), nodeTable->value(_target));
+ if (nodeTable == nullptr) {
+ e = new Edge(_source, _target);
+ } else {
+ Node *s = nodeTable->value(_source);
+ Node *t = nodeTable->value(_target);
+ e = new Edge((s != nullptr) ? s : _source,
+ (t != nullptr) ? t : _target);
+ }
e->setData(_data->copy());
e->setBasicBendMode(_basicBendMode);
e->setBend(_bend);
|