Changeset 17166 in josm


Ignore:
Timestamp:
2020-10-11T21:29:57+02:00 (8 weeks ago)
Author:
simon04
Message:

fix #19914 - Deal with DateTimeException when using DateUtils

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

Legend:

Unmodified
Added
Removed
  • trunk/src/org/openstreetmap/josm/data/osm/search/SearchCompiler.java

    r17153 r17166  
    88import java.io.StringReader;
    99import java.text.Normalizer;
     10import java.time.DateTimeException;
    1011import java.util.ArrayList;
    1112import java.util.Arrays;
     
    201202                                // if min timestamp is empty: use lowest possible date
    202203                                minDate = DateUtils.fromString(rangeA1.isEmpty() ? "1980" : rangeA1).getTime();
    203                             } catch (UncheckedParseException ex) {
     204                            } catch (UncheckedParseException | DateTimeException ex) {
    204205                                throw new SearchParseError(tr("Cannot parse timestamp ''{0}''", rangeA1), ex);
    205206                            }
     
    207208                                // if max timestamp is empty: use "now"
    208209                                maxDate = rangeA2.isEmpty() ? System.currentTimeMillis() : DateUtils.fromString(rangeA2).getTime();
    209                             } catch (UncheckedParseException ex) {
     210                            } catch (UncheckedParseException | DateTimeException ex) {
    210211                                throw new SearchParseError(tr("Cannot parse timestamp ''{0}''", rangeA2), ex);
    211212                            }
  • trunk/src/org/openstreetmap/josm/gui/layer/OsmDataLayer.java

    r16967 r17166  
    2323import java.io.File;
    2424import java.io.IOException;
     25import java.time.DateTimeException;
    2526import java.util.ArrayList;
    2627import java.util.Arrays;
     
    879880                wpt.setTime(Integer.toUnsignedLong(n.getRawTimestamp()));
    880881            }
    881         } catch (UncheckedParseException e) {
     882        } catch (UncheckedParseException | DateTimeException e) {
    882883            Logging.error(e);
    883884        }
  • trunk/src/org/openstreetmap/josm/io/AbstractReader.java

    r16080 r17166  
    88import java.io.InputStreamReader;
    99import java.text.MessageFormat;
     10import java.time.DateTimeException;
    1011import java.util.ArrayList;
    1112import java.util.Collection;
     
    4546import org.openstreetmap.josm.tools.CheckParameterUtil;
    4647import org.openstreetmap.josm.tools.Logging;
     48import org.openstreetmap.josm.tools.UncheckedParseException;
    4749import org.openstreetmap.josm.tools.Utils;
    4850import org.openstreetmap.josm.tools.date.DateUtils;
     
    425427
    426428    protected final void parseTimestamp(PrimitiveData current, String time) {
    427         if (time != null && !time.isEmpty()) {
     429        if (time == null || time.isEmpty()) {
     430            return;
     431        }
     432        try {
    428433            int timestamp = timestampCache.computeIfAbsent(time, t -> (int) (DateUtils.tsFromString(t) / 1000));
    429434            current.setRawTimestamp(timestamp);
     435        } catch (UncheckedParseException | DateTimeException e) {
     436            Logging.error(e);
    430437        }
    431438    }
  • trunk/src/org/openstreetmap/josm/io/GpxReader.java

    r16643 r17166  
    77import java.io.InputStream;
    88import java.io.Reader;
     9import java.time.DateTimeException;
    910import java.util.ArrayList;
    1011import java.util.Collection;
     
    477478                    try {
    478479                        currentWayPoint.setTimeInMillis(DateUtils.tsFromString(accumulator.toString()));
    479                     } catch (UncheckedParseException e) {
     480                    } catch (UncheckedParseException | DateTimeException e) {
    480481                        Logging.error(e);
    481482                    }
Note: See TracChangeset for help on using the changeset viewer.