[OLINGO-1063] Fixed getPropertyNames
diff --git a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmStructuralTypeImplProv.java b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmStructuralTypeImplProv.java
index 8a8bcf5..1d46931 100644
--- a/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmStructuralTypeImplProv.java
+++ b/odata2-lib/odata-core/src/main/java/org/apache/olingo/odata2/core/edm/provider/EdmStructuralTypeImplProv.java
@@ -109,15 +109,16 @@
   @Override
   public List<String> getPropertyNames() throws EdmException {
     if (edmPropertyNames == null) {
-      edmPropertyNames = new ArrayList<String>();
+      final List<String> temp = new ArrayList<String>();
       if (edmBaseType != null) {
-        edmPropertyNames.addAll(edmBaseType.getPropertyNames());
+        temp.addAll(edmBaseType.getPropertyNames());
       }
       if (structuralType.getProperties() != null) {
         for (final Property property : structuralType.getProperties()) {
-          edmPropertyNames.add(property.getName());
+          temp.add(property.getName());
         }
       }
+      edmPropertyNames = temp;
     }
 
     return edmPropertyNames;