User callback gets const timer& arg instead of ptr
This commit is contained in:
		| @@ -9,12 +9,12 @@ std::mutex sc::timer::mutex; | |||||||
|  |  | ||||||
| void sc::timer::callback(union sigval sv) { | void sc::timer::callback(union sigval sv) { | ||||||
|     timer* self = reinterpret_cast<timer*>(sv.sival_ptr); |     timer* self = reinterpret_cast<timer*>(sv.sival_ptr); | ||||||
|     self->_expired_func(self); |     self->_expired_func(*self); | ||||||
| } | } | ||||||
|  |  | ||||||
| sc::timer::timer(double time, | sc::timer::timer(double time, | ||||||
|                  bool repeat, |                  bool repeat, | ||||||
|                  void(*expired_func)(timer*), |                  void(*expired_func)(const timer&), | ||||||
|                  void* context) |                  void* context) | ||||||
|     : _id {}, _time {time}, _repeat {repeat}, |     : _id {}, _time {time}, _repeat {repeat}, | ||||||
|       _expired_func {expired_func}, _context {context} |       _expired_func {expired_func}, _context {context} | ||||||
|   | |||||||
| @@ -14,7 +14,7 @@ namespace sc { | |||||||
|         uint64_t _id {}; |         uint64_t _id {}; | ||||||
|         double _time {}; |         double _time {}; | ||||||
|         bool _repeat {}; |         bool _repeat {}; | ||||||
|         void (*_expired_func)(timer* self); |         void (*_expired_func)(const timer& self); | ||||||
|         void* _context {}; |         void* _context {}; | ||||||
|  |  | ||||||
|         static void callback(union sigval); |         static void callback(union sigval); | ||||||
| @@ -22,7 +22,7 @@ namespace sc { | |||||||
|         public: |         public: | ||||||
|             timer(double time, |             timer(double time, | ||||||
|                   bool repeat, |                   bool repeat, | ||||||
|                   void(*expired_func)(timer*), |                   void(*expired_func)(const timer&), | ||||||
|                   void* context = nullptr); |                   void* context = nullptr); | ||||||
|             ~timer(); |             ~timer(); | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user