diff options
Diffstat (limited to 'innobase')
-rw-r--r-- | innobase/row/row0ins.c | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/innobase/row/row0ins.c b/innobase/row/row0ins.c index db871a53c42..5e833372299 100644 --- a/innobase/row/row0ins.c +++ b/innobase/row/row0ins.c @@ -591,15 +591,17 @@ row_ins_set_detailed( FILE* tf = os_file_create_tmpfile(); - ut_a(tf); - - ut_print_name(tf, trx, foreign->foreign_table_name); - dict_print_info_on_foreign_key_in_create_format(tf, trx, - foreign, FALSE); + if (tf) { + ut_print_name(tf, trx, foreign->foreign_table_name); + dict_print_info_on_foreign_key_in_create_format(tf, trx, + foreign, FALSE); - trx_set_detailed_error_from_file(trx, tf); + trx_set_detailed_error_from_file(trx, tf); - fclose(tf); + fclose(tf); + } else { + trx_set_detailed_error(trx, "temp file creation failed"); + } } /************************************************************************* |