diff --git a/contrib/babelfishpg_tsql/src/pltsql_ruleutils.c b/contrib/babelfishpg_tsql/src/pltsql_ruleutils.c index e7981fa418..bb317cb607 100644 --- a/contrib/babelfishpg_tsql/src/pltsql_ruleutils.c +++ b/contrib/babelfishpg_tsql/src/pltsql_ruleutils.c @@ -398,11 +398,16 @@ PG_FUNCTION_INFO_V1(tsql_get_expr); Datum tsql_get_expr(PG_FUNCTION_ARGS) { - text *expr = PG_GETARG_TEXT_PP(0); - Oid relid = PG_GETARG_OID(1); + text *expr; + Oid relid; int prettyFlags; char *relname; - + + if (PG_ARGISNULL(0) || PG_ARGISNULL(1)) + PG_RETURN_NULL(); + + expr = PG_GETARG_TEXT_PP(0); + relid = PG_GETARG_OID(1); prettyFlags = PRETTYFLAG_INDENT; if (OidIsValid(relid)) diff --git a/test/JDBC/expected/sys-computed_columns-vu-verify.out b/test/JDBC/expected/sys-computed_columns-vu-verify.out index 3c29efad2a..f8c570a1e6 100644 --- a/test/JDBC/expected/sys-computed_columns-vu-verify.out +++ b/test/JDBC/expected/sys-computed_columns-vu-verify.out @@ -56,3 +56,11 @@ text ~~END~~ + +Select sys.tsql_get_expr(null, null) +GO +~~START~~ +text + +~~END~~ + diff --git a/test/JDBC/input/views/sys-computed_columns-vu-verify.sql b/test/JDBC/input/views/sys-computed_columns-vu-verify.sql index 180ab816b5..4a6c5457d0 100644 --- a/test/JDBC/input/views/sys-computed_columns-vu-verify.sql +++ b/test/JDBC/input/views/sys-computed_columns-vu-verify.sql @@ -20,4 +20,7 @@ Select sys.tsql_get_expr('abc',123) GO Select sys.tsql_get_expr('abc',0) +GO + +Select sys.tsql_get_expr(null, null) GO \ No newline at end of file