Thread overview
CoolItem crash on linux
May 13, 2008
Bill Baxter
May 13, 2008
Frank Benoit
May 13, 2008
Frank Benoit
May 13, 2008
Frank Benoit
May 13, 2008
Bill Baxter
May 13, 2008
I'm getting a segfault on linux with this line of code:

        auto ci = new CoolItem(cb, DWT.NONE);

The same code works on Windows, but it's crapping out in linux.  I've updated everything to the latest, Tango, dwt-linux, dwt-addons.  dmd is 1.029.  Linux is Ubuntu 7.10.

The stack trace from gdb doesn't looks very useful to me, but here it is.  Maybe it will speak to you:

(gdb) where
#0  0x0847c561 in _D5tango4text7convert6Format6FormatC5tango4text7convert6Layout13__T6LayoutTaZ6Layout ()
#1  0xb7b792ac in ?? () from /usr/lib/libpangocairo-1.0.so.0
#2  0x084a7c30 in ?? ()
#3  0x00000000 in ?? ()

Any ideas?

--bb
May 13, 2008
Bill Baxter schrieb:
> I'm getting a segfault on linux with this line of code:
> 
>         auto ci = new CoolItem(cb, DWT.NONE);
> 
> The same code works on Windows, but it's crapping out in linux.  I've updated everything to the latest, Tango, dwt-linux, dwt-addons.  dmd is 1.029.  Linux is Ubuntu 7.10.
> 
> The stack trace from gdb doesn't looks very useful to me, but here it is.  Maybe it will speak to you:
> 
> (gdb) where
> #0  0x0847c561 in _D5tango4text7convert6Format6FormatC5tango4text7convert6Layout13__T6LayoutTaZ6Layout ()
> #1  0xb7b792ac in ?? () from /usr/lib/libpangocairo-1.0.so.0
> #2  0x084a7c30 in ?? ()
> #3  0x00000000 in ?? ()
> 
> Any ideas?
> 
> --bb

the DMD 1.029 is know to make problems with DWT.
Can you try to use the Setup script, if that crashes in that environment too?
http://www.dsource.org/projects/dwt/wiki/SetupLinux

Can you see if that makes a difference before and after the 3.4m7 update?

For stacktrac on linux i use the jive stacktrace and it works great. I will post the module later.

Your gdb stacktrace shows only that it crashes in the tango.text.convert.Layout class. Unfortunately it does not speak to me :)
May 13, 2008
Frank Benoit schrieb:
> Can you try to use the Setup script, if that crashes in that environment too?
> http://www.dsource.org/projects/dwt/wiki/SetupLinux
> 
> For stacktrac on linux i use the jive stacktrace and it works great. I will post the module later.

The setup script does now make use of jive stacktrace. This has been a big help in my D projects on linux.
May 13, 2008
Bill Baxter schrieb:
> I'm getting a segfault on linux with this line of code:
> 
>         auto ci = new CoolItem(cb, DWT.NONE);
> 
> The same code works on Windows, but it's crapping out in linux.  I've updated everything to the latest, Tango, dwt-linux, dwt-addons.  dmd is 1.029.  Linux is Ubuntu 7.10.
> 
> The stack trace from gdb doesn't looks very useful to me, but here it is.  Maybe it will speak to you:
> 
> (gdb) where
> #0  0x0847c561 in _D5tango4text7convert6Format6FormatC5tango4text7convert6Layout13__T6LayoutTaZ6Layout ()
> #1  0xb7b792ac in ?? () from /usr/lib/libpangocairo-1.0.so.0
> #2  0x084a7c30 in ?? ()
> #3  0x00000000 in ?? ()
> 
> Any ideas?
> 
> --bb

I tried this without problems.
Does the problem still exist?
May 13, 2008
Frank Benoit wrote:
> Bill Baxter schrieb:
>> I'm getting a segfault on linux with this line of code:
>>
>>         auto ci = new CoolItem(cb, DWT.NONE);
>>
>> The same code works on Windows, but it's crapping out in linux.  I've updated everything to the latest, Tango, dwt-linux, dwt-addons.  dmd is 1.029.  Linux is Ubuntu 7.10.
>>
>> The stack trace from gdb doesn't looks very useful to me, but here it is.  Maybe it will speak to you:
>>
>> (gdb) where
>> #0  0x0847c561 in _D5tango4text7convert6Format6FormatC5tango4text7convert6Layout13__T6LayoutTaZ6Layout ()
>> #1  0xb7b792ac in ?? () from /usr/lib/libpangocairo-1.0.so.0
>> #2  0x084a7c30 in ?? ()
>> #3  0x00000000 in ?? ()
>>
>> Any ideas?
>>
>> --bb
> 
> I tried this without problems.
> Does the problem still exist?

Oh, actually I should have been clearer -- the CoolBar Snippets actually work for me fine.  It's only my real application where I'm getting this crash.  I'll take a look at what your setup script does and see if that's any help.

--bb