pp wrote:

> I think that is probably similar problem to mgd_get_by_name thread.
>
>
> 3 Query       SELECT id FROM snippetdir WHERE (up=0 AND name='name1') AND 
>(snippetdir.sitegroup in (0,1))
>                       3 Query       SELECT id FROM snippet WHERE (up=143 AND 
>name='name2') AND (sitegroup IN (0,1) OR 0<>0)
>                       3 Query       SELECT code,sitegroup FROM snippet WHERE id=613 
>AND (sitegroup in (0, 1) OR 0<>0)
>                       3 Query       SELECT admingroup FROM sitegroup WHERE id=0
>                       3 Query       SELECT person.id,person.password FROM 
>person,member WHERE person.username='name' AND person.sitegroup=0 AND member.uid = 
>person.id AND member.gid=0
>                       3 Query       SELECT 
>id,up,score,name,description,extra,owner,code,creator,Unix_timestamp(created) as 
>created,revisor,Unix_timestamp(revised) as revised,revision,sitegroup,sitegroup FROM 
>topic WHERE id=24 AND (sitegroup in (0, 0) OR 0<>0)


Ah! I think I may have spotted the problem. Try the attached patch. If
this is the problem it is indeed the same problem that Ferenc has.

Emile
Index: midgard.c
===================================================================
RCS file: /usr/local/cvs/midgard/lib/src/midgard.c,v
retrieving revision 1.31
diff -u -r1.31 midgard.c
--- midgard.c   2002/01/25 15:41:34     1.31
+++ midgard.c   2002/03/11 16:04:53
@@ -420,13 +420,13 @@
        /* We temporaly save parser information and host sitegroup */
        parser = mgd->parser;
 
-   if (setuid) mgd->current_user = &mgd->setuid_user;
-
 #if HAVE_MIDGARD_SITEGROUPS
        host_sitegroup = mgd->current_user->sitegroup;
 #endif
        mgd_clear(mgd);
        mgd->parser = parser;
+
+   if (setuid) mgd->current_user = &mgd->setuid_user;
 
        /* anonymous */
        if (!username || !*username) {
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to