mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

lutoff
05.03.2008 6e7abb4aaf539a4e272daaa13fa9e1ca7c642a52
Fix double extension loading when instance and install are in the directory
1 files modified
34 ■■■■ changed files
opends/src/server/org/opends/server/admin/ClassLoaderProvider.java 34 ●●●● patch | view | raw | blame | history
opends/src/server/org/opends/server/admin/ClassLoaderProvider.java
@@ -318,15 +318,39 @@
    // First load the extension from the install directory, then
    // from the instance directory.
    File libDir ;
    File extensionsPath ;
    File installExtensionsPath ;
    File instanceExtensionsPath ;
    // load install dir extension
    libDir = new File(DirectoryServer.getServerRoot(),LIB_DIR);
    extensionsPath = new File(libDir, EXTENSIONS_DIR);
    initializeAllExtensions(extensionsPath);
    try
    {
      installExtensionsPath =
        new File(libDir, EXTENSIONS_DIR).getCanonicalFile();
    }
    catch (Exception e)
    {
      installExtensionsPath = new File(libDir, EXTENSIONS_DIR);
    }
    initializeAllExtensions(installExtensionsPath);
    // load instance dir extension
    libDir = new File(DirectoryServer.getInstanceRoot(),LIB_DIR);
    extensionsPath = new File(libDir, EXTENSIONS_DIR);
    initializeAllExtensions(extensionsPath);
    try
    {
      instanceExtensionsPath =
        new File(libDir, EXTENSIONS_DIR).getCanonicalFile();
    }
    catch (Exception e)
    {
      instanceExtensionsPath = new File(libDir, EXTENSIONS_DIR);
    }
    if (! installExtensionsPath.getAbsolutePath().equals(
        instanceExtensionsPath.getAbsolutePath()))
    {
      initializeAllExtensions(instanceExtensionsPath);
    }
  }