diff --git a/jOOQ/src/main/java/org/jooq/impl/FieldProxy.java b/jOOQ/src/main/java/org/jooq/impl/FieldProxy.java index 3bc23ab6fd..195b1c1eef 100644 --- a/jOOQ/src/main/java/org/jooq/impl/FieldProxy.java +++ b/jOOQ/src/main/java/org/jooq/impl/FieldProxy.java @@ -81,9 +81,7 @@ final class FieldProxy extends AbstractField implements TableField newDelegate) { this.delegate = newDelegate; - // [#8278] Prevent StackOverflowErrors when the data type proxy is shared - if (!(newDelegate.getDataType() instanceof DataTypeProxy)) - ((DataTypeProxy) getDataType()).type((AbstractDataType) newDelegate.getDataType()); + ((DataTypeProxy) getDataType()).type((AbstractDataType) newDelegate.getDataType()); } @Override diff --git a/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java b/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java index 41a4087c23..ecf5be7b71 100644 --- a/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java +++ b/jOOQ/src/main/java/org/jooq/impl/ScopeStack.java @@ -118,14 +118,10 @@ final class ScopeStack implements Iterable { } private V move() { - while (it.hasNext()) { - List list = it.next(); - - if (!list.isEmpty()) { - next = list.get(list.size() - 1); + List list; + while (it.hasNext()) + if (!(list = it.next()).isEmpty() && (next = list.get(list.size() - 1)) != null) break; - } - } return next; }