From 6bb264338dffdd650ecd75b07a6a7a2440a52c81 Mon Sep 17 00:00:00 2001 From: Jamie Cameron Date: Tue, 29 May 2018 21:21:37 -0700 Subject: [PATCH] Better handle null timestamps https://github.com/webmin/webmin/issues/921#issuecomment-393014169 --- mysql/save_field.cgi | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mysql/save_field.cgi b/mysql/save_field.cgi index 78611e789..5fae7ab64 100755 --- a/mysql/save_field.cgi +++ b/mysql/save_field.cgi @@ -10,7 +10,13 @@ $access{'edonly'} && &error($text{'dbase_ecannot'}); # Build default clause if ($in{'default_def'} == 0) { - $default = "default NULL"; + if ($in{'type'} eq 'timestamp') { + # Default is already null + $default = ""; + } + else { + $default = "default NULL"; + } } elsif ($in{'default_def'} == 2) { $default = "default CURRENT_TIMESTAMP"; @@ -36,7 +42,7 @@ elsif ($in{'new'}) { $in{'size'} = $size = &validate_size(); $sql = sprintf "alter table %s add %s %s%s %s %s %s", "estr($in{'table'}), "estr($in{'field'}), $in{'type'}, - $size, $in{'null'} ? '' : 'not null', + $size, $in{'null'} ? 'null' : 'not null', $default, $in{'ext'}; &execute_sql_logged($in{'db'}, $sql);