Robustify LinkAction memory handling
The unit test
formattest that is part of the Okular test suite leaks several
LinkAction objects. This merge request fixes these leaks by reworking the memory handling of
LinkAction objects. Wherever appropriate, it uses
std::unique_ptr for these objects. This makes the pointer ownership explicit in the code, and it fixes the leaks.