diff --git a/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java b/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java
index 28788e0..8667cbd 100644
--- a/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java
+++ b/fileinstall/src/main/java/org/apache/felix/fileinstall/internal/ConfigInstaller.java
@@ -221,10 +221,12 @@
         Configuration config = getConfiguration(toConfigKey(f), pid[0], pid[1]);
 
         Dictionary props = config.getProperties();
-        Hashtable old = props != null ? new Hashtable(new DictionaryAsMap(props)) : new Hashtable();
-        old.remove( DirectoryWatcher.FILENAME );
-        old.remove( Constants.SERVICE_PID );
-        old.remove( ConfigurationAdmin.SERVICE_FACTORYPID );
+        Hashtable old = props != null ? new Hashtable(new DictionaryAsMap(props)) : null;
+        if (old != null) {
+        	old.remove( DirectoryWatcher.FILENAME );
+        	old.remove( Constants.SERVICE_PID );
+        	old.remove( ConfigurationAdmin.SERVICE_FACTORYPID );
+        }
 
         if( !ht.equals( old ) )
         {
