Changeset 18366 in josm for trunk/src/org


Ignore:
Timestamp:
2022-01-26T20:13:22+01:00 (3 years ago)
Author:
taylor.smock
Message:

Replace usages of System.exit with Lifecycle.exitJosm

This fixes some coverity scan issues (spotbugs) with respect to exiting the VM.

See #15182: Standalone JOSM validator

Location:
trunk/src/org/openstreetmap/josm
Files:
4 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/projection/ProjectionCLI.java

    r16643 r18366  
    2020import org.openstreetmap.josm.data.coor.LatLon;
    2121import org.openstreetmap.josm.data.coor.conversion.LatLonParser;
     22import org.openstreetmap.josm.spi.lifecycle.Lifecycle;
    2223import org.openstreetmap.josm.tools.OptionParser;
    2324
     
    7677        } catch (ProjectionConfigurationException | IllegalArgumentException | IOException ex) {
    7778            System.err.println(tr("Error: {0}", ex.getMessage()));
    78             System.exit(1);
     79            Lifecycle.exitJosm(true, 1);
    7980        }
    80         System.exit(0);
     81        Lifecycle.exitJosm(true, 0);
    8182    }
    8283
     
    8687    private static void showHelp() {
    8788        System.out.println(getHelp());
    88         System.exit(0);
     89        Lifecycle.exitJosm(true, 0);
    8990    }
    9091
  • trunk/src/org/openstreetmap/josm/data/validation/ValidatorCLI.java

    r18365 r18366  
    6969 */
    7070public class ValidatorCLI implements CLIModule {
    71         /**
    72         * The unique instance.
    73         */
     71    /**
     72    * The unique instance.
     73    */
    7474    public static final ValidatorCLI INSTANCE = new ValidatorCLI();
    7575
     
    385385        case HELP:
    386386            showHelp();
    387             System.exit(0);
     387            Lifecycle.exitJosm(true, 0);
    388388            break;
    389389        case DEBUG:
  • trunk/src/org/openstreetmap/josm/gui/MainApplication.java

    r18365 r18366  
    278278            } catch (IllegalArgumentException e) {
    279279                System.err.println(e.getMessage());
    280                 System.exit(1);
     280                Lifecycle.exitJosm(true, 1);
    281281            }
    282282            mainJOSM(args);
     
    12411241                            tr("''{0}'' is not a valid value for argument ''{1}''. Possible values are {2}, possibly delimited by commas.",
    12421242                            s.toUpperCase(Locale.ENGLISH), Option.OFFLINE.getName(), Arrays.toString(OnlineResource.values())), e);
    1243                     System.exit(1);
     1243                    Lifecycle.exitJosm(true, 1);
    12441244                    return;
    12451245                }
  • trunk/src/org/openstreetmap/josm/gui/mappaint/RenderingCLI.java

    r16818 r18366  
    3939import org.openstreetmap.josm.io.IllegalDataException;
    4040import org.openstreetmap.josm.io.OsmReader;
     41import org.openstreetmap.josm.spi.lifecycle.Lifecycle;
    4142import org.openstreetmap.josm.spi.preferences.Config;
    4243import org.openstreetmap.josm.spi.preferences.MemoryPreferences;
     
    177178            }
    178179            System.err.println(tr("Error - file not found: ''{0}''", e.getMessage()));
    179             System.exit(1);
     180            Lifecycle.exitJosm(true, 1);
    180181        } catch (IllegalArgumentException | IllegalDataException | IOException e) {
    181182            if (Logging.isDebugEnabled()) {
     
    185186                System.err.println(tr("Error: {0}", e.getMessage()));
    186187            }
    187             System.exit(1);
    188         }
    189         System.exit(0);
     188            Lifecycle.exitJosm(true, 1);
     189        }
     190        Lifecycle.exitJosm(true, 0);
    190191    }
    191192
     
    228229        case HELP:
    229230            showHelp();
    230             System.exit(0);
     231            Lifecycle.exitJosm(true, 0);
    231232            break;
    232233        case DEBUG:
Note: See TracChangeset for help on using the changeset viewer.