svn commit: r1541746 - /ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

svn commit: r1541746 - /ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java

jleroux@apache.org
Author: jleroux
Date: Wed Nov 13 22:04:33 2013
New Revision: 1541746

URL: http://svn.apache.org/r1541746
Log:
Fix an issue introduced with r1541641, by finally using synchronized that I tried to avoid

Modified:
    ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java

Modified: ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java
URL: http://svn.apache.org/viewvc/ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java?rev=1541746&r1=1541745&r2=1541746&view=diff
==============================================================================
--- ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java (original)
+++ ofbiz/trunk/applications/product/src/org/ofbiz/product/product/ProductEvents.java Wed Nov 13 22:04:33 2013
@@ -24,6 +24,7 @@ import java.util.Iterator;
 import java.util.List;
 import java.util.Map;
 import java.util.Set;
+import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 
 import javax.servlet.http.HttpServletRequest;
@@ -1186,8 +1187,11 @@ public class ProductEvents {
         if (UtilValidate.isNotEmpty(productId) && UtilValidate.isNotEmpty(productTags)) {
             List<String> matchList = FastList.newInstance();
             Pattern regex = Pattern.compile("[^\\s\"']+|\"([^\"]*)\"|'([^']*)'");
-            while (regex.matcher(productTags).find()) {
-                matchList.add(regex.matcher(productTags).group().replace("'", ""));
+            Matcher regexMatcher = regex.matcher(productTags);
+            synchronized (regexMatcher) {
+                while (regexMatcher.find()) {
+                    matchList.add(regexMatcher.group().replace("'", ""));
+                }                
             }
             
             GenericValue userLogin = null;