Ignore:
Timestamp:
2016-08-08T00:23:04+02:00 (8 years ago)
Author:
Don-vip
Message:

sonar - squid:S3655 - Optional value should only be accessed after calling isPresent()
sonar - squid:S2259 - Null pointers should not be dereferenced
+add trace message when loading SVG file

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/plugins/PluginHandler.java

    r10708 r10768  
    975975
    976976            // try to download the plugin lists
    977             //
    978977            ReadRemotePluginInformationTask task1 = new ReadRemotePluginInformationTask(
    979978                    monitor.createSubTaskMonitor(1, false),
     
    981980            );
    982981            task1.run();
    983             List<PluginInformation> allPlugins = null;
     982            List<PluginInformation> allPlugins = task1.getAvailablePlugins();
    984983
    985984            try {
    986                 allPlugins = task1.getAvailablePlugins();
    987985                plugins = buildListOfPluginsToLoad(parent, monitor.createSubTaskMonitor(1, false));
    988986                // If only some plugins have to be updated, filter the list
     
    10091007
    10101008            // filter plugins which actually have to be updated
    1011             //
    10121009            Collection<PluginInformation> pluginsToUpdate = new ArrayList<>();
    1013             for (PluginInformation pi: plugins) {
    1014                 if (pi.isUpdateRequired()) {
    1015                     pluginsToUpdate.add(pi);
     1010            if (plugins != null) {
     1011                for (PluginInformation pi: plugins) {
     1012                    if (pi.isUpdateRequired()) {
     1013                        pluginsToUpdate.add(pi);
     1014                    }
    10161015                }
    10171016            }
     
    10301029                    while (!additionalPlugins.isEmpty()) {
    10311030                        // Install the additional plugins to load them later
    1032                         plugins.addAll(additionalPlugins);
     1031                        if (plugins != null)
     1032                            plugins.addAll(additionalPlugins);
    10331033                        additionalPlugins = findRequiredPluginsToDownload(additionalPlugins, allPlugins, pluginsToDownload);
    10341034                        pluginsToDownload.addAll(additionalPlugins);
     
    10371037
    10381038                // try to update the locally installed plugins
    1039                 //
    10401039                pluginDownloadTask = new PluginDownloadTask(
    10411040                        monitor.createSubTaskMonitor(1, false),
     
    10531052
    10541053                // Update Plugin info for downloaded plugins
    1055                 //
    10561054                refreshLocalUpdatedPluginInfo(pluginDownloadTask.getDownloadedPlugins());
    10571055
    10581056                // notify user if downloading a locally installed plugin failed
    1059                 //
    10601057                if (!pluginDownloadTask.getFailedPlugins().isEmpty()) {
    10611058                    alertFailedPluginUpdate(parent, pluginDownloadTask.getFailedPlugins());
     
    10681065        if (pluginsWanted == null) {
    10691066            // if all plugins updated, remember the update because it was successful
    1070             //
    10711067            Main.pref.putInteger("pluginmanager.version", Version.getInstance().getVersion());
    10721068            Main.pref.put("pluginmanager.lastupdate", Long.toString(System.currentTimeMillis()));
Note: See TracChangeset for help on using the changeset viewer.