Commit Graph

5 Commits (network-device-discovery-missing-evaluation)

Author SHA1 Message Date
Michael Zanetti 3c7e05501e Fix a potential info->aborted() call after the plugin called info->finish()
It can happen that a plugin calls finish() in a slot which normally would be dispatched before the timeout
but due to high system load the slot is invoked only after the timeout. This in turn would cause Qt to also queue up
this timeout slot and by the time the system processes slots, the plugin comes in first and we'd fire an aborted()
signal in the plugin after it called finish(), potentially badly breaking the plugin as a plugin developer would not
expect this to happen. So we'll have to verify here that the plugin did not finish() by now before aborting.
2022-08-10 23:34:58 +02:00
Michael Zanetti 7633cfe9fa Check Info objects for finished abert aborting them
This gives plugin developers a chance to finish() an info on their
own in an aborted() handler and set a custom error code and
displayMessage without causing a "finishing an already finished object"
warning.
2022-08-04 18:34:21 +02:00
Michael Zanetti a11a219bbf Prevent multiple finish calls on API objects
Bad plugin implementations might call finish() more than once
which is not expected by receivers of the finished() signal and
may cause weird side effects.
2020-12-14 23:38:17 +01:00
Michael Zanetti d362ce913e Add a displayMessage for errors to browsing operations 2020-03-25 00:22:34 +01:00
Michael Zanetti 3e425fc55b Rename devices to integrations/things 2020-03-02 13:40:26 +01:00