Handling deprecated function with no substitute



Hi,

I'm wrapping new API of gtksourceview since a while (I have it on my
private branch - I'll have to ask if I can commit it later) and I got
a problem described in title - there are two functions already wrapped
in git:

GdkPixbuf* gtk_source_view_get_mark_category_pixbuf(...)
void gtk_source_view_set_mark_category_pixbuf(...)

which are wrapped as:

Glib::RefPtr<Gdk::Pixbuf> SourceView::get_mark_category_pixbuf(...)
void SourceView::set_mark_category_pixbuf(...)

Those functions recently got deprecated, so in my branch I marked
their wrappers also. The setter method now uses internally the
nondeprecated function
(gtk_source_view_set_mark_category_icon_from_pixbuf() ), but there is
no nondeprecated substitute for getter. I filed a bug in gtksourceview
to explain this situation [1] and got a response there - no substitute
and no known use case for the getter anyway.

So now I have two options:

1. Stick to using deprecated C function internally and lower distcheck
nitpicking level to max instead of fatal to avoid compilation failure.
2. Return an empty Glib::RefPtr<Gdk::Pixbuf> - this breaks ABI, but
probably is harmless, because probably nobody is using it.

First one is used for now, but I would like to know if the second is
better approach.

Thanks for response,
Krzesimir

[1] https://bugzilla.gnome.org/show_bug.cgi?id=605764


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]