From: danw Date: Tue, 22 Jul 1997 03:20:17 +0000 (+0000) Subject: Bomb out with an error message if something goes wrong. Duh! X-Git-Url: http://andersk.mit.edu/gitweb/moira.git/commitdiff_plain/b4188632e530e005bdbd93a4b05a48b396656181 Bomb out with an error message if something goes wrong. Duh! --- diff --git a/backup/db2bkup.awk b/backup/db2bkup.awk index 6efbd9e5..f435372d 100644 --- a/backup/db2bkup.awk +++ b/backup/db2bkup.awk @@ -11,6 +11,7 @@ BEGIN { print "/* Do not edit */\n"; print "#include "; print "EXEC SQL INCLUDE sqlca;"; + print "EXEC SQL WHENEVER SQLERROR DO dbmserr();"; print "#include \"dump_db.h\""; print "#define dump_bin dump_str\n"; diff --git a/backup/db2rest.awk b/backup/db2rest.awk index 521d417f..a5b73ca1 100644 --- a/backup/db2rest.awk +++ b/backup/db2rest.awk @@ -11,6 +11,7 @@ BEGIN { print "/* Do not edit */\n"; print "#include "; print "EXEC SQL INCLUDE sqlca;"; + print "EXEC SQL WHENEVER SQLERROR DO dbmserr();"; print "void parse_nl(), parse_str(FILE *, char *, int), parse_sep();\n"; print "/* This file automatically generated */" > "rest1.pc"; diff --git a/backup/dumprest.pc b/backup/dumprest.pc index 1de153dd..501b38b8 100644 --- a/backup/dumprest.pc +++ b/backup/dumprest.pc @@ -22,3 +22,16 @@ punt(msg) perror(msg); exit(1); } + +dbmserr(void) +{ + EXEC SQL BEGIN DECLARE SECTION; + char err_msg[256]; + EXEC SQL END DECLARE SECTION; + int bufsize=256, msglength=0; + + sqlglm(err_msg, &bufsize, &msglength); + err_msg[msglength]=0; + fprintf(stderr, "Fatal SQL error:\n%s", err_msg); + exit(1); +}