summaryrefslogtreecommitdiff
path: root/core
diff options
context:
space:
mode:
authorJ08nY <johny@neuromancer.sk>2016-06-21 13:07:50 +0200
committerJ08nY <johny@neuromancer.sk>2016-06-21 13:07:50 +0200
commit621b8d132431506b4b686a77a72f240095b6b1c7 (patch)
tree5dc343fc635ba874eaf9eb9aab610fe3d02e931d /core
parent67a29bab74837947fc05a889e573efd86457a88e (diff)
Object: get_signal_connection_list fixed
now returns only the connections for the signal argument, as specified fixes #5329
Diffstat (limited to 'core')
-rw-r--r--core/object.cpp18
1 files changed, 10 insertions, 8 deletions
diff --git a/core/object.cpp b/core/object.cpp
index 34d6d8487a..99d4a1f46a 100644
--- a/core/object.cpp
+++ b/core/object.cpp
@@ -1320,14 +1320,16 @@ Array Object::_get_signal_connection_list(const String& p_signal) const{
for (List<Connection>::Element *E=conns.front();E;E=E->next()) {
Connection &c=E->get();
- Dictionary rc;
- rc["signal"]=c.signal;
- rc["method"]=c.method;
- rc["source"]=c.source;
- rc["target"]=c.target;
- rc["binds"]=c.binds;
- rc["flags"]=c.flags;
- ret.push_back(rc);
+ if (c.signal == p_signal){
+ Dictionary rc;
+ rc["signal"]=c.signal;
+ rc["method"]=c.method;
+ rc["source"]=c.source;
+ rc["target"]=c.target;
+ rc["binds"]=c.binds;
+ rc["flags"]=c.flags;
+ ret.push_back(rc);
+ }
}
return ret;