Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 324347

Summary: [SWT_AWT] Embedded XULRunner generates error messages in console
Product: [Eclipse Project] Platform Reporter: Christopher Deckers <chrriis>
Component: SWTAssignee: Platform-SWT-Inbox <platform-swt-inbox>
Status: RESOLVED NOT_ECLIPSE QA Contact:
Severity: normal    
Priority: P3 CC: eclipse.felipe, eclipsebug, ptalbot, skovatch, swingler
Version: 4.0   
Target Milestone: ---   
Hardware: PC   
OS: Mac OS X   
Whiteboard:
Attachments:
Description Flags
SWT_AWT example with a browser none

Description Christopher Deckers CLA 2010-09-02 15:47:52 EDT
Build Identifier: SWT 3.7M1

Embedding XULRunner in an AWT application results in error messages in the console like:
2010-09-02 21:42:52.754 java[229:be03] *** -[NSConditionLock unlock]: lock (<NSConditionLock: 0x113fb0> '(null)') unlocked when not locked
2010-09-02 21:42:52.755 java[229:be03] *** Break on _NSLockError() to debug.

I am not sure whether it also happens with other controls but my test case with XULRunner shows it (see attachment)
I have no clue whether these messages are of importance...

Reproducible: Always

Steps to Reproduce:
1. Embed a browser with MOZILLA style in an AWT application
Comment 1 Christopher Deckers CLA 2010-09-02 15:48:39 EDT
Created attachment 178095 [details]
SWT_AWT example with a browser
Comment 2 Patrick Talbot CLA 2010-09-02 22:26:53 EDT
I suppose it is related to #204709

Doesn't seen to be dangerous but it's still very annoying and I saw this one from the very first time I tried using SWT_AWT on Mac OS X (more than a year ago), it is still there today.

Perhaps it's time something is done about it?
Comment 3 Scott Kovatch CLA 2010-09-03 01:56:38 EDT
The message is coming from the AWT, not the SWT. I believe it has something to do with the AWT starting on or being invoke from the main thread.
Comment 4 Christopher Deckers CLA 2010-09-03 02:05:16 EDT
> I believe it has something to
> do with the AWT starting on or being invoke from the main thread.

Why is there a difference between Safari and XULRunner then? (I am talking about the LockError messages)

-Christopher
Comment 5 Scott Kovatch CLA 2010-09-21 20:12:35 EDT
Here's a stack trace when we are about to trigger the error:

Thread 18 (process 70507):
#0  0x91914742 in NSLog ()
#1  0x918d1810 in -[NSConditionLock unlock] ()
#2  0x0f965f45 in -[CPerformer performCompatible] ()
#3  0x0f905895 in +[ThreadUtilities performOnMainThread:onObject:withObject:waitUntilDone:awtMode:] ()
#4  0x0f953a7a in -[ContainerModel javaRestack:withEnv:] ()
#5  0x0f953ca7 in Java_apple_awt_ContainerModel__1restack ()
.....
#25 0x0037f930 in JVM_Lseek ()
#26 0x0037f6de in JVM_Lseek ()
#27 0x0038d39c in JVM_InternString ()
#28 0x0038d29e in JVM_InternString ()
#29 0x0038d1e6 in JVM_InternString ()
#30 0x0038d05b in JVM_InternString ()
#31 0x0038cd5b in JVM_StartThread ()
#32 0x0030dc99 in JNI_CreateJavaVM_Impl ()
#33 0x993b181d in _pthread_start ()
#34 0x993b16a2 in thread_start ()

This is AWT code. Using a browser widget isn't necessary to make it happen.
Comment 6 Scott Kovatch CLA 2010-09-27 13:32:24 EDT
*** Bug 204709 has been marked as a duplicate of this bug. ***
Comment 7 Scott Kovatch CLA 2010-10-13 19:18:49 EDT
Resolving as NOT_ECLIPSE. I'm pretty sure there's a Radar for this already.