You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by kw...@apache.org on 2016/07/15 08:14:44 UTC
svn commit: r1752795 -
/sling/trunk/bundles/extensions/i18n/src/main/java/org/apache/sling/i18n/impl/JcrResourceBundleProvider.java
Author: kwin
Date: Fri Jul 15 08:14:44 2016
New Revision: 1752795
URL: http://svn.apache.org/viewvc?rev=1752795&view=rev
Log:
SLING-5847 prevent deadlock
Modified:
sling/trunk/bundles/extensions/i18n/src/main/java/org/apache/sling/i18n/impl/JcrResourceBundleProvider.java
Modified: sling/trunk/bundles/extensions/i18n/src/main/java/org/apache/sling/i18n/impl/JcrResourceBundleProvider.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/extensions/i18n/src/main/java/org/apache/sling/i18n/impl/JcrResourceBundleProvider.java?rev=1752795&r1=1752794&r2=1752795&view=diff
==============================================================================
--- sling/trunk/bundles/extensions/i18n/src/main/java/org/apache/sling/i18n/impl/JcrResourceBundleProvider.java (original)
+++ sling/trunk/bundles/extensions/i18n/src/main/java/org/apache/sling/i18n/impl/JcrResourceBundleProvider.java Fri Jul 15 08:14:44 2016
@@ -316,9 +316,7 @@ public class JcrResourceBundleProvider i
scheduler.schedule(new Runnable() {
@Override
public void run() {
- synchronized(JcrResourceBundleProvider.this) {
- reloadBundle(key);
- }
+ reloadBundle(key);
scheduledJobNames.remove(jobName);
}
}, options);
@@ -329,7 +327,10 @@ public class JcrResourceBundleProvider i
resourceBundleCache.remove(key);
log.info("Reloading resource bundle for {}", key);
// unregister bundle
- ServiceRegistration serviceRegistration = bundleServiceRegistrations.remove(key);
+ ServiceRegistration serviceRegistration = null;
+ synchronized (this) {
+ serviceRegistration = bundleServiceRegistrations.remove(key);
+ }
if (serviceRegistration != null) {
serviceRegistration.unregister();
} else {