Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 19 Apr 2014 18:00:42 GMT
From:      Jason Bacon <jwbacon@tds.net>
To:        freebsd-gnats-submit@FreeBSD.org
Subject:   misc/188799: print/xfce4-print does not build when CUPS support is enaled
Message-ID:  <201404191800.s3JI0gAG063484@cgiserv.freebsd.org>
Resent-Message-ID: <201404191810.s3JIA02i023864@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help

>Number:         188799
>Category:       misc
>Synopsis:       print/xfce4-print does not build when CUPS support is enaled
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    freebsd-bugs
>State:          open
>Quarter:        
>Keywords:       
>Date-Required:
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Sat Apr 19 18:10:00 UTC 2014
>Closed-Date:
>Last-Modified:
>Originator:     Jason Bacon
>Release:        10.0-RELEASE
>Organization:
Acadix Consulting, LLC
>Environment:
FreeBSD freebie.acadix.biz 10.0-RELEASE FreeBSD 10.0-RELEASE #0 r260789: Thu Jan 16 22:34:59 UTC 2014     root@snap.freebsd.org:/usr/obj/usr/src/sys/GENERIC  amd64
>Description:

Build fails due to direct use of ipp_t fields in cups.c, which is no longer supported.

>How-To-Repeat:

make config
select CUPS
make
>Fix:

cups.c needs to be edited to use accessor functions instead of referencing ipp_t fields directly.

Partial patch to demonstrate the approach:

--- printing-systems/cups/cups.c.orig   2014-04-19 12:20:18.000000000 -0500
+++ printing-systems/cups/cups.c        2014-04-19 12:27:02.000000000 -0500
@@ -133,8 +133,10 @@
 
   language = cupsLangDefault ();
   request = ippNew ();
-  request->request.op.operation_id = operation_id;
-  request->request.op.request_id = 1;
+  //request->request.op.operation_id = operation_id;
+  ippSetOperation(request,operation_id);
+  //request->request.op.request_id = 1;
+  ippSetRequestId(request,1);
 
   ippAddString (request, IPP_TAG_OPERATION, IPP_TAG_CHARSET, "attributes-charset", NULL, "utf-8");
 
@@ -242,7 +244,7 @@
 
       if (!request)
         continue;
-      if (request->state == IPP_ERROR || request->state == IPP_IDLE) {
+      if (ippGetState(request) == IPP_ERROR || request->state == IPP_IDLE) {
         ippDelete (request);
         continue;
       }

Not all the fixes appear to be so straightforward and I don't have time to work on it at the moment.

>Release-Note:
>Audit-Trail:
>Unformatted:



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201404191800.s3JI0gAG063484>