--- masquerade.module_1p3	2008-12-30 20:23:16.000000000 -0500
+++ masquerade.module	2008-12-30 20:29:18.000000000 -0500
@@ -51,7 +51,11 @@ function masquerade_init() {
  */
 function masquerade_cron() {
   // see http://drupal.org/node/268487 before modifying this query
-  db_query('DELETE {masquerade} FROM {masquerade} LEFT JOIN {sessions} ON {masquerade}.sid = {sessions}.sid WHERE {sessions}.sid IS NULL');
+  if (in_array($GLOBALS['db_type'], array('mysql', 'mysqli'))) {
+    db_query('DELETE {masquerade} FROM {masquerade} LEFT JOIN {sessions} ON {masquerade}.sid = {sessions}.sid WHERE {sessions}.sid IS NULL');
+  } elseif (in_array($GLOBALS['db_type'], array('pgsql'))) {
+    db_query('DELETE FROM {masquerade} WHERE {masquerade}.sid NOT IN ( SELECT {sessions}.sid FROM {sessions} )');
+  }
 }
 
 /**
