From 7d190d72458b7507d5c4210fac44286ee6d167ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Henrik=20Grubbstr=C3=B6m=20=28Grubba=29?= <grubba@grubba.org> Date: Fri, 20 Jun 1997 14:28:58 +0200 Subject: [PATCH] Now inhibits compiler errors. Rev: lib/modules/Sql.pmod/sql.pike:1.9 --- lib/modules/Sql.pmod/sql.pike | 25 ++++++++++++++++++++----- 1 file changed, 20 insertions(+), 5 deletions(-) diff --git a/lib/modules/Sql.pmod/sql.pike b/lib/modules/Sql.pmod/sql.pike index 0a3c715f31..b69c8950fd 100644 --- a/lib/modules/Sql.pmod/sql.pike +++ b/lib/modules/Sql.pmod/sql.pike @@ -1,5 +1,5 @@ /* - * $Id: sql.pike,v 1.8 1997/06/08 19:51:16 grubba Exp $ + * $Id: sql.pike,v 1.9 1997/06/20 12:28:58 grubba Exp $ * * Implements the generic parts of the SQL-interface * @@ -8,7 +8,7 @@ //. //. File: sql.pike -//. RCSID: $Id: sql.pike,v 1.8 1997/06/08 19:51:16 grubba Exp $ +//. RCSID: $Id: sql.pike,v 1.9 1997/06/20 12:28:58 grubba Exp $ //. Author: Henrik Grubbstr�m (grubba@infovav.se) //. //. Synopsis: Implements the generic parts of the SQL-interface. @@ -69,10 +69,25 @@ void create(void|string|object host, void|string db, array(mixed) err; err = catch { - program p = Sql[program_name]; + program p; +#ifdef PIKE_SQL_DEBUG + err = catch {p = Sql[program_name];}; +#else /* !PIKE_SQL_DEBUG */ + // Ignore compiler errors for the various sql-modules, + // since we might not have some. + // This is NOT a nice way to do it, but... + mixed old_inhib = master()->inhibit_compiler_errors; + master()->inhibit_compiler_errors = lambda(){}; + err = catch {p = Sql[program_name];}; + // Restore compiler errors mode to whatever it was before. + master()->inhibit_compiler_errors = old_inhib; +#endif /* PIKE_SQL_DEBUG */ + if (err) { + throw(err); + } if (p) { - array err2 = catch { + err = catch { if (password && password != "") { master_sql = p(host||"", db||"", user||"", password); } else if (user && user != "") { @@ -87,7 +102,7 @@ void create(void|string|object host, void|string db, return; }; #ifdef PIKE_SQL_DEBUG - if (err2) { + if (err) { Stdio.stderr->write(sprintf("Sql.sql(): Failed to connect using module Sql.%s\n", program_name)); } -- GitLab