[#5167] Possible NPE when calling InsertImpl.set(Field, Select) with a null Select

This commit is contained in:
lukaseder 2016-03-29 08:07:35 +02:00
parent 485b6279c0
commit 2b4abee87c
4 changed files with 16 additions and 4 deletions

View File

@ -8327,7 +8327,10 @@ public class DSL {
*/
@Support
public static <T> Field<T> field(Select<? extends Record1<T>> select) {
return select.<T>asField();
if (select == null)
return (Field) NULL();
else
return select.<T>asField();
}
/**

View File

@ -613,7 +613,10 @@ final class InsertImpl<R extends Record, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10
@Override
public final <T> InsertImpl set(Field<T> field, Select<? extends Record1<T>> value) {
return set(field, value.<T>asField());
if (value == null)
return set(field, (T) null);
else
return set(field, value.<T>asField());
}
@Override

View File

@ -941,7 +941,10 @@ implements
@Override
public final <T> MergeImpl set(Field<T> field, Select<? extends Record1<T>> value) {
return set(field, value.<T>asField());
if (value == null)
return set(field, (T) null);
else
return set(field, value.<T>asField());
}
@Override

View File

@ -154,7 +154,10 @@ final class UpdateImpl<R extends Record>
@Override
public final <T> UpdateImpl<R> set(Field<T> field, Select<? extends Record1<T>> value) {
return set(field, value.<T>asField());
if (value == null)
return set(field, (T) null);
else
return set(field, value.<T>asField());
}
@Override