Bug#883583: gnustep-gui-runtime: GSCUPS bundle crashes applications on CUPS client hosts

2017-12-06 Thread Yavor Doganov
Eric Heintzmann wrote:
> Le 05/12/2017 à 14:38, Yavor Doganov a écrit :
> > Eric, do we want to fix this now or we could delay it for 0.26?
> > Do we want to fix it in stretch?
> >
> Let's wait this week-end for the new -gui release.

OK.

> For stretch, I would like to fix this bug.

It has to be fixed in unstable first for SRMs to consider a pu for
stable, so that would be after the transition.

Do you have a 64-bit stretch machine with GNUstep installed?  Mine is
i386 and I can't reproduce the bug, most probably because the size of
a pointer is the same as the size of an int.

> (I just need to check if I have uploading rights on stable)

I don't think it's possible to restrict upload rights to a particular
suite, so you should have.



Bug#883583: [Debian GNUstep maintainers] Bug#883583: gnustep-gui-runtime: GSCUPS bundle crashes applications on CUPS client hosts

2017-12-06 Thread Eric Heintzmann


Le 05/12/2017 à 14:38, Yavor Doganov a écrit :
> Unfortunately stable is also affected because gnustep-gui/0.25.0-4 was
> rebuilt for the imagemagick transition in January 2017 and was built
> against recent cups which has the function deprecated.
>
> Eric, do we want to fix this now or we could delay it for 0.26?  Do we
> want to fix it in stretch?
>
Let's wait this week-end for the new -gui release.

For stretch, I would like to fix this bug. (I just need to check if I
have uploading rights on stable)



Bug#883583: gnustep-gui-runtime: GSCUPS bundle crashes applications on CUPS client hosts

2017-12-05 Thread Yavor Doganov
Package: gnustep-gui-runtime
Version: 0.25.0-5
Severity: important
Tags: patch fixed-upstream
Control: affects -1 textedit.app

Choosing "Print" from the menu in any app leads to a crash.  TextEdit is
completely unusable -- it crashes on Document->New and Open.  The
attached test program demonstrates the bug:

#0  0x75c4df46 in strlen () at ../sysdeps/x86_64/strlen.S:106
#1  0x76bc766f in +[NSString stringWithCString:] (self=0x77071880 
<_OBJC_Class_NSString>, _cmd=, byteString=0x5597eb5c ) at NSString.m:933
#2  0x7fffd69ee9a2 in +[GSCUPSPrinter printerWithName:] (self=, _cmd=, name=) at GSCUPSPrinter.m:125
#3  0x77893d62 in +[NSPrinter printerWithName:] (self=, 
_cmd=, name=0x55aa9f50) at NSPrinter.m:191
#4  0x7fffd69edd9b in +[GSCUPSPrintInfo defaultPrinter] (self=, _cmd=) at GSCUPSPrintInfo.m:84
#5  0x77898c61 in -[NSPrintInfo initWithDictionary:] 
(self=0x55d8ee30, _cmd=, aDict=0x0) at NSPrintInfo.m:161
#6  0x77897a6b in +[NSPrintInfo sharedPrintInfo] (self=, 
_cmd=) at NSPrintInfo.m:96
#7  0x5637 in main () at bar.m:9

The culprit is cupsGetPPD which is deprecated in recent cups releases
and triggers an implicit function declaration.  With the attached patch
(fixed upstream in commit:c8f9e50) the program correctly prints:

2017-12-05 13:50:39.374 bar[31875:31875] Printer: HL-2030-series

TextEdit + all other apps work with the print panel correctly showing
the default printer.  The bug does not affect hosts which are not cups
clients (in that case a dummy printer is created), hence the non-RC
severity.

Unfortunately stable is also affected because gnustep-gui/0.25.0-4 was
rebuilt for the imagemagick transition in January 2017 and was built
against recent cups which has the function deprecated.

Eric, do we want to fix this now or we could delay it for 0.26?  Do we
want to fix it in stretch?

-- System Information:
Debian Release: buster/sid
  APT prefers unstable-debug
  APT policy: (500, 'unstable-debug'), (500, 'testing-debug'), (500, 
'unstable'), (500, 'testing')
Architecture: amd64 (x86_64)
Foreign Architectures: i386

Kernel: Linux 4.14.0-1-amd64 (SMP w/2 CPU cores)
Locale: LANG=bg_BG.utf8, LC_CTYPE=bg_BG.utf8 (charmap=UTF-8), 
LANGUAGE=bg_BG.utf8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Init: systemd (via /run/systemd/system)

Versions of packages gnustep-gui-runtime depends on:
ii  gnustep-base-runtime   1.25.0-2
ii  gnustep-gui-common 0.25.0-5
ii  libao4 1.2.2-1
ii  libaspell150.60.7~20110707-4
ii  libc6  2.25-3
ii  libcups2   2.2.6-2
ii  libflite1  2.0.0-release-4
ii  libgcc11:7.2.0-16
ii  libgif75.1.4-1
ii  libgnustep-base1.251.25.0-2
ii  libgnustep-gui0.25 0.25.0-5
ii  libicu57   57.1-8
ii  libjpeg62-turbo1:1.5.2-2
ii  libmagickcore-6.q16-3  8:6.9.7.4+dfsg-16
ii  libobjc4   7.2.0-16
ii  libpng16-161.6.34-1
ii  libsndfile11.0.28-4
ii  libtiff5   4.0.8-6
ii  zlib1g 1:1.2.8.dfsg-5

gnustep-gui-runtime recommends no packages.

gnustep-gui-runtime suggests no packages.

-- no debconf information
#import 

int
main (void)
{
  CREATE_AUTORELEASE_POOL (pool);

  [NSApplication sharedApplication];
  NSPrinter *printer = [[NSPrintInfo sharedPrintInfo] printer];
  NSLog (@"Printer: %@", [printer name]);

  RELEASE (pool);
  exit (EXIT_SUCCESS);
}
--- gnustep-gui-0.25.0.orig/Printing/GSCUPS/GSCUPSPrinter.m
+++ gnustep-gui-0.25.0/Printing/GSCUPS/GSCUPSPrinter.m
@@ -48,7 +48,7 @@
 #import "GNUstepGUI/GSPrinting.h"
 #import "GSCUPSPrinter.h"
 
-#include 
+#include 
 
 
 NSString *GSCUPSDummyPrinterName = @"GSCUPSDummyPrinter";