EULA page only shown for at most one EULA
Commit 75f43d3a (part of Bugzilla bug #794166) changed the signature of the
prepare_page_func for each page. Previously, the signature was
void (*PreparePage) (GisDriver *driver) and each page implementation was responsible for calling
gis_driver_add_page() as many times as necessary. After that commit, the signature became
GisPage *(*PreparePage) (GisDriver *driver) and, if it returns non-
This is fine for the vast majority of pages which are shown 0 or 1 times, but
gis-eula-pages.c previously created & appended one
GisEulaPage for each file in
$PKGDATADIR/eulas. Now it creates them all, leaks all but the last one, and returns that one. The effect is that only 1 arbitrarily-selected EULA will be displayed.
@mcatanzaro @matthiasc do you happen to know which distro(s) use the EULA page? For better or for worse, Endless has a downstream implementation of a similar idea; and I can't find any EULAs on a Fedora system.