Ok,

Found the problem.
^^...$$ in the selects.....

Following patch fixes it.

------------------------------------------------------------------------
---------------
diff -ruN dbmail_1_2_2/pgsql/dbpgsql.c dbmail-1.2.2/pgsql/dbpgsql.c
--- dbmail_1_2_2/pgsql/dbpgsql.c        Mon Jan  5 06:48:41 2004
+++ dbmail-1.2.2/pgsql/dbpgsql.c        Tue Jan 27 23:40:38 2004
@@ -2531,10 +2531,10 @@
 
   if (only_subscribed)
     snprintf(query, DEF_QUERYSIZE, "SELECT mailbox_idnr FROM mailboxes
WHERE "
-            "owner_idnr=%llu::bigint AND is_subscribed != 0 AND name ~*
'^%s$'", ownerid, pattern);
+            "owner_idnr=%llu::bigint AND is_subscribed != 0 AND name ~*
'%s'", ownerid, pattern);
   else
     snprintf(query, DEF_QUERYSIZE, "SELECT mailbox_idnr FROM mailboxes
WHERE "
-            "owner_idnr=%llu::bigint AND name ~* '^%s$'", ownerid,
pattern);
+            "owner_idnr=%llu::bigint AND name ~* '%s'", ownerid,
pattern);
 
   if (db_query(query) == -1)
     {
@@ -2784,11 +2784,11 @@
     {
       row = PQgetvalue (res, 0, 0);
       if (row)
-       snprintf(query, DEF_QUERYSIZE, "SELECT mailbox_idnr FROM
mailboxes WHERE name ~* '^%s/%s$'"
+       snprintf(query, DEF_QUERYSIZE, "SELECT mailbox_idnr FROM
mailboxes WHERE name ~* '%s/%s'"
                 " AND owner_idnr = %llu::bigint",
                 row,pgsql_filter,useridnr);
       else
-       snprintf(query, DEF_QUERYSIZE, "SELECT mailbox_idnr FROM
mailboxes WHERE name ~* '^%s$'"
+       snprintf(query, DEF_QUERYSIZE, "SELECT mailbox_idnr FROM
mailboxes WHERE name ~* '%s'"
                 " AND owner_idnr =
%llu::bigint",pgsql_filter,useridnr);
 
     }

Reply via email to