Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package cups-filters for openSUSE:Factory checked in at 2021-04-24 23:07:04 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/cups-filters (Old) and /work/SRC/openSUSE:Factory/.cups-filters.new.12324 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "cups-filters" Sat Apr 24 23:07:04 2021 rev:48 rq:887558 version:1.27.2 Changes: -------- --- /work/SRC/openSUSE:Factory/cups-filters/cups-filters.changes 2020-11-13 18:53:59.461770362 +0100 +++ /work/SRC/openSUSE:Factory/.cups-filters.new.12324/cups-filters.changes 2021-04-24 23:07:22.291243643 +0200 @@ -1,0 +2,9 @@ +Thu Apr 15 09:51:25 CEST 2021 - jsm...@suse.de + +- fix_upstream_issue348.patch fixes + https://github.com/OpenPrinting/cups-filters/issues/348 + foomatic-rip segfaults with 'job-sheets=none,none' + but works with 'job-sheets=none' + (bsc#1182893) + +------------------------------------------------------------------- New: ---- fix_upstream_issue348.patch ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ cups-filters.spec ++++++ --- /var/tmp/diff_new_pack.uZc1jU/_old 2021-04-24 23:07:22.811244379 +0200 +++ /var/tmp/diff_new_pack.uZc1jU/_new 2021-04-24 23:07:22.815244384 +0200 @@ -1,7 +1,7 @@ # # spec file for package cups-filters # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -47,6 +47,12 @@ # and then removed the changes of the NEWS file from that patch because # the NEWS changes do not apply on the sources of the pristine 1.20.0 release: # Patch100 fix_upstream_bug_1421.patch is fixed in the cups-filters 1.20.1 sources. +# Patch102 fix_upstream_issue348.patch fixes +# https://github.com/OpenPrinting/cups-filters/issues/348 +# "foomatic-rip segfaults with 'job-sheets=none,none' but works with 'job-sheets=none'" +# according to +# https://github.com/OpenPrinting/cups-filters/commit/67c2128219ae0ba24917cb29bf0da0bddfd6864a +Patch102: fix_upstream_issue348.patch # Since cups-filters version 1.0.42 foomatic-rip is also provided by cups-filters. # The foomatic-rip version that is provided by cups-filters is not specified in the cups-filters sources # but on http://www.openprinting.org/download/foomatic/ the foomatic-filters-4.0-current.tar.gz @@ -217,7 +223,12 @@ %prep %setup -q -%autopatch -p1 +# Patch102 fix_upstream_issue348.patch fixes +# https://github.com/OpenPrinting/cups-filters/issues/348 +# "foomatic-rip segfaults with 'job-sheets=none,none' but works with 'job-sheets=none'" +# according to +# https://github.com/OpenPrinting/cups-filters/commit/67c2128219ae0ba24917cb29bf0da0bddfd6864a +%patch102 %build # Just do what is described in the upstream INSTALL file ++++++ fix_upstream_issue348.patch ++++++ --- filter/foomatic-rip/foomaticrip.c.orig 2019-06-06 15:17:11.000000000 +0200 +++ filter/foomatic-rip/foomaticrip.c 2021-04-15 09:42:20.212339673 +0200 @@ -241,8 +241,8 @@ char * extract_next_option(char *str, ch if (!str) return NULL; - /* skip whitespace and commas */ - while (*p && (isspace(*p) || *p == ',')) p++; + /* skip whitespace */ + while (*p && isspace(*p)) p++; if (!*p) return NULL; @@ -267,7 +267,7 @@ char * extract_next_option(char *str, ch } else { *key = p; - while (*p && *p != ':' && *p != '=' && *p != ' ') p++; + while (*p && *p != ':' && *p != '=' && !isspace(*p)) p++; } if (*p != ':' && *p != '=') { /* no value for this option */ @@ -293,7 +293,7 @@ char * extract_next_option(char *str, ch } else { *value = p; - while (*p && *p != ' ' && *p != ',') p++; + while (*p && !isspace(*p)) p++; if (*p == '\0') return NULL; *p = '\0'; --- filter/foomatic-rip/options.c.orig 2019-06-06 15:17:11.000000000 +0200 +++ filter/foomatic-rip/options.c 2021-04-15 09:45:57.495237990 +0200 @@ -956,6 +956,10 @@ int option_get_command(dstr_t *cmd, opti return 1; } + /* Consider "None" as "not set" for enumerated choice options */ + if (opt->type == TYPE_ENUM && !strcasecmp(valstr, "None")) + return 0; + /* Consider "None" as the empty string for string and password options */ if ((opt->type == TYPE_STRING || opt->type == TYPE_PASSWORD) && !strcasecmp(valstr, "None"))