January 6, 2012

Jeff F. Jeff F.
Lab Rat
6 posts

Why has javascriptcore not been updated

 

It appears that the 3rdparty/javascriptcore/JavaScriptCore has not been updated for a while. Is there a reason for this?

I have been looking at the following

http://trac.webkit.org/browser/trunk/Source/JavaScriptCore

Where there appears to be two new files (ChangeLog-2010-05-24 and ChangeLog-2011-02-16) which I have interpreted as the whole code base has not been updated. Is that correct?

The reason I am interested in this is I have been debugging an assertion in my code for the last several days: see below

ASSERTION FAILED: offset == static_cast<int32_t>(offset)
(../3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h:1603 static void QTJSC::X86Assembler::setRel32(void*, void*))

Which seem to be similar to the following bug that has been resolved see the following link:

https://bugzilla.mozilla.org/show_bug.cgi?id=602333

And I am try to understand if this resolution has been incorporated in the code distributed with Qt version 4.8.0

Thanks

7 replies

January 6, 2012

Jeff F. Jeff F.
Lab Rat
6 posts

OK I am now realizing that there appear to be several versions of the JavaScriptCore included with Qt.

Note:
3rdparty/javascriptcore/JavaScriptCore/assembler/X86Assembler.h
3rdparty/webkit/Source/JavaScriptCore/assembler/X86Assembler.h

And these two files differ.

Does anyone know the reason why both are include with different versioins?

January 23, 2012

nicolauz nicolauz
Lab Rat
7 posts

The one (webkit) is for WebKit purpose.
The other one is for QtScript and QtDeclarative.

I don’t know the reasons behind this setup.

Have you found a solution?
QtDeclarative is crashing a lot on my 64bit machine … for now I’m going back to v4.8.0
.. hope that version plays nicer :)

January 23, 2012

Volker Volker
Ant Farmer
5331 posts

If I remember correctly, QtScript was added very early in the Qt 4 series and Qt Webkit was added sometime later.

Additionally, Qt Webkit, being sort of a stand alone package, cannot depend on Qt’s JS implementation and neither QtDeclarative nor QtScript should depend on webkit.

January 23, 2012

Jeff F. Jeff F.
Lab Rat
6 posts

tsenyk,

I have not found a solution.

The unstable behavior I am seeing happens with both 4.7.3 and 4.8.0.

It appears to be more unstable the larger the application is. My application is 64 bit.

When the application takes a small amount of ram sat 1Gig its seems to be stable. When the application is using a large amount of ram sat 8Gig then it seem to be more unstable.

My application uses QtScript to automate some of the users work. When running the script I get random crashes. I have run my application in a debugger and done a backtrace with Qt compiled with debug enabled. When I get it to crash it always crashes in the same routine in X86Assembler.h. As I mentioned in my first post the crash location is in a similar location to one identified in the above link. Not sure if the fix they have will fix it.

If the javascriptcore were updated then this change would be included hence my question why is the code base in QtScript not updated?

January 24, 2012

nicolauz nicolauz
Lab Rat
7 posts

sounds logical @ volker
Hope that mess doesn’t repeat it self in Qt5 :) … one V8 to rule them all ;)

Anyway: I can also confirm that on: – 64Bit ArchLinux – with Qt4.8.0 and Qt4.8-HEAD – debug and release

https://bugreports.qt.nokia.com/browse/QTBUG-23871

January 24, 2012

Jeff F. Jeff F.
Lab Rat
6 posts

I have looked at the Qt5 code base and it appears to be doing the same thing.

Is there a group/person who is in charge of QtScript. I have looked at moving the latest version of javascriptcore into

3rdparty/javascriptcore/JavaScriptCore

but when I do that I get compile errors.

I am wondering if the new version of javascriptcore is not compatible with the code base of QtScript.

Have not been able to find anyone who knows about the particulars of this.

June 26, 2012

Jeff F. Jeff F.
Lab Rat
6 posts

Hello All,

I was recently asked if I have found a resolution to this issue. The answer is kind of. When I was having the problems discussed I was using the compiler that came with openSUSE 11.4. I tried downloading the most recent g++ version and experience the same problems of random crashes.

I then demoed the latest intel compiler. Interestingly I have not experience any problems like the one discussed in this ticket. Not sure if this has simply moved the problem somewhere else and I am not encountering it.

I tried debugging QT several times to try and isolate what section of code where there might be a problem but every time it crashed it would point to the section of code previously mentioned or worse did not give me any back trace.

Hope this helps.
jeff

 
  ‹‹ Making a QML Element "droppable"      Buggy behaviour of setPos of QGraphicsSimpleTextItem ››

You must log in to post a reply. Not a member yet? Register here!