[bug #42717] Crash in -[NSBox(Private) calcSizesAllowingNegative:]

2014-07-23 Thread Fred Kiefer
Update of bug #42717 (project gnustep):

  Status: In Progress = Ready For Test 
 Open/Closed:Open = In Test

___

Follow-up Comment #13:

You are correct, calling this a compiler bug was incorrect. It is just changed
behaviour in a corner case.
The method in this case was supposed to return an NSSize value, that is two
CGFloats and I think even on x86 this should be possible in registers, which
are easlily set to zero.

I still think it wasn't a great idea of the gcc people to change the
optimisation in this case, but GNUstep code should take care to handle it
correctly anayway, as we want to support Sparc and other platforms as well.


What needs to be done now is to test as much of GNUstep code on x86 wiht gcc
4.9 as possible to avoid a massive issue when this compiler gets into more
widespread use.

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?42717

___
  Nachricht gesendet von/durch Savannah
  http://savannah.gnu.org/


___
Bug-gnustep mailing list
Bug-gnustep@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-gnustep


[bug #42782] Crash when loading a gorm file

2014-07-23 Thread Fred Kiefer
Update of bug #42782 (project gnustep):

Category:  Gui/AppKit = Gorm   
  Status:None = In Progress

___

Follow-up Comment #7:

I am no expert on Gorm, but this looks very strange to me. If I understand the
code in GormWrapperLoader loadFileWrapper:withDocument:] correctly this tries
to load everything in the .gorm directory that looks like an image with
GormImage. Now why would it try to load the data.info file as an image?
Could you please print out the value of [NSImage imageFileTypes] and if this
includes info try to find out where this comes from?

I changed the category of this bug to Gorm to bring it to the attention of
Gregory. We might need to change it back again when we find out more.

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?42782

___
  Nachricht gesendet von/durch Savannah
  http://savannah.gnu.org/


___
Bug-gnustep mailing list
Bug-gnustep@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-gnustep


[bug #42782] Crash when loading a gorm file

2014-07-23 Thread Yavor Doganov
Follow-up Comment #8, bug #42782 (project gnustep):

Yes, the info type is there and the array is quite large:

(gdb) po [NSImage imageFileTypes]
(tiff, tif, pnm, ppm, gif, jpeg, jpg, png, icns, 3fr, a, aai, ai, art, arw,
avi, avs, b, bgr, bgra, bie, bmp, bmp2, bmp3, brf, c, cal, cals, canvas,
caption, cin, cip, clip, cmyk, cmyka, cr2, crw, cur, cut, dcm, dcr, dcx, dds,
dfont, djvu, dng, dot, dpx, epdf, epi, eps, eps2, eps3, epsf, epsi, ept, ept2,
ept3, erf, exr, fax, fits, fractal, fts, g, g3, gif87, gradient, gray, group4,
hald, hdr, histogram, hrz, htm, html, icb, ico, icon, info, inline, ipl,
isobrl, j2c, j2k, jbg, jbig, jng, jp2, jpc, jpx, k, k25, kdc, label, m, m2v,
m4v, mac, map, mat, matte, mef, miff, mng, mono, mov, mp4, mpc, mpeg, mpg,
mrw, msl, msvg, mtv, mvg, nef, nrw, null, o, orf, otb, otf, pal, palm, pam,
pango, pattern, pbm, pcd, pcds, pcl, pct, pcx, pdb, pdf, pdfa, pef, pes, pfa,
pfb, pfm, pgm, pgx, picon, pict, pix, pjpeg, plasma, png24, png32, png8,
preview, ps, ps2, ps3, psb, psd, ptif, pwp, r, radial-gradient, raf, ras,
rgb, rgba, rgbo, rla, rle, scr, sct, sfw, sgi, shtml, sr2, srf, stegano, sun,
svg, svgz, text, tga, thumbnail, tiff64, tile, tim, ttc, ttf, txt, ubrl, uil,
uyvy, vda, vicar, vid, viff, vst, wbmp, wmf, wmv, wmz, wpg, x, x3f, xbm, xc,
xcf, xpm, xps, xv, xwd, y, ycbcr, ycbcra, yuv)


Apparently these extra types come from GSImageMagickImageRep; I get them on
amd64 too.

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?42782

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
Bug-gnustep mailing list
Bug-gnustep@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-gnustep


[bug #42782] Crash when loading a gorm file

2014-07-23 Thread Yavor Doganov
Follow-up Comment #9, bug #42782 (project gnustep):

FYI, the bug is reproducible if I rebuild GUI with --disable-imagemagick (the
image file types are just tiff, tif, pnm, ppm, gif, jpeg, jpg, png, icns in
that case).  The gdb backtrace is meaningless again and the valgrind output
is:

==8543== Command: Gorm ./English.lproj/Document.gorm/
==8543== 
vex x86-IR: unhandled instruction bytes: 0x6D 0x7 0x8 0xC7
==8543== Invalid write of size 1
==8543==at 0xBEB7BF4A: ???
==8543==  Address 0x75b99204 is not stack'd, malloc'd or (recently) free'd
==8543== 
==8543== 
==8543== Process terminating with default action of signal 11 (SIGSEGV)
==8543==  Access not within mapped region at address 0x75B99204
==8543==at 0xBEB7BF4A: ???


___

Reply to this item at:

  http://savannah.gnu.org/bugs/?42782

___
  Message sent via/by Savannah
  http://savannah.gnu.org/


___
Bug-gnustep mailing list
Bug-gnustep@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-gnustep


[bug #42782] Crash when loading a gorm file

2014-07-23 Thread Fred Kiefer
Follow-up Comment #10, bug #42782 (project gnustep):

I would expect that this new crash comes from a different place then before.
The question is how we could find out where, given that gdb and valgrind don't
give meaningful results.

It would be great, if you had a bit more information.

BTW, did you update Gorm to get the change I made there?

___

Reply to this item at:

  http://savannah.gnu.org/bugs/?42782

___
  Nachricht gesendet von/durch Savannah
  http://savannah.gnu.org/


___
Bug-gnustep mailing list
Bug-gnustep@gnu.org
https://lists.gnu.org/mailman/listinfo/bug-gnustep


[bug #42782] Crash when loading a gorm file

2014-07-23 Thread Yavor Doganov
Follow-up Comment #11, bug #42782 (project gnustep):

Yes, I used Gorm 1.2.20 + your latest changes.  Most probably it is not an
issue with Gorm at all.

I'd really wish to provide more information...  Perhaps I could put
breakpoints at some places and step through from there, this would at least
give you some clue, as blurry as that may be.  As Gorm is a fairly complex
program, I'm trying Vindaloo first.  I already figured out that Vindaloo
crashes in -[Document -makeWindowControllers], right after [self
addWindowController: ctrl]; ctrl is initalized properly with
-initWithWindowNibName: with [self windowNibName] as argument (which returns
@Document).  Stepping from there:

(gdb) n
-[NSDocumentController openDocumentWithContentsOfURL:display:error:] (
self=0x840c0a8, _cmd=0xb7f73648 _OBJC_SELECTOR_TABLE+520, url=0x840ae20,

flag=1 ' 01', err=0xb4cc) at NSDocumentController.m:708
708   [self noteNewRecentDocument: document];
(gdb) n
710   if (flag  [self shouldCreateUI])
(gdb) n
712   [document showWindows];
(gdb) 

Program received signal SIGSEGV, Segmentation fault.
0xbfffef8a in ?? ()


Putting breakpoints further:

Breakpoint 2, -[NSDocument showWindows] (self=0x82a1268, 
_cmd=0xb7edd828 _OBJC_SELECTOR_TABLE+488) at NSDocument.m:415
415 {
(gdb) po _window_controllers 
(Controller: 0x83e54f8)
(gdb) n
417   withObject: self];
(gdb) n
416   [_window_controllers makeObjectsPerformSelector: 
@selector(showWindow:)
(gdb) n
417   withObject: self];
(gdb) n

Program received signal SIGSEGV, Segmentation fault.
0xbfffef8a in ?? ()

Breakpoint 3, -[NSWindowController showWindow:] (
self=0xb7edb1b8 _OBJC_SELECTOR_TABLE+504, 
_cmd=0xb7edb1b8 _OBJC_SELECTOR_TABLE+504, sender=0x81fdb90)
at NSWindowController.m:394
394 {
(gdb) n
395   NSWindow *window = [self window];
(gdb) po self
Controller: 0x83e73e8
(gdb) po [self window]

Program received signal SIGSEGV, Segmentation fault.
0xbfffef6a in ?? ()

Breakpoint 4, -[NSWindowController window] (self=0x83ea168, 
_cmd=0xb7f680f0 _OBJC_SELECTOR_TABLE+176) at NSWindowController.m:297
297 {
(gdb) n
298   if (_window == nil  ![self isWindowLoaded])
(gdb) n
308   [self windowWillLoad];
(gdb) p _window
$5 = (struct NSWindow *) 0x0
(gdb) n
309   if (_owner != self 
(gdb) po self
Controller: 0x83ea168
(gdb) po _owner
Controller: 0x83ea168
(gdb) n
315   [self loadWindow];
(gdb) n

Program received signal SIGSEGV, Segmentation fault.

Breakpoint 5, -[NSWindowController loadWindow] (self=0x83e5340, 
_cmd=0xb7f68170 _OBJC_SELECTOR_TABLE+304) at NSWindowController.m:476
476 {
(gdb) n
479   if ([self isWindowLoaded]) 
(gdb) n
484   table = [NSDictionary dictionaryWithObject: _owner forKey: 
NSNibOwner];
(gdb) po table
value has been optimized out
(gdb) n
485   if ([NSBundle loadNibFile: [self windowNibPath]
(gdb) po self
Controller: 0x83e5340
(gdb) po [self windowNibPath]
/home/yavor/scratch/viewpdf.app-0.2dfsg1/ViewPDF.app/Resources/English.lproj/Document.gorm
(gdb) po _owner
Controller: 0x83e5340
(gdb) n
487 withZone: [_owner zone]])
(gdb) n
485   if ([NSBundle loadNibFile: [self windowNibPath]
(gdb) n
487 withZone: [_owner zone]])
(gdb) n

Program received signal SIGSEGV, Segmentation fault.
0xbfffef8a in ?? ()

Breakpoint 6, +[NSBundle(NSBundleAdditions)
loadNibFile:externalNameTable:withZone:] (self=0xb79d43e0
_OBJC_Class_NSBundle, 
_cmd=0xb7f68250 _OBJC_SELECTOR_TABLE+528, fileName=0x8268c18, 
context=0x8267fe0, zone=0xb7a3f0c0 default_zone)
at NSBundleAdditions.m:234
234 {
(gdb) n
235   NSNib *nib = [[NSNib alloc] initWithContentsOfURL: [NSURL
fileURLWithPath: fileName]];
(gdb) po fileName
/home/yavor/scratch/viewpdf.app-0.2dfsg1/ViewPDF.app/Resources/English.lproj/Document.gorm
(gdb) po [NSURL fileURLWithPath: fileName]
file://localhost/home/yavor/scratch/viewpdf.app-0.2dfsg1/ViewPDF.app/Resources/English.lproj/Document.gorm/
(gdb) po context
{NSOwner = Controller: 0x83e5568; }
(gdb) n
237 withZone: zone];
(gdb) po nib
value has been optimized out
(gdb) n
235   NSNib *nib = [[NSNib alloc] initWithContentsOfURL: [NSURL
fileURLWithPath: fileName]];
(gdb) n
239   RELEASE(nib);
(gdb) n
235   NSNib *nib = [[NSNib alloc] initWithContentsOfURL: [NSURL
fileURLWithPath: fileName]];
(gdb) n
237 withZone: zone];
(gdb) n
236   BOOL loaded = [nib instantiateNibWithExternalNameTable: context
(gdb) n

Program received signal SIGSEGV, Segmentation fault.
0xbfffef8a in ?? ()

Breakpoint 7, -[NSNib instantiateNibWithExternalNameTable:withZone:] (
self=0x8411090, _cmd=0xb7ebc0d0 _OBJC_SELECTOR_TABLE+208, 
externalNameTable=0x8410c28, zone=0xb7a3f0c0 default_zone) at
NSNib.m:152
152