You've already forked pocketbase
mirror of
https://github.com/pocketbase/pocketbase.git
synced 2025-11-24 15:14:30 +02:00
set allowHiddenFields to prevent infinite recursion
This commit is contained in:
@@ -267,16 +267,14 @@ func (r *RecordFieldResolver) registerJoin(tableName string, tableAlias string,
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (r *RecordFieldResolver) updateCollectionJoinWithListRuleSubquery(c *Collection, j *join) {
|
func (r *RecordFieldResolver) updateCollectionJoinWithListRuleSubquery(c *Collection, j *join) {
|
||||||
if c == nil {
|
if c == nil || r.allowHiddenFields {
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
// resolve to empty set for superusers only collections
|
// resolve to empty set for superusers only collections
|
||||||
// (treat all collection fields as "hidden")
|
// (treat all collection fields as "hidden")
|
||||||
if c.ListRule == nil {
|
if c.ListRule == nil {
|
||||||
if !r.allowHiddenFields {
|
j.on = dbx.NewExp("1=2")
|
||||||
j.on = dbx.NewExp("1=2")
|
|
||||||
}
|
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -295,6 +293,7 @@ func (r *RecordFieldResolver) updateCollectionJoinWithListRuleSubquery(c *Collec
|
|||||||
cloneR := *r
|
cloneR := *r
|
||||||
cloneR.joins = []*join{}
|
cloneR.joins = []*join{}
|
||||||
cloneR.baseCollection = c
|
cloneR.baseCollection = c
|
||||||
|
cloneR.allowHiddenFields = true
|
||||||
|
|
||||||
expr, err := search.FilterData(*c.ListRule).BuildExpr(&cloneR)
|
expr, err := search.FilterData(*c.ListRule).BuildExpr(&cloneR)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
|||||||
Reference in New Issue
Block a user