@@ -170,7 +170,6 @@ private constructor(
170170 AnalyticsServiceConnectionEvent .ANALYTICS_SERVICE_CONNECTION_EVENT_TOPIC , object : AnalyticsServiceConnectionEvent {
171171
172172
173-
174173 private fun shouldUpdateEngineStatus (): Boolean {
175174 // in installation wizard there is no need to update the status on connection lost if there is any engine operation
176175 // running (like install,stop,start,remove) because it may confuse the UI.
@@ -401,14 +400,29 @@ private constructor(
401400 fun registerForReloadObserver (registrationName : String ) {
402401 // need to register for ReloadObserver after the component has been added to the parent so that all graphics configuration is set.
403402 // the event is called multiple times for the same component, but we need to register only once.
404- getComponent().addAncestorListener( object : AncestorListenerAdapter () {
403+ val listener = object : AncestorListenerAdapter () {
405404 override fun ancestorAdded (event : AncestorEvent ) {
406- if (! registeredForReloadObserver) {
407- registeredForReloadObserver = true
408- service<ReloadObserver >().register(project, registrationName, getComponent(), parentDisposable)
405+ try {
406+ if (! registeredForReloadObserver) {
407+ registeredForReloadObserver = true
408+ service<ReloadObserver >().register(project, registrationName, getComponent(), parentDisposable)
409+ }
410+ } catch (e: Throwable ) {
411+ Log .warnWithException(logger, project, e, " error in registerForReloadObserver.ancestorAdded" )
412+ ErrorReporter .getInstance().reportError(project, " JCefComponent.registerForReloadObserver.ancestorAdded" , e)
409413 }
410414 }
411- })
415+ }
416+
417+ try {
418+ getComponent().addAncestorListener(listener)
419+ Disposer .register(parentDisposable) {
420+ getComponent().removeAncestorListener(listener)
421+ }
422+ } catch (e: Throwable ) {
423+ Log .warnWithException(logger, project, e, " error in registerForReloadObserver.ancestorAdded" )
424+ ErrorReporter .getInstance().reportError(project, " JCefComponent.registerForReloadObserver" , e)
425+ }
412426 }
413427
414428
0 commit comments