The problem here is that the CPDB support for the GTK print dialog was
created in an early stage of the formation of the second-generation API
of CPDB. Some functions still had an instance name parameter and this
parameter got dropped later. So in the GTK code the calls have to get
corrected, removing the instance name.

The patch should be proposed as merge request to GTK upstream and
applied as distro patch for Plucky.

Here is the commit in CPDB which did the change of dropping the instance
name parameter:

https://github.com/OpenPrinting/cpdb-
libs/commit/fb2686ba8f2fc60dc95ae0e2421e386922bf232e

So it is just removing the instance name of the calls of these
functions.

** Changed in: cpdb-libs (Ubuntu)
       Status: Triaged => Invalid

-- 
You received this bug notification because you are a member of Desktop
Packages, which is subscribed to gtk4 in Ubuntu.
https://bugs.launchpad.net/bugs/2100307

Title:
  gtk4 fails to build with cpdb-libs 2.0~b7

Status in cpdb-libs package in Ubuntu:
  Invalid
Status in fragments package in Ubuntu:
  New
Status in gtk4 package in Ubuntu:
  Triaged
Status in warp package in Ubuntu:
  New

Bug description:
  gtk4 fails to build after the upload of cpdb-libs 2.0~b7-0ubuntu1

  Full build log
  =============
  https://launchpad.net/~jbicha/+archive/ubuntu/arch/+build/30363110

  
  Build log excerpt
  =================

  ../../../modules/printbackends/gtkprintbackendcpdb.c: In function 
‘gtk_print_backend_cpdb_init’:
  ../../../modules/printbackends/gtkprintbackendcpdb.c:291:55: error: passing 
argument 1 of ‘cpdbGetNewFrontendObj’ from incompatible pointer type 
[-Wincompatible-pointer-types]
    291 |   backend_cpdb->frontend_obj = cpdbGetNewFrontendObj (instance_name,
        |                                                       ^~~~~~~~~~~~~
        |                                                       |
        |                                                       char *
  In file included from /usr/include/cpdb/frontend.h:4,
                   from ../../../modules/printbackends/gtkprintbackendcpdb.c:22:
  /usr/include/cpdb/cpdb-frontend.h:102:66: note: expected 
‘cpdb_printer_callback’ {aka ‘void (*)(struct cpdb_frontend_obj_s *, struct 
cpdb_printer_obj_s *, enum cpdb_printer_update_e)’} but argument is of type 
‘char *’
    102 | cpdb_frontend_obj_t *cpdbGetNewFrontendObj(cpdb_printer_callback 
printer_cb);
        |                                            
~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~
  ../../../modules/printbackends/gtkprintbackendcpdb.c:291:32: error: too many 
arguments to function ‘cpdbGetNewFrontendObj’
    291 |   backend_cpdb->frontend_obj = cpdbGetNewFrontendObj (instance_name,
        |                                ^~~~~~~~~~~~~~~~~~~~~
  /usr/include/cpdb/cpdb-frontend.h:102:22: note: declared here
    102 | cpdb_frontend_obj_t *cpdbGetNewFrontendObj(cpdb_printer_callback 
printer_cb);
        |                      ^~~~~~~~~~~~~~~~~~~~~

  Other Info
  =========
  I believe this needs to be fixed in cpdb-libs but I'm adding other affected 
packages to show on the excuses report. Some packages are indirectly affected 
because they depend on gtk4 being updated but we can't update gtk4.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/cpdb-libs/+bug/2100307/+subscriptions


-- 
Mailing list: https://launchpad.net/~desktop-packages
Post to     : [email protected]
Unsubscribe : https://launchpad.net/~desktop-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to