FS#37685 - [dart] Darteditor's jvm crashes with gtk internal callstack

Attached to Project: Community Packages
Opened by drevilt (drevilt) - Thursday, 07 November 2013, 22:57 GMT
Last edited by Alexander F. Rødseth (xyproto) - Tuesday, 12 November 2013, 21:39 GMT
Task Type Bug Report
Category Upstream Bugs
Status Closed
Assigned To Alexander F. Rødseth (xyproto)
Architecture x86_64
Severity High
Priority Normal
Reported Version
Due in Version Undecided
Due Date Undecided
Percent Complete 100%
Votes 0
Private No

Details

Description:

the Dart editor ( which is based on eclipse ) inside the newly included "dart" package in community crashes(segfaults) when you try to close a projects "pubspec.yaml" file with a gtk internal error. the logfile from the eclipse jvm is attached. This makes the darteditor hard to use as you cannot close some documents inside this modified eclipse because this crashes it.

my guess is that, due to the dart package is not beeing built from source but just installing binaries, these binaries are built for ubuntu and not the latest upstream gtk as we use it. because of that there is an ABI mismatch between the darteditor binary and our current gtk version ( libgobject-2.0.so to be precise) . I think if the package would be built from source this problem would go away.

I have tested this with oracle java and openjdk. Both fail, but i dont think this is a jvm dependent problem. Also the logfile show that i used version 0.8.10 of dart which is not yet in [community]. but the problem is the same with the current version in [community] 0.8.7.

Additional info:
* package version(s):
* dart from [community] version 0.8.7.0 and ( selfbuilt ) 0.8.10.3
* config and/or log files etc.
* log file from crashing eclipse is attached


Steps to reproduce:

- open darteditor
- create a new project
- open pubspec.yaml file from the new project
- close the document
- it should crash
This task depends upon

Closed by  Alexander F. Rødseth (xyproto)
Tuesday, 12 November 2013, 21:39 GMT
Reason for closing:  Upstream
Additional comments about closing:  The dart package is now only the dart sdk.
Comment by Jan de Groot (JGC) - Friday, 08 November 2013, 08:20 GMT
This is a bug in swt: https://bugs.eclipse.org/bugs/show_bug.cgi?id=383189

Your software contains an outdated version of swt, so it's a bug in your software.
Comment by T. Jameson Little (beatgammit) - Saturday, 09 November 2013, 00:53 GMT
I don't get the crash, but I am not using the same package. I'm on the latest openjdk from the repositories.

What jre are you using?
Comment by drevilt (drevilt) - Sunday, 10 November 2013, 22:56 GMT
for me, it crashes with both , the openjdk from the repos and the "jdk" package from AUR which is oracles jvm.
Comment by T. Jameson Little (beatgammit) - Monday, 11 November 2013, 05:15 GMT
Just tried with the official dart package (0.8.7.0-2), and no crash. I did the steps exactly as you mentioned:

1. File -> New Application (web application)
2. Open pubspec.yaml
3. Close pubspec.yaml (also tried changing something and saving)

I'm interested if anyone else can replicate this.
Comment by Alexander F. Rødseth (xyproto) - Monday, 11 November 2013, 16:14 GMT
@Daniel Nagy, Are all packages on the system up to date? Is there any output on stdout or stderr if you launch dart from a terminal? Thanks for investigating.
Comment by Jan de Groot (JGC) - Monday, 11 November 2013, 16:18 GMT
This is probably related to the theme engine used. Oxygen theme is known to trigger this crash.

It's a known bug in SWT which has already been fixed upstream, but as long as software keeps shipping its internal outdated versions of swt this bug will still pop up now and then.
Comment by Alexander F. Rødseth (xyproto) - Monday, 11 November 2013, 16:19 GMT
Ok, thanks Jan de Groot.

Closing this bug, since it does not appear to be a problem with dart.
Comment by Jan de Groot (JGC) - Monday, 11 November 2013, 16:24 GMT
The dart package includes an outdated swt, so the bug is in dart. Either it should use a copy of system swt (which should not have this bug, otherwise that needs fixing too), or the included copy of SWT should be patched with the link I provided in the first comment.
Comment by Alexander F. Rødseth (xyproto) - Monday, 11 November 2013, 16:39 GMT
Ok, I misunderstood. Will look into this.
Comment by Alexander F. Rødseth (xyproto) - Monday, 11 November 2013, 16:57 GMT
JGC,

Do you happen to know which package includes a library file that can work as a replacement for /opt/dart/libcairo-swt.so? I could not find any.

And were you thinking of this patch? http://git.eclipse.org/c/platform/eclipse.platform.swt.git/commit/?id=8a770faaa4942f4e1cde0428ab3348bcc4c88e3f

I don't see how it can be applied to the binary release of dart. One of the problems with dart is that the source is only provided as a whole bunch of source repositories, with the "gclient" tool from google for retrieving the right revisions of everything and making everything tick. It is a nightmare, and they currently do not have any source releases apart from this. A bug has been reported, requesting source releases per release version.

If the swt patch has to be applied to the dart sources for it to work as intended, it's an open question what to do next. Upstream should use the system wide library, if available, IMO.
Comment by Alexander F. Rødseth (xyproto) - Monday, 11 November 2013, 16:59 GMT Comment by Alexander F. Rødseth (xyproto) - Tuesday, 12 November 2013, 21:38 GMT
Removed dart-editor from the dart package. Now it's only the dart-sdk. See the forum post for more information. Closing this bug.

Loading...