Fix incompatible type conversion errors

Review Request #2950 — Created Feb. 10, 2024 and submitted

Information

pidgin/pidgin
default

Reviewers

A recent libxml2 changed its handler function to take a const pointer. It's
safe for us to have it, and them not, but the opposite way causes an implicit
cast warning.

This fixes the build in Fedora 40, which changes several incompatible pointer
conversion warnings into errors.

This is a forward port of /r/2944/

Compiled on Fedora Rawhide.

Summary ID
Fix incompatible type conversion errors
- A recent libxml2 changed its handler function to take a `const` pointer. It's safe for us to have it, and them not, but the opposite way causes an implicit cast warning. - In relatively new GLib (many years now), `g_object_ref` casts its output to match its input. This means we should not be casting to `G_OBJECT`, as that is not the type it expects, and would translate to the output being `GObject` instead of the original type. This fixes the build in Fedora 40, which changes several incompatible pointer conversion warnings into errors. This patch is partially from the Fedora maintainer @yarda, with some corrections by me (to the `g_object_ref` portions.) Testing Done: Compiled in a Rawhide environment with this patch applied. Bugs closed: PIDGIN-17850 Reviewed at https://reviews.imfreedom.org/r/2944/
d3f547b8db4f1998c61148c069aff62a0d7284d2
grim
  1. Nice work, thanks!!

  2. 
      
grim
Review request changed
Status:
Completed