Skip to content

Commit ec9a69f

Browse files
committed
Fix null exception in ExpressionVisitorAdapter with simple INTERVAL expression
1 parent 1edc439 commit ec9a69f

File tree

2 files changed

+11
-1
lines changed

2 files changed

+11
-1
lines changed

src/main/java/net/sf/jsqlparser/expression/ExpressionVisitorAdapter.java

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -430,7 +430,10 @@ public <S> T visit(ExtractExpression extractExpression, S context) {
430430

431431
@Override
432432
public <S> T visit(IntervalExpression intervalExpression, S context) {
433-
return intervalExpression.getExpression().accept(this, context);
433+
if (intervalExpression.getExpression() != null) {
434+
intervalExpression.getExpression().accept(this, context);
435+
}
436+
return null;
434437
}
435438

436439
@Override

src/test/java/net/sf/jsqlparser/expression/ExpressionVisitorAdapterTest.java

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -321,4 +321,11 @@ public <S> Void visit(ExcludesExpression expr, S parameters) {
321321
assertInstanceOf(Column.class, exprList.get(0));
322322
assertInstanceOf(ParenthesedExpressionList.class, exprList.get(1));
323323
}
324+
325+
@Test
326+
public void testIntervalWithNoExpression() throws JSQLParserException {
327+
Expression expr = CCJSqlParserUtil.parseExpression("INTERVAL 1 DAY");
328+
ExpressionVisitorAdapter<Void> adapter = new ExpressionVisitorAdapter<>();
329+
expr.accept(adapter, null);
330+
}
324331
}

0 commit comments

Comments
 (0)