﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc
15582	SyntaxException with a possibly valid opening_hours	naoliv	boman	"Have an object with `opening_hours=Th 00:00-02:30,18:15-02:30`, go to `Data` → `Edit opening hours` and edit the existing tag:

[[Image(https://i.imgur.com/eYcLyBk.png)]]

{{{
2017-11-22 10:46:27.592 WARNING: org.openstreetmap.josm.plugins.ohe.parser.SyntaxException
org.openstreetmap.josm.plugins.ohe.parser.SyntaxException
	at org.openstreetmap.josm.plugins.ohe.parser.OpeningTimeCompiler.daytimespan(OpeningTimeCompiler.java:160)
	at org.openstreetmap.josm.plugins.ohe.parser.OpeningTimeCompiler.daytimespanlist(OpeningTimeCompiler.java:102)
	at org.openstreetmap.josm.plugins.ohe.parser.OpeningTimeCompiler.daytimespanlist(OpeningTimeCompiler.java:106)
	at org.openstreetmap.josm.plugins.ohe.parser.OpeningTimeCompiler.timespan(OpeningTimeCompiler.java:93)
	at org.openstreetmap.josm.plugins.ohe.parser.OpeningTimeCompiler.timespanlist(OpeningTimeCompiler.java:61)
	at org.openstreetmap.josm.plugins.ohe.parser.OpeningTimeCompiler.startCompile(OpeningTimeCompiler.java:32)
	at org.openstreetmap.josm.plugins.ohe.gui.OheDialogPanel.getTime(OheDialogPanel.java:133)
	at org.openstreetmap.josm.plugins.ohe.gui.OheEditor.initTimeRects(OheEditor.java:187)
	at org.openstreetmap.josm.plugins.ohe.gui.OheEditor.<init>(OheEditor.java:96)
	at org.openstreetmap.josm.plugins.ohe.gui.OheDialogPanel.<init>(OheDialogPanel.java:103)
	at org.openstreetmap.josm.plugins.ohe.OhePlugin$OheMenuAction.actionPerformed(OhePlugin.java:300)
	at java.desktop/javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1967)
	at java.desktop/javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2308)
	at java.desktop/javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:405)
	at java.desktop/javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:262)
	at java.desktop/javax.swing.AbstractButton.doClick(AbstractButton.java:369)
	at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI.doClick(BasicMenuItemUI.java:980)
	at java.desktop/javax.swing.plaf.basic.BasicMenuItemUI$Handler.mouseReleased(BasicMenuItemUI.java:1024)
	at java.desktop/java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:297)
	at java.desktop/java.awt.Component.processMouseEvent(Component.java:6578)
	at java.desktop/javax.swing.JComponent.processMouseEvent(JComponent.java:3343)
	at java.desktop/java.awt.Component.processEvent(Component.java:6343)
	at java.desktop/java.awt.Container.processEvent(Container.java:2259)
	at java.desktop/java.awt.Component.dispatchEventImpl(Component.java:4961)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2317)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4793)
	at java.desktop/java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4904)
	at java.desktop/java.awt.LightweightDispatcher.processMouseEvent(Container.java:4539)
	at java.desktop/java.awt.LightweightDispatcher.dispatchEvent(Container.java:4480)
	at java.desktop/java.awt.Container.dispatchEventImpl(Container.java:2303)
	at java.desktop/java.awt.Window.dispatchEventImpl(Window.java:2758)
	at java.desktop/java.awt.Component.dispatchEvent(Component.java:4793)
	at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:766)
	at java.desktop/java.awt.EventQueue.access$500(EventQueue.java:97)
	at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:717)
	at java.desktop/java.awt.EventQueue$3.run(EventQueue.java:711)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:89)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:99)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:739)
	at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:737)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:89)
	at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:736)
	at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:199)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
	at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
	at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
	at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

2017-11-22 10:46:36.060 WARNING: Disable opening hours editor:: java.lang.Exception: Error in the TimeValue. Cause: org.openstreetmap.josm.plugins.ohe.parser.SyntaxException
}}}

The validator doesn't warn about anything.
For [http://projets.pavie.info/yohours/?oh=Th%2000:00-02:30,18:15-02:30 YoHours] and the [http://openingh.openstreetmap.de/evaluation_tool/?EXP=Th%2000%3A00-02%3A30%2C18%3A15-02%3A30 opening_hours evaluation tool] it seems to be valid too.

JOSM:
{{{
Relative:URL: ^/trunk
Repository:UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
Last:Changed Date: 2017-11-20 01:25:31 +0100 (Mon, 20 Nov 2017)
Revision:13136
Build-Date:2017-11-20 02:32:02
URL:http://josm.openstreetmap.de/svn/trunk

Identification: JOSM/1.5 (13136 en) Linux Debian GNU/Linux testing (buster)
Memory Usage: 999 MB / 7168 MB (382 MB allocated, but free)
Java version: 9.0.1+11-Debian-1, Oracle Corporation, OpenJDK 64-Bit Server VM
Screen: :0.0 1600x900, :0.1 1280x1024
Maximum Screen Size: 1600x1024
Java package: openjdk-9-jre:amd64-9.0.1+11-1
Java ATK Wrapper package: libatk-wrapper-java:all-0.33.3-13
VM arguments: [--add-modules=java.activation,java.se.ee, -Dawt.useSystemAAFontSettings=on]
Program arguments: [--language=en]
Dataset consistency test: No problems found

Plugins:
+ CADTools (1007)
+ Create_grid_of_ways (32699)
+ DxfImport (1012)
+ FastDraw (33731)
+ ImportImagePlugin (33563)
+ OpeningHoursEditor (33185)
+ PicLayer (33822)
+ RoadSigns (33798)
+ SimplifyArea (33004)
+ apache-commons (33668)
+ buildings_tools (33735)
+ conflation (0.5.5)
+ contourmerge (1032)
+ download_along (33710)
+ editgpx (33782)
+ ejml (32680)
+ geojson (73)
+ geotools (33380)
+ importvec (33564)
+ indoorhelper (33632)
+ jts (32699)
+ log4j (32699)
+ measurement (33760)
+ merge-overlap (33848)
+ opendata (33791)
+ pbf (33568)
+ pdfimport (33579)
+ poly (33570)
+ reverter (33572)
+ scripting (30775)
+ tageditor (33806)
+ todo (30303)
+ turnlanes (33294)
+ turnlanes-tagging (254)
+ turnrestrictions (33780)
+ undelete (33835)
+ utilsplugin2 (33742)
}}}"	defect	new	normal		Plugin openinghourseditor				
