Core/Signal: Fix incorrect forwarding

Former-commit-id: 4d437e98e89dcc52f44259371e18589a72fdbd27
This commit is contained in:
Lynix
2015-06-07 01:31:37 +02:00
parent 1a0057313c
commit d43126eae5
3 changed files with 7 additions and 32 deletions

View File

@@ -31,7 +31,7 @@ class NzSignal
template<typename O> Connection&& Connect(O& object, void (O::*method)(Args...));
template<typename O> Connection&& Connect(O* object, void (O::*method)(Args...));
void operator()(Args&&... args);
void operator()(Args... args);
NzSignal& operator=(const NzSignal&) = delete;
NzSignal& operator=(NzSignal&& signal);

View File

@@ -59,10 +59,10 @@ typename NzSignal<Args...>::Connection&& NzSignal<Args...>::Connect(O* object, v
}
template<typename... Args>
void NzSignal<Args...>::operator()(Args&&... args)
void NzSignal<Args...>::operator()(Args... args)
{
for (const SlotPtr& slot : m_slots)
slot->callback(std::forward<Args>(args)...);
slot->callback(args...);
}
template<typename... Args>