gnustep-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Cairo backend seems broken - mainScreen visibleFrame has no size


From: Sergii Stoian
Subject: Re: Cairo backend seems broken - mainScreen visibleFrame has no size
Date: Fri, 31 Jan 2020 19:04:53 +0200

Hi,

On Fri, Jan 31, 2020 at 6:08 PM Riccardo Mottola <address@hidden> wrote:
Hi!

I updated my laptop (NetBSD / amd64 / gcc compiler and runtime) and now
all GUI apps crash on startup:


Starting program: /Local/Tools/Ink
Xlib:  extension "MIT-SHM" missing on display "localhost:11.0".
2020-01-31 14:58:52.354 Ink[14930:130845475800848] styleoffsets ...
guessing offsets

Program received signal SIGSEGV, Segmentation fault.
0x00007700c986b6b7 in -[XGServer(WindowOps) boundsForScreen:]
(self=0x7700d4c87010,
     _cmd=0x7700c9ab4150 <_OBJC_SELECTOR_TABLE+1808>, screen=0) at
XGServerWindow.m:4528
4528      if (output_info->crtc)
(gdb) bt
#0  0x00007700c986b6b7 in -[XGServer(WindowOps) boundsForScreen:]
(self=0x7700d4c87010,
     _cmd=0x7700c9ab4150 <_OBJC_SELECTOR_TABLE+1808>, screen=0) at
XGServerWindow.m:4528
#1  0x00007700c98600d2 in -[XGServer(WindowOps) _OSFrameToXFrame:for:]
(self=0x7700d4c87010,
     _cmd=0x7700c9ab4430 <_OBJC_SELECTOR_TABLE+2544>, o=...,
window=0x7700d6135c80) at XGServerWindow.m:512
#2  0x00007700c986423d in -[XGServer(WindowOps) window::::]
(self=0x7700d4c87010,
     _cmd=0x7700c9ab4390 <_OBJC_SELECTOR_TABLE+2384>, frame=..., type=2,
style=64, screen=0) at XGServerWindow.m:1917
#3  0x00007700c9863498 in -[XGServer(WindowOps) _setupRootWindow]
(self=0x7700d4c87010,
     _cmd=0x7700c9ab0030 <_OBJC_SELECTOR_TABLE+400>) at
XGServerWindow.m:1614
#4  0x00007700c98560fb in -[XGServer _initXContext]
(self=0x7700d4c87010, _cmd=0x7700c9ab0080 <_OBJC_SELECTOR_TABLE+480>)
     at XGServer.m:469
#5  0x00007700c9856278 in -[XGServer initWithAttributes:]
(self=0x7700d4c87010,
     _cmd=0x7700d60b4550 <_OBJC_SELECTOR_TABLE+144>, info=0x0) at
XGServer.m:487
#6  0x00007700d5c2db71 in +[GSDisplayServer serverWithAttributes:] ()
    from /System/Library/Libraries/libgnustep-gui.so.0.28.0
#7  0x00007700d5a31715 in -[NSApplication _init] () from
/System/Library/Libraries/libgnustep-gui.so.0.28.0
#8  0x00007700d50f87d1 in -[NSObject performSelector:withObject:] ()
    from /System/Library/Libraries/libgnustep-base.so.1.27.0
#9  0x00007700d5180760 in -[NSObject(NSThreadPerformAdditions)
performSelector:onThread:withObject:waitUntilDone:modes:]
     () from /System/Library/Libraries/libgnustep-base.so.1.27.0
#10 0x00007700d518061c in -[NSObject(NSThreadPerformAdditions)
performSelectorOnMainThread:withObject:waitUntilDone:modes:] () from
/System/Library/Libraries/libgnustep-base.so.1.27.0
#11 0x00007700d518068b in -[NSObject(NSThreadPerformAdditions)
performSelectorOnMainThread:withObject:waitUntilDone:] ()
    from /System/Library/Libraries/libgnustep-base.so.1.27.0
#12 0x00007700d5a31b89 in -[NSApplication init] () from
/System/Library/Libraries/libgnustep-gui.so.0.28.0
#13 0x00007700d5a3167e in +[NSApplication sharedApplication] () from
/System/Library/Libraries/libgnustep-gui.so.0.28.0
#14 0x00007700d5a11699 in NSApplicationMain () from
/System/Library/Libraries/libgnustep-gui.so.0.28.0
#15 0x00000000004019db in gnustep_base_user_main ()
#16 0x00007700d512ac8b in main () from
/System/Library/Libraries/libgnustep-base.so.1.27.0
#17 0x00000000004017fc in ___start ()
#18 0x00007f7e8a60cc38 in ?? () from /usr/libexec/ld.elf_so
#19 0x0000000000000001 in ?? ()
#20 0x00007f7fffaecf48 in ?? ()
#21 0x0000000000000000 in ?? ()


the structure is null and needs to be checked.
I also noticed that in case the call fails, there is no fallback. I
restructured the code a little bit and pushed a fix. At least, now it
does not crash for me anymore and Ink comes up and shows windows :-)

However, I sstill get issues with X:

2020-01-31 15:07:47.335 Ink[27979:125763785598736] X-Windows error -
BadRROutput (invalid Output parameter)
           on display: localhost:11.0
                 type: 0
        serial number: 576
         request code: 138


and even windowmaker when a GS application starts.


wmaker(catchXError(startup.c:118)): warning: internal X error: BadMatch
(invalid parameter attributes)
         Request code: 12 X_ConfigureWindow
         Request minor code: 0
         Resource ID: 0x600003
         Error serial: 59874



Regards,
Riccardo

I've added check for number of XRandR outputs. Please test and report if it helps.
Out of curiosity, do you have XRandR enabled and it's not working? What is the Xorg log messages about it?

P.S.: You haven't answer me about my XInitThreads idea. Have you succeded?

--
Sergii Stoian

reply via email to

[Prev in Thread] Current Thread [Next in Thread]