diff --git a/lib/modules/Sql.pmod/pgsql.pike b/lib/modules/Sql.pmod/pgsql.pike
index 948a6707f94fe2b83d55ccf2ef19d28d7488e563..bd226400d63f1868275e0e20530c3ade0c14dd53 100644
--- a/lib/modules/Sql.pmod/pgsql.pike
+++ b/lib/modules/Sql.pmod/pgsql.pike
@@ -965,6 +965,8 @@ private void startquery(int forcetext, .pgsql_util.sql_result portal, string q,
     }
     if ((portal._tprepared=tp) && tp.datatypeoid) {
       mixed e = catch(portal->_preparebind(tp.datatypeoid));
+      if (!this)				// Already destructed?
+        throw(e);
       if (e && !portal.delayederror) {
         portal._unnamedstatementkey = 0;	// Release early, release often
         throw(e);