comparison src/mysql.sml @ 1443:19e8e3d556d6

Fix MySQL time handling
author Adam Chlipala <adam@chlipala.net>
date Sun, 27 Mar 2011 15:06:02 -0400
parents 929981850d9d
children 969b90b1f2f9
comparison
equal deleted inserted replaced
1442:204ca664b5d6 1443:19e8e3d556d6
673 string ";", 673 string ";",
674 newline, 674 newline,
675 newline, 675 newline,
676 string "struct tm t = {mt->second, mt->minute, mt->hour, mt->day, mt->month-1, mt->year - 1900, 0, 0, -1};", 676 string "struct tm t = {mt->second, mt->minute, mt->hour, mt->day, mt->month-1, mt->year - 1900, 0, 0, -1};",
677 newline, 677 newline,
678 string "mktime(&t);", 678 string "uw_Basis_time res = {mktime(&t), 0};",
679 newline,
680 string "res;",
679 newline, 681 newline,
680 string "})"] 682 string "})"]
681 | Channel => box [string "({", 683 | Channel => box [string "({",
682 string "uw_Basis_channel ch = {buffer", 684 string "uw_Basis_channel ch = {buffer",
683 string (Int.toString i), 685 string (Int.toString i),
1080 newline, 1082 newline,
1081 string "struct tm tms;", 1083 string "struct tm tms;",
1082 newline, 1084 newline,
1083 string "if (localtime_r(&arg", 1085 string "if (localtime_r(&arg",
1084 string (Int.toString (i + 1)), 1086 string (Int.toString (i + 1)),
1085 string ", &tms) == NULL) uw_error(ctx, FATAL, \"", 1087 string ".seconds, &tms) == NULL) uw_error(ctx, FATAL, \"",
1086 string (ErrorMsg.spanToString loc), 1088 string (ErrorMsg.spanToString loc),
1087 string ": error converting to MySQL time\");", 1089 string ": error converting to MySQL time\");",
1088 newline, 1090 newline,
1089 oneField "year" "year + 1900", 1091 oneField "year" "year + 1900",
1090 box [string "in_buffer", 1092 box [string "in_buffer",
1364 newline, 1366 newline,
1365 string "struct tm tms;", 1367 string "struct tm tms;",
1366 newline, 1368 newline,
1367 string "if (localtime_r(&arg", 1369 string "if (localtime_r(&arg",
1368 string (Int.toString (i + 1)), 1370 string (Int.toString (i + 1)),
1369 string ", &tms) == NULL) uw_error(ctx, FATAL, \"", 1371 string ".seconds, &tms) == NULL) uw_error(ctx, FATAL, \"",
1370 string (ErrorMsg.spanToString loc), 1372 string (ErrorMsg.spanToString loc),
1371 string ": error converting to MySQL time\");", 1373 string ": error converting to MySQL time\");",
1372 newline, 1374 newline,
1373 oneField "year" "year + 1900", 1375 oneField "year" "year + 1900",
1374 oneField "month" "mon + 1", 1376 oneField "month" "mon + 1",