All checks were successful
CI Code / Check spelling (pull_request) Successful in 17s
CI Code / Check coding style (pull_request) Successful in 32s
CI Code / Code Coverage (pull_request) Successful in 3m41s
CI Code / Linux (debian) (pull_request) Successful in 5m15s
CI Code / Linux (ubuntu) (pull_request) Successful in 5m21s
CI Code / Linux (arch) (pull_request) Successful in 13m55s
CI Code / Check spelling (push) Successful in 1m24s
CI Code / Check coding style (push) Successful in 1m38s
CI Code / Linux (arch) (push) Successful in 7m14s
CI Code / Linux (debian) (push) Successful in 8m27s
CI Code / Linux (ubuntu) (push) Successful in 8m29s
CI Code / Code Coverage (push) Successful in 7m50s
Block all three code paths in message_send_chat_pgp that previously fell back to sending unencrypted messages: encryption failure, missing PGP key, and missing LibGPGME. Each path now shows a specific error in the chat window and returns NULL so the caller skips logging and display. Also replace the generic cons_show for OX signcrypt failure with a win_println on the current window, ensuring the user sees the error even when the chat window is not focused. Improve p_gpg_encrypt error reporting by adding a gchar** err out-parameter. Each failure path now sets a descriptive message (e.g. missing recipient key, missing sender key, GPGME context failure, encryption failure) so the caller can display the exact reason to the user. Fix a memory leak: gpgme_key_unref(receiver_key) was missing from the sender_key failure path.