Ensure that task isn't leaked if it's never started
When the user pressed the Decrypt/Verify button even though the notepad
didn't contain signed or encrypted data then autodetectProtocolFromInput()
throwed and task was leaked. This is now prevented by delegating life-time
management of task to unique_ptr until the task has been started.
The same approach is used for the SignEncryptTask.
(cherry picked from commit d2127f3be85ba46e0e2f47c7f42bfb7d75544a45)
- GnuPG-bug-id: T6702