bugfixes mainly...
[mir.git] / source / mircoders / storage / DatabaseMediaType.java
index 8d68ac4..1e014b9 100755 (executable)
@@ -22,7 +22,11 @@ public class DatabaseMediaType extends Database implements StorageObject{
 
   private static DatabaseMediaType instance;
 
-  public static DatabaseMediaType getInstance() throws StorageObjectException {
+  // the following *has* to be sychronized cause this static method
+  // could get preemted and we could end up with 2 instances of DatabaseFoo..
+  // see the "Singletons with needles and thread" article at JavaWorld -mh
+  public synchronized static DatabaseMediaType getInstance() 
+    throws StorageObjectException {
     if (instance == null) {
       instance = new DatabaseMediaType();
       instance.myselfDatabase = instance;