mirror of
https://github.com/stashapp/stash.git
synced 2025-12-06 08:26:00 +01:00
Only add join args if join was added
This commit is contained in:
parent
8e10798fc4
commit
7d96169796
2 changed files with 21 additions and 13 deletions
|
|
@ -127,9 +127,9 @@ func (j join) toSQL() string {
|
|||
|
||||
type joins []join
|
||||
|
||||
func (j *joins) add(newJoins ...join) {
|
||||
// only add if not already joined
|
||||
for _, newJoin := range newJoins {
|
||||
// addUnique only adds if not already present
|
||||
// returns true if added
|
||||
func (j *joins) addUnique(newJoin join) bool {
|
||||
found := false
|
||||
for _, jj := range *j {
|
||||
if jj.equals(newJoin) {
|
||||
|
|
@ -141,6 +141,13 @@ func (j *joins) add(newJoins ...join) {
|
|||
if !found {
|
||||
*j = append(*j, newJoin)
|
||||
}
|
||||
return !found
|
||||
}
|
||||
|
||||
func (j *joins) add(newJoins ...join) {
|
||||
// only add if not already joined
|
||||
for _, newJoin := range newJoins {
|
||||
j.addUnique(newJoin)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -132,10 +132,11 @@ func (qb *queryBuilder) join(table, as, onClause string) {
|
|||
}
|
||||
|
||||
func (qb *queryBuilder) addJoins(joins ...join) {
|
||||
qb.joins.add(joins...)
|
||||
for _, j := range joins {
|
||||
if qb.joins.addUnique(j) {
|
||||
qb.args = append(qb.args, j.args...)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
func (qb *queryBuilder) addFilter(f *filterBuilder) error {
|
||||
|
|
|
|||
Loading…
Reference in a new issue